Skip to main content
Glama
strelov1

freehire

by strelov1

freehire MCP сервер

Сервер MCP поверх API вакансий freehire. Он позволяет любому MCP-хосту — Claude Desktop, Claude Code или совместимому агенту — искать, фильтровать и откликаться на IT-вакансии без браузера, аутентифицируясь с помощью персонального API-ключа. Вакансии собираются напрямую с карьерных страниц компаний — более 3,3 млн открытых позиций в 294 тыс. компаний, нормализованных в единую схему и помеченных стеком, уровнем, регионом и форматом работы (актуальные цифры).

Он повторяет freehire CLI: тот же API, те же учетные данные, но в виде MCP-инструментов вместо shell-команд.

Установка

Глобальная установка не требуется — хост запускает его через npx. Добавьте его в конфигурацию MCP вашего хоста (Claude Desktop → Настройки → Разработчик → Изменить конфигурацию или ~/.claude.json для Claude Code):

{
  "mcpServers": {
    "freehire": {
      "command": "npx",
      "args": ["-y", "freehire-mcp"],
      "env": { "FREEHIRE_TOKEN": "fhk_xxxxxxxx" }
    }
  }
}

Создайте ключ fhk_… в веб-приложении (freehire.me → меню аккаунта → API-ключи). Если вы уже используете freehire CLI (freehire auth login), вы можете опустить env — сервер читает тот же ~/.freehire/creds.json.

Related MCP server: job-monitor

Аутентификация

Токен и базовый URL API определяются с приоритетом env → ~/.freehire/creds.json → по умолчанию https://freehire.me:

Что

Источники

Токен

FREEHIRE_TOKEN → файл creds

Базовый URL API

FREEHIRE_API_URL → файл creds → https://freehire.me

Сервер только читает файл учетных данных (он никогда не записывает его — вход в систему остаётся задачей CLI). Если токен не настроен, инструменты возвращают понятную ошибку «не аутентифицирован», а не сервер не запускается.

Инструменты

Инструмент

Назначение

whoami

Аутентифицированный пользователь (проверить ключ).

facets

Словарь фильтров/навыков: актуальные значения каждого фасета с количеством. Вызывайте первым.

search

Поиск вакансий по ключевым словам и фасетам; возвращает вакансии с полным описанием в формате markdown и общее количество совпадений.

market_fit

Оценка списка навыков по актуальному рыночному спросу (покрытие + пробелы).

job

Полное содержимое одной вакансии по slug.

company

Компания и её открытые вакансии по slug.

apply

Отметить вакансию как отклик.

save / unsave

Добавить / удалить закладку.

stage

Установить этап отклика (проверяется сервером).

note

Прикрепить произвольную заметку.

my

Отслеживаемые вакансии вызывающего (все/просмотренные/сохранённые/с откликом) с этапом и заметкой.

cv_tailor

Начать (или возобновить) адаптацию для вакансии; возвращает id CV, который принимают другие инструменты cv_*.

cv_list

Адаптированные CV вызывающего с указанием вакансии, для которой они созданы.

cv_context

Анализ соответствия, к которому должно стремиться адаптированное CV (missing_have vs missing_gap).

cv_get

Полный документ адаптированного CV.

cv_edit

Применить пакет правок по адресам к адаптированному CV атомарно (проверяется сервером; неподтверждённые утверждения отклоняются).

cv_render

Рендеринг адаптированного CV в PDF, возвращается как base64-ресурс application/pdf.

experience_list

Банк опыта кандидата с происхождением каждого достижения. evidence_id для cv_edit берётся отсюда.

experience_add_employment / experience_add_achievement

Записать место работы или одно доказательство.

experience_update_employment / experience_update_achievement

Исправить одно. На уровне полей: что не указано — сохраняется.

experience_remove_employment / experience_remove_achievement

Удалить одно. Без отмены; место должно быть пустым.

submit

Отправить вакансию на модерацию.

my_submissions

Отправки вызывающего со статусом.

jobs_add / jobs_edit

Модератор: создать / редактировать вакансию (403 без роли).

submissions_pending

Модератор: очередь на проверку.

submission_approve / submission_reject

Модератор: принять или отклонить отправку.

Фильтры. search, market_fit и facets используют одни и те же параметры рыночных фильтров: remote, region, country, city, company, category, role, seniority, employment_type, english_level, exclude_skill, salary_min, visa, плюс общая карта facets ({"source": "greenhouse"}) для любого другого фасета из словаря. Узнавайте допустимые значения с помощью инструмента facets — не выдумывайте их. В search skills — это фильтр; в market_fit skills — измеряемый набор.

География расширяется. region, country и city — это одна группа ИЛИ: region: ["eu"] с country: ["IT"] означает «в Европе или в Италии» и возвращает всё, что вернул бы только регион. Чтобы искать в одной стране, передайте country и опустите region. Эти три параметра называют одно понятие — где — поэтому выбор двух мест читается как «либо», что делает region: ["eu"] с country: ["BR"] («Европа или Бразилия») полезным. Нет режима И: _mode=and не применяется к географии.

Неизвестные параметры игнорируются, а не отклоняются. Ключ фильтра, который API не распознаёт, не приводит к ошибке запроса, а расширяет его. Такие ключи возвращаются в списке ignored результата, с did_you_mean, если ошибка была только в грамматическом числе. search сообщает об этом рядом с total; facets и market_fit возвращают один объект, поэтому они оборачивают его как {data, ignored} — и только в этом случае, не меняя форму чистого вызова. Любое число из результата с ignored отвечает на более широкий вопрос, чем заданный — повторите с предложенным именем, прежде чем сообщать о нём.

Описания. search читает агентскую конечную точку API, поэтому каждый результат уже содержит полное описание вакансии в формате markdown — хост может просматривать набор результатов без вызова job для каждого. Описания длинные, поэтому держите limit скромным.

Правило доказательств. Каждое достижение в банке фиксирует, кто его утвердил. cv_import, stated_in_chat и manual означают, что кандидат, и их можно цитировать в CV; agent_inferred означает, что модель прочитала его в запись, и цитировать нельзя. cv_edit отклоняет любое утверждение о кандидате без evidence_id, указывающего на цитируемое, поэтому experience_list — это инструмент, который делает cv_edit вообще пригодным к использованию.

Исправление достижения не меняет эту метку: agent_inferred остаётся нецитируемым, как бы его ни переформулировали. Единственный способ сделать его цитируемым — спросить кандидата, а затем записать то, что он говорит, с помощью experience_add_achievement.

Удаление окончательно — в банке нет отмены. Место должно быть очищено, прежде чем его можно удалить, потому что удаление места удалит все достижения под ним. Объединение двух достижений в одно с сохранением чисел из обоих — на сайте.

Каждый инструмент возвращает необработанные data API в виде JSON-текста; ошибка API становится результатом isError с HTTP-статусом (401 добавляет подсказку об аутентификации).

Разработка

npm install
npm test        # vitest: config, client (mock server), facets, tool dispatch
npm run build   # tsc → dist/

Лицензия

MIT — см. LICENSE. Бэкенд и CLI freehire также под MIT.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    A
    maintenance
    MCP server for job search and application tracking, enabling AI agents to search jobs, get details, manage applications, and find contacts across 128K+ jobs and 1,900+ companies.
    1,296
    2
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    Searches LinkedIn, Indeed, USAJobs, and Google Jobs from the command line, deduplicates across sources, and optionally finds hiring manager emails; also runs as an MCP server for AI agents.
    MIT
  • F
    license
    -
    quality
    B
    maintenance
    Enables job search on LinkedIn through MCP tools, including keyword and location search, filtering by remote, easy apply, experience level, job type, and date, and retrieving job details.
  • A
    license
    -
    quality
    C
    maintenance
    Enables to interact with job application workflows through MCP, allowing users to find jobs, generate non-trivial applications with proof-maps, and build offline dashboards, all without auto-submitting.
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Search live startup jobs from Claude, Cursor, or ChatGPT via MCP. Free, no account needed.

  • GetJobzi MCP server for job search, application tracking, and career forecasting.

  • RemoteOK MCP — remote-work job board (tech-heavy), keyless.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/strelov1/freehire-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server