{
  "markdown": "# hh-mcp-ru\n\n<!-- mcp-name: io.github.ilyautov/hh-mcp-ru -->\n\nAPI hh.ru для ИИ-ассистентов: вакансии, отклики и приглашения, резюме, справочники, статистика зарплат. Каталог из официальной спеки, у каждого метода класс доступа.\n\n[![PyPI](https://img.shields.io/pypi/v/hh-mcp-ru?label=pypi&color=B5491F)](https://pypi.org/project/hh-mcp-ru/)\n[![CI](https://github.com/ilyautov/hh-mcp-ru/actions/workflows/ci.yml/badge.svg)](https://github.com/ilyautov/hh-mcp-ru/actions/workflows/ci.yml)\n[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n[![Методов](https://img.shields.io/badge/%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%B0-133-2D7D4F)](#карта-методов)\n[![Сайт](https://img.shields.io/badge/%D1%81%D0%B0%D0%B9%D1%82-business--mcp--ru-9A3E1A)](https://business-mcp-ru.aifrontier.tech/hh-api.html)\n[![Звёзды](https://img.shields.io/github/stars/ilyautov/hh-mcp-ru?style=flat&label=%D0%B7%D0%B2%D1%91%D0%B7%D0%B4%D1%8B&color=B5491F&logo=github&logoColor=white)](https://github.com/ilyautov/hh-mcp-ru/stargazers)\n\n[![Install in VS Code](https://img.shields.io/badge/VS_Code-%D0%BF%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%B8%D1%82%D1%8C-0098FF?logo=visualstudiocode&logoColor=white)](https://vscode.dev/redirect/mcp/install?name=hh&config=%7B%22command%22%3A%20%22uvx%22%2C%20%22args%22%3A%20%5B%22hh-mcp-ru%22%5D%2C%20%22env%22%3A%20%7B%22HH_TOKEN%22%3A%20%22%24%7Binput%3Ahh_token%7D%22%2C%20%22HH_APP_NAME%22%3A%20%22%24%7Binput%3Ahh_app_name%7D%22%7D%7D&inputs=%5B%7B%22id%22%3A%20%22hh_token%22%2C%20%22type%22%3A%20%22promptString%22%2C%20%22description%22%3A%20%22%D0%A2%D0%BE%D0%BA%D0%B5%D0%BD%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F%20hh.ru%20%28dev.hh.ru%20%E2%86%92%20%D0%9C%D0%BE%D0%B8%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F%29.%22%2C%20%22password%22%3A%20true%7D%2C%20%7B%22id%22%3A%20%22hh_app_name%22%2C%20%22type%22%3A%20%22promptString%22%2C%20%22description%22%3A%20%22%D0%98%D0%BC%D1%8F%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F%20%D0%B8%20%D0%BA%D0%BE%D0%BD%D1%82%D0%B0%D0%BA%D1%82%D0%BD%D1%8B%D0%B9%20email%20%D0%B4%D0%BB%D1%8F%20%D0%B7%D0%B0%D0%B3%D0%BE%D0%BB%D0%BE%D0%B2%D0%BA%D0%B0%20HH-User-Agent%3A%20%D0%B1%D0%B5%D0%B7%20%D0%BD%D0%B5%D0%B3%D0%BE%20hh%20%D0%BE%D1%82%D0%BA%D0%BB%D0%BE%D0%BD%D1%8F%D0%B5%D1%82%20%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81%D1%8B.%22%7D%5D)\n[![Install in Cursor](https://img.shields.io/badge/Cursor-%D0%BF%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%B8%D1%82%D1%8C-000000?logo=cursor&logoColor=white)](https://cursor.com/en/install-mcp?name=hh&config=eyJjb21tYW5kIjogInV2eCIsICJhcmdzIjogWyJoaC1tY3AtcnUiXSwgImVudiI6IHsiSEhfVE9LRU4iOiAiIiwgIkhIX0FQUF9OQU1FIjogIiJ9fQ==)\n\n<p align=\"center\">\n  <a href=\"https://business-mcp-ru.aifrontier.tech/\">\n    <img src=\"assets/social-preview.png\" alt=\"hh-mcp-ru: API hh.ru в ИИ-ассистенте. 133 метода, поиск метода словами, гейт безопасности перед записью\" width=\"760\">\n  </a>\n</p>\n\nКаталог собран из первоисточника (официальная спека `api.hh.ru/openapi/specification/public`) и лежит в репозитории как\n`hh_mcp/endpoints.yaml`: **133 метода**, из них 92 на чтение,\n32 на запись и 9 необратимых. Сервер исполняет ровно этот файл,\nпоэтому таблица ниже не может разойтись с кодом.\n\n## Установка\n\n```bash\nuvx hh-mcp-ru\n```\n\nClaude Desktop, `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"hh-mcp\": {\n      \"command\": \"uvx\",\n      \"args\": [\"hh-mcp-ru\"],\n      \"env\": { \"HH_TOKEN\": \"...\", \"HH_APP_NAME\": \"...\" }\n    }\n  }\n}\n```\n\n## Ключи\n\ndev.hh.ru → Мои приложения → создать приложение → access token. `HH_APP_NAME` заполняется обязательно: hh отклоняет запросы без внятного User-Agent, и это первая причина непонятных ошибок 400.\n\n| переменная | секрет | что это |\n|---|---|---|\n| `HH_TOKEN` | да | Токен приложения hh.ru (dev.hh.ru → Мои приложения). |\n| `HH_APP_NAME` | нет | Имя приложения и контактный email для заголовка HH-User-Agent: без него hh отклоняет запросы. |\n\nКлючи можно не держать в окружении: сервер умеет кабинеты и кладёт их в\n`~/.ru-mcp/cabinets.json` с правами 600, вне репозитория.\n\n## Карта методов\n\n| раздел | методов | чтение | запись | необратимое |\n|---|---|---|---|---|\n| Работодатель и менеджеры | 30 | 23 | 5 | 2 |\n| Вакансии | 21 | 12 | 7 | 2 |\n| Общие справочники | 14 | 6 | 7 | 1 |\n| Подсказки | 11 | 11 | 0 | 0 |\n| Отклики и приглашения | 10 | 5 | 5 | 0 |\n| Сохранённые поиски | 6 | 2 | 3 | 1 |\n| Статистика зарплат | 5 | 5 | 0 | 0 |\n| Вебхуки | 4 | 1 | 2 | 1 |\n| Комментарии к соискателю | 4 | 1 | 2 | 1 |\n| Резюме | 3 | 3 | 0 | 0 |\n| Звонки | 3 | 3 | 0 | 0 |\n| Регионы | 3 | 3 | 0 | 0 |\n| Токены | 2 | 0 | 1 | 1 |\n| Учебные заведения | 2 | 2 | 0 | 0 |\n| Локали | 2 | 2 | 0 | 0 |\n| Метро | 2 | 2 | 0 | 0 |\n| Текущий пользователь | 1 | 1 | 0 | 0 |\n| Аккаунты менеджеров | 1 | 1 | 0 | 0 |\n| Отрасли | 1 | 1 | 0 | 0 |\n| Словари | 1 | 1 | 0 | 0 |\n| Профессиональные роли | 1 | 1 | 0 | 0 |\n| Языки | 1 | 1 | 0 | 0 |\n| Навыки | 1 | 1 | 0 | 0 |\n| Clickme | 1 | 1 | 0 | 0 |\n| Районы | 1 | 1 | 0 | 0 |\n| Шаблоны сообщений | 1 | 1 | 0 | 0 |\n| Условия публикации вакансий | 1 | 1 | 0 | 0 |\n| **всего** | **133** | **92** | **32** | **9** |\n\n## Как это выглядит в чате\n\nВы: поиск вакансий\n\n```\nhh_search_methods(\"поиск вакансий\")\n  hh_get_vacancies                     GET  /vacancies                                 чтение\n  hh_get_vacancies_related_to_vacancy  GET  /vacancies/{vacancy_id}/related_vacancies  чтение\n  hh_get_vacancies_similar_to_vacancy  GET  /vacancies/{vacancy_id}/similar_vacancies  чтение\n\nhh_describe_method(\"hh_get_vacancies\")\n  Поиск по вакансиям\n  GET api.hh.ru/vacancies\n  параметры: page, per_page, text, search_field, experience, employment, schedule, area и ещё 36\n  класс доступа: чтение\n\nhh_call_method(\"hh_get_vacancies\", {\"page\": \"...\", \"per_page\": \"...\"})\n```\n\nТри инструмента вместо 133 функций: агент ищет метод словами,\nчитает его карточку и вызывает. Запись и необратимое спрашивают подтверждение.\n\nЧто обычно просят:\n\n- Выгрузить свои вакансии и отклики за период и свести в таблицу.\n- Посмотреть статистику зарплат по роли перед публикацией вакансии.\n- Найти вакансии конкурентов по региону и профессиональной роли.\n- Ответить кандидатам шаблоном, показав список человеку до отправки.\n\n## Безопасность\n\nСервер работает на машине пользователя, ключи наружу не уходят. У методов три\nкласса доступа: чтение идёт сразу, запись и необратимые действия требуют\nподтверждения. Заголовок авторизации не покидает домены сервиса даже при вызове\nпроизвольного пути.\n\n## Проверить установку\n\n```bash\nuvx hh-mcp-ru doctor\n```\n\nПечатает, сколько методов загрузилось, найдены ли ключи и откуда. Секреты не\nпоказывает. С `--live` делает один дешёвый реальный вызов на чтение.\n\n## Родня\n\nЯдро вынесено в [schema-mcp-core](https://github.com/ilyautov/schema-mcp-core).\nСоседние серверы: [vk-mcp-ru](https://github.com/ilyautov/vk-mcp-ru), [diadoc-mcp-ru](https://github.com/ilyautov/diadoc-mcp-ru), [sbis-mcp-ru](https://github.com/ilyautov/sbis-mcp-ru), [chestny-znak-mcp-ru](https://github.com/ilyautov/chestny-znak-mcp-ru).\nМаркетплейсы живут отдельно: [marketplaces-mcp-ru](https://github.com/ilyautov/marketplaces-mcp-ru).\n\nMIT. Автор [Илья Утов](https://github.com/ilyautov).\n\nВсе проекты одним списком, разобранные по назначению:\n[ilyautov.github.io](https://ilyautov.github.io/).\n",
  "bytes": 7298,
  "sha": "864b5216667dbf1960ba493dbcc549d0f678963029ec78bd44809a637983ff57",
  "repo_slug": "ilyautov/hh-mcp-ru",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_ilyautov_hh_mcp_ru_53ed6be3/readme"
}