Skip to main content
Glama
Servation

job-search-mcp

by Servation

job-search-mcp

Персональный ассистент по поиску работы для Claude Desktop. Вы просите Claude найти вакансии — он ищет по настоящим доскам вакансий, оценивает каждую от 0 до 100 по тому, насколько она вам подходит, и показывает их на ранжированной доске, которой можно управлять в один клик. Всё работает локально — никаких API-ключей и аккаунтов не требуется.

Это MCP-приложение: небольшой сервер, с которым общается Claude Desktop, плюс встроенная доска, отображающаяся прямо в чате.

Область применения: он заточен под инженерные вакансии в сфере ПО в США (встроенные источники и фильтры по ролям ориентированы на американских tech-работодателей). В других областях или регионах результаты будут скудными.

Где работает: создан и протестирован для Claude Desktop. Он также должен работать в других MCP-клиентах, которые одновременно запускают локальный (stdio) сервер и отображают UI MCP-приложений, например VS Code (Copilot), Cursor или Goose (не тестировалось). Клиенты только с удалённым доступом (ChatGPT, Claude в вебе/на мобильных) не могут запустить локальный сервер, поэтому работать не будут.

Ранжированная доска вакансий в Claude Desktop — каждая вакансия оценена от 0 до 100, с кнопками Applied/Skip


Что он делает

  • Ищет по настоящим доскам вакансий — LinkedIn плюс 8 источников вакансий/ATS (Greenhouse, Lever, Ashby, Workday, SmartRecruiters, Hacker News, RemoteOK, Remotive), используя ваши целевые роли и местоположение.

  • Оценивает каждую вакансию под вас — Claude читает полное описание и ставит оценку соответствия от 0 до 100 с пояснением в одну строку, учитывая ваши навыки, годы опыта, соответствие уровню и роль.

  • Позволяет быстро разбирать вакансии — Apply / Skip на каждой карточке или массово («отклонить всё ниже 60»).

  • Запоминает — ведёт постоянно пополняемый шорт-лист, трекер того, куда вы откликнулись, и не покажет одну и ту же вакансию дважды (в течение 6 месяцев).


Related MCP server: Jobless MCP

Установка

1. Добавьте его в Claude Desktop. Откройте файл конфигурации:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Добавьте это в раздел "mcpServers"npx сам загрузит опубликованный пакет, клонирование и сборка не нужны:

{
  "mcpServers": {
    "job-search": {
      "command": "npx",
      "args": ["-y", "@servation/job-search-mcp"]
    }
  }
}

2. Полностью закройте и снова откройте Claude Desktop (в Windows выходите через системный трей — закрытия окна недостаточно). На этом всё.

npm install
npm run build

Затем укажите в конфигурации на dist/main.js из этой папки:

{
  "mcpServers": {
    "job-search": {
      "command": "node",
      "args": ["D:\\job-search-mcp\\dist\\main.js"]
    }
  }
}

Как использовать

Просто поговорите с Claude. Например:

  • «Сохрани мой профиль» — сначала вставьте своё резюме; Claude извлекает ваши навыки, роли, стаж и местоположение, чтобы поиск и оценка были подстроены под вас.

  • «Найди вакансии бэкенд-инженера в Калифорнии, senior-уровень, опубликованные на этой неделе».

  • «Найди вакансии с малым числом откликов» — добавляет фильтр LinkedIn по малому числу откликов.

  • «Отклони всё, что ниже 60».

  • «Покажи, куда я откликнулся».

  • «Пересчитай оценки на доске».

Типичный первый запуск: сохраните профиль → «найти вакансии» → Claude оценивает их и показывает ранжированную доску → вы жмёте Apply/Skip.


Доска

Доска — это постоянно пополняемый шорт-лист. Вакансия остаётся на ней, пока вы не нажмёте Apply (она переходит в ваш трекер) или Skip (скрывается навсегда). Новые поиски автоматически пропускают вакансии, которые уже есть на доске, в трекере, отклонены или показывались за последние 6 месяцев, — так что вы никогда не увидите одно и то же объявление дважды подряд.

Нажмите Applied или Skip на карточке или попросите Claude сделать это. Если вы обработали вакансию в виджете, это сохранится.


Инструменты (для справки)

Вы редко вызываете их по имени — Claude сам выбирает нужный — но вот что под капотом:

Инструмент

Что делает

find_jobs

Ищет на досках вакансии по вашим целевым ролям/местоположению (с опциональными фильтрами: уровень, тип, свежесть, удалённая работа, зарплата, число откликов, источник).

evaluate_jobs

Claude оценивает найденные вакансии по соответствию от 0 до 100 (запускается автоматически после поиска).

show_board

Показывает ранжированную доску (или ваш трекер saved).

set_status

Apply / Skip / сохранить отдельную вакансию (это также кнопки на карточках).

bulk_status

Массово обрабатывает сразу много вакансий по оценке или источнику, например отклонить всё ниже 60.

whats_promising

Выводит текущую доску в виде текста (все оценённые вакансии + всё, что ещё не оценено).

review_saved

Ваш трекер — вакансии, которые вы сохранили или куда откликнулись.

rescore_board

Пересчитывает оценки всех вакансий на доске с нуля.

clear_jobs

Наводит порядок: очищает неоценённые остатки или всю доску (не затрагивает откликнувшиеся/отклонённые).

save_profile

Сохраняет профиль из вашего резюме (используется для поиска и оценки).


Где хранятся ваши данные

Один JSON-файл на вашей машине — никакого облака, ничего никуда не отправляется, кроме досок вакансий, по которым вы ищете:

  • При установке: ~/.job-search-mcp/jobs.json

  • При запуске из исходников: ./data/jobs.json

  • Можно переопределить с помощью переменной окружения JOB_SEARCH_MCP_DATA.


Опционально: режим LinkedIn Premium

По умолчанию LinkedIn использует свои публичные гостевые эндпоинты: не нужен вход и нет риска для аккаунта, и вы всё равно получаете полные описания вакансий. Учтите, что автоматический доступ по-прежнему выполняется с вашего IP и противоречит Пользовательскому соглашению LinkedIn даже в гостевом режиме, поэтому используйте его на своё усмотрение. Если вы хотите получать более полные/Premium данные, можете использовать аккаунт, в который вы вошли, добавив блок env в конфигурацию сервера:

"job-search": {
  "command": "npx",
  "args": ["-y", "@servation/job-search-mcp"],
  "env": {
    "LINKEDIN_LI_AT": "<your li_at cookie>",
    "LINKEDIN_JSESSIONID": "ajax:1234567890123456789"
  }
}

Возьмите оба файла cookie из вкладки linkedin.com, где вы выполнили вход: DevTools → Application → Cookies.

⚠️ Внимание: это нарушает Условия использования LinkedIn и может привести к пометке или ограничению вашего аккаунта. Кроме того, срок действия файлов cookie истекает примерно раз в месяц, а внутренние эндпоинты LinkedIn меняются без предупреждения. Если что-то не сработает, автоматически выполняется откат к гостевому режиму. Не добавляйте блок env, чтобы оставаться в полной безопасности (только гостевой режим).


Как работает оценка

Оценку напрямую выполняет Claude (хост-модель): он читает каждое описание и оценивает соответствие — оценки получаются хорошо откалиброванными. Детерминированная формула (computeMatchScore в scoring.ts) оставлена как запасной вариант для тех, кто запускает более слабую локальную модель, которая склонна завышать оценки всему; по умолчанию она не активна.

Разработка

npm run typecheck    # type-check UI + server + harness
npm run build        # build the UI bundle (vite single-file) + compile the server (tsc)
npm run serve:stdio  # run the server from source (tsx) for local testing
npm run harness      # work on the review UI without Claude Desktop (see harness/)
npm run canary       # check every job source is still returning postings

Сервер работает только через stdio (main.tsserver.ts); UI — это React-приложение, собранное в один встроенный HTML-файл (src/mcp-app.tsxdist/mcp-app.html), который сервер отдаёт как ресурс ui://.

Для работы над UI используйте harness/. Это локальная замена Claude Desktop, которая рендерит виджет поверх синтетического хранилища вакансий и реального моста ui/*. Если открыть dist/mcp-app.html во вкладке браузера, вы увидите только «Connecting…», а всё, что скорее всего может сломаться (открытие ссылок, темизация, обновление после монтирования), управляется хостом, поэтому такие проблемы проявляются только при наличии хоста на другом конце.

Если источник вакансий перестал отвечать, npm run canary подскажет, какой именно. Слаги компаний часто протухают, поэтому исправление обычно нужно вносить в удалённый реестр слагов, который updateCompanyDirectoriesFromRegistry() перечитывает в рантайме, а не в новый релиз.

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
    Not graded
    quality
    A
    maintenance
    Enables job search and scraping across multiple job boards (LinkedIn, Indeed, Glassdoor, etc.) with advanced filtering, directly from Claude Desktop or other MCP clients.
    5
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Personalized job search inside Claude. Get ranked job matches based on your actual skills, not keywords.
    2
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Transforms Claude into an AI job-hunting assistant that searches remote job boards, scores roles against your CV, generates tailored cover letters, and logs everything to a Notion tracker.
    11
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables searching and evaluating job postings from LinkedIn and freehire.me directly through Claude Desktop. Provides tools to search jobs, fetch full posting details, and assess candidate fit using eligibility scans and a scoring rubric.
    MIT

View all related MCP servers

Related MCP Connectors

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/Servation/job-search-mcp'

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