Endpoints: 28,729MCP servers: 18,414Payout addresses: 2,071Paid calls: 1,568Letters: 14Defects: 1,338counted 1 min ago
teppi

Server definition

Hash
sha256:7647984d21d495f94ebdc5aaf2cb06f7bc820bf9b2c3fa215bc3d08d08705269
What it is
What a remote MCP server returned when asked what it offers: 13 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Точечный вопрос про опыт кандидата: «работал ли с X?», «что делал в Y?». Сервер отдаёт релевантные данные — вывод формирует ассистент. / Ask a specific question about the candidate's background.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "question": { "description": "Вопрос рекрутёра, до 1000 символов", "type": "string" } }, "required": [ "question" ], "type": "object" }, "name": "ask_about_experience", "outputSchema": null }, { "description": "Тестовое задание кандидату. action=send — отправить (нужны title, body, recruiterContact; кандидат загрузит решение файлом); action=status — статус и ссылка на скачивание решения (нужен assessmentId). / Send a take-home assessment or check its status and download link.", "inputSchema": { "properties": { "action": { "description": "Действие: send | status", "type": "string" }, "assessmentId": { "default": null, "description": "assessmentId из ответа send (status)", "type": [ "integer", "null" ] }, "body": { "default": null, "description": "Текст задания, до 5000 символов (send)", "type": [ "string", "null" ] }, "candidate": { "default": null, "description": "Slug кандидата. В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "deadlineIso": { "default": null, "description": "Опц. дедлайн в ISO-8601 UTC (send)", "type": [ "string", "null" ] }, "recruiterContact": { "default": null, "description": "Контакт рекрутёра для вопросов (send)", "type": [ "string", "null" ] }, "title": { "default": null, "description": "Короткое название задания, до 200 символов (send)", "type": [ "string", "null" ] } }, "required": [ "action" ], "type": "object" }, "name": "assessment", "outputSchema": null }, { "description": "На каких условиях кандидат готов выйти: зарплатные ожидания (base, бонус, equity, deal-breakers), срок выхода, формат работы, гео/таймзона, виза, релокация. lang: ru (по умолчанию) или en. / Candidate's terms: compensation expectations, notice period, work format, location, visa.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата. В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "lang": { "default": null, "description": "Язык: ru или en", "type": [ "string", "null" ] } }, "type": "object" }, "name": "get_conditions", "outputSchema": null }, { "description": "Прямые контакты кандидата (телефон, email, мессенджеры). Выдаются после того, как вы представились через recruiter_context. / Direct contacts; introduce yourself via recruiter_context first.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] } }, "type": "object" }, "name": "get_contacts", "outputSchema": null }, { "description": "Ответы кандидата на типовые вопросы рекрутёров — проверьте здесь, прежде чем писать ему. / Candidate's answers to common recruiter questions.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "lang": { "default": null, "description": "Язык: ru или en", "type": [ "string", "null" ] } }, "type": "object" }, "name": "get_faq", "outputSchema": null }, { "description": "Визитка кандидата: имя, город, краткое описание + ссылки (GitHub, LinkedIn, сайт, образцы работ). Начните знакомство отсюда. lang: ru (по умолчанию) или en. / Candidate overview: name, city, summary, GitHub/LinkedIn/website links.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата. В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "lang": { "default": null, "description": "Язык: ru или en", "type": [ "string", "null" ] } }, "type": "object" }, "name": "get_profile", "outputSchema": null }, { "description": "Рекомендации о кандидате от бывших коллег и руководителей (с их согласия) — trust-сигнал перед офером. / References from former colleagues and managers.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] } }, "type": "object" }, "name": "get_references", "outputSchema": null }, { "description": "Полное резюме кандидата: опыт по местам работы, достижения, навыки. Начните отсюда, если нужна полная картина. / Full resume: work history, achievements, skills.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "resumeId": { "default": null, "description": "ID резюме (из list_resumes). Если не указано — возвращается primary резюме кандидата.", "type": [ "integer", "null" ] } }, "type": "object" }, "name": "get_resume", "outputSchema": null }, { "description": "Назначить кандидату интервью и управлять им. action=propose — предложить слоты (нужны companyName, proposedSlots ISO-8601 UTC, channel, interviewType, recruiterContact); action=reschedule — заменить слоты (нужны conversationId, proposedSlots); action=cancel — отозвать приглашение (нужен conversationId). / Propose, reschedule or cancel an interview with the candidate.", "inputSchema": { "properties": { "action": { "description": "Действие: propose | reschedule | cancel", "type": "string" }, "candidate": { "default": null, "description": "Slug кандидата. В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "channel": { "default": null, "description": "Канал связи: Zoom, Google Meet, Phone, ... (propose)", "type": [ "string", "null" ] }, "companyName": { "default": null, "description": "Название компании (propose)", "type": [ "string", "null" ] }, "conversationId": { "default": null, "description": "conversationId треда интервью из message_candidate (reschedule/cancel)", "type": [ "integer", "null" ] }, "durationMinutes": { "default": null, "description": "Длительность в минутах (propose/reschedule, опц.)", "type": [ "integer", "null" ] }, "interviewType": { "default": null, "description": "Тип интервью: intro, technical, cultural, final (propose)", "type": [ "string", "null" ] }, "notes": { "default": null, "description": "Заметки: что обсуждаем, кто на звонке (propose, опц.)", "type": [ "string", "null" ] }, "proposedSlots": { "default": null, "description": "1-5 слотов в ISO-8601 UTC, напр. ['2026-07-17T15:00:00Z'] (propose/reschedule)", "items": { "type": [ "string", "null" ] }, "type": [ "array", "null" ] }, "reason": { "default": null, "description": "Причина отмены (cancel, опц.)", "type": [ "string", "null" ] }, "recruiterContact": { "default": null, "description": "Контакт рекрутёра для подтверждения (propose)", "type": [ "string", "null" ] } }, "required": [ "action" ], "type": "object" }, "name": "manage_interview", "outputSchema": null }, { "description": "Вставьте текст описания вакансии — получите структурированную оценку соответствия: совпавшие навыки, сеньорность, условия выхода. / Paste a job description to evaluate candidate fit.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "lang": { "default": null, "description": "Язык публичных секций: ru (по умолчанию) или en", "type": [ "string", "null" ] }, "vacancyText": { "description": "Текст описания вакансии, до 5000 символов", "type": "string" } }, "required": [ "vacancyText" ], "type": "object" }, "name": "match_vacancy", "outputSchema": null }, { "description": "Переписка с кандидатом. Без параметров text/conversationId — список тредов; с conversationId — история треда; с text — отправить сообщение (кандидат отвечает в мессенджере). / Messaging: list threads, read a thread, or send a message.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "conversationId": { "default": null, "description": "Id существующего треда, чтобы дописать в него или прочитать историю", "type": [ "integer", "null" ] }, "recruiterContact": { "default": null, "description": "Контакт рекрутёра для ответа (обязателен при открытии нового треда)", "type": [ "string", "null" ] }, "subject": { "default": null, "description": "Тема треда (обязательно при открытии нового треда), до 200 символов", "type": [ "string", "null" ] }, "text": { "default": null, "description": "Текст сообщения, до 3000 символов. Не указан — режим чтения (треды/история)", "type": [ "string", "null" ] } }, "type": "object" }, "name": "message_candidate", "outputSchema": null }, { "description": "Представьтесь: компания, имя, роль. Кандидат увидит, кто им интересуется, а вам откроются контакты (get_contacts). Укажите email, под которым вошли. / Introduce yourself to unlock contacts.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "company": { "default": null, "description": "Компания", "type": [ "string", "null" ] }, "email": { "description": "Email рекрутёра (ключ лида)", "type": "string" }, "name": { "default": null, "description": "Имя рекрутёра", "type": [ "string", "null" ] }, "notes": { "default": null, "description": "Заметки: что ищете, контекст", "type": [ "string", "null" ] }, "role": { "default": null, "description": "Роль/должность", "type": [ "string", "null" ] } }, "required": [ "email" ], "type": "object" }, "name": "recruiter_context", "outputSchema": null }, { "description": "Отправить кандидату вакансию — первый шаг, если он вам подходит. В личном режиме кандидат один: параметр candidate указывать НЕ нужно. recruiterContact тоже можно не указывать — подставится ваш email из авторизации. Кандидат получит уведомление и сможет ответить. / Send a vacancy; candidate and recruiterContact are optional here.", "inputSchema": { "properties": { "candidate": { "default": null, "description": "Slug кандидата (из search_candidates). В личном режиме не обязательно: отправьте null или не передавайте параметр.", "type": [ "string", "null" ] }, "company": { "description": "Название компании (для инлайн-отправки; при vacancyId игнорируется)", "type": "string" }, "recruiterContact": { "default": null, "description": "Контакт рекрутёра для ответа. Можно не указывать — возьмётся ваш email из авторизации.", "type": [ "string", "null" ] }, "resumeId": { "default": null, "description": "ID резюме кандидата (из list_resumes). Если не указано — используется primary резюме.", "type": [ "integer", "null" ] }, "vacancyId": { "default": null, "description": "id сохранённой вакансии (из list_vacancies). Указан — берётся она + HR-профиль, инлайн-текст игнорируется", "type": [ "integer", "null" ] }, "vacancyText": { "description": "Описание вакансии до 3000 символов (для инлайн; при vacancyId игнорируется)", "type": "string" } }, "required": [ "company", "vacancyText" ], "type": "object" }, "name": "send_vacancy", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:7647984d21d495f94ebdc5aaf2cb06f7bc820bf9b2c3fa215bc3d08d08705269 | sha256sum