gmen1057/headhunter-mcp-server
If you are the rightful owner of headhunter-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
HeadHunter MCP Server integrates the HeadHunter API with Claude Code and other MCP clients, facilitating job search and application management through AI-powered tools.
HeadHunter MCP Server
English
MCP (Model Context Protocol) server for integrating HeadHunter API with Claude Code and other MCP clients.
HeadHunter (hh.ru) is the largest job search platform in Russia and CIS countries. This MCP server provides seamless integration with HeadHunter API, enabling AI assistants to search vacancies, manage resumes, and apply to jobs on your behalf.
Features
- π Advanced Vacancy Search - Filter by location, salary, experience, employment type
- π Resume Management - View and manage your HeadHunter resumes
- βοΈ Job Applications - Apply to vacancies with custom cover letters
- π’ Company Information - Get detailed employer data
- π Application Tracking - Monitor your job application history
- π€ AI-Powered Agent - Automated vacancy hunter with intelligent matching
- π OAuth 2.0 - Secure authorization with HeadHunter
Available Tools (10)
- hh_search_vacancies - Search for job vacancies
- hh_get_vacancy - Get detailed vacancy information
- hh_get_employer - Get company/employer details
- hh_get_similar - Find similar vacancies
- hh_get_areas - Get list of regions/cities
- hh_get_dictionaries - Get reference data (experience, employment types, etc.)
- hh_get_resumes - Get your resumes list
- hh_get_resume - Get detailed resume information
- hh_apply_to_vacancy - Apply to a vacancy (requires OAuth)
- hh_get_negotiations - Get application history (requires OAuth)
Quick Start
1. Installation
git clone https://github.com/yourusername/headhunter-mcp-server.git
cd headhunter-mcp-server
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
2. Get HeadHunter API Credentials
- Register your application at https://dev.hh.ru/admin
- Get Client ID, Client Secret, and App Token
- Copy
.env.example
to.env
and fill in your credentials
cp .env.example .env
# Edit .env with your credentials
3. Configure Claude Code
Add to your ~/.claude.json
:
{
"mcpServers": {
"headhunter": {
"type": "stdio",
"command": "/path/to/venv/bin/python",
"args": ["/path/to/headhunter-mcp-server/server.py"],
"env": {
"HH_CLIENT_ID": "your_client_id",
"HH_CLIENT_SECRET": "your_client_secret",
"HH_APP_TOKEN": "your_app_token",
"HH_REDIRECT_URI": "https://your-domain.com/oauth/callback"
}
}
}
}
4. OAuth Authorization (Optional)
For job applications and resume management:
python examples/oauth_flow.py
Follow the instructions to authorize and get access tokens.
Usage Examples
# Search for Python jobs in Moscow
Find 10 Python developer vacancies in Moscow with salary from 200000
# View your resumes
Show my resumes
# Get vacancy details
Show details for vacancy 126209046
# Apply to a job (after OAuth)
Apply to vacancy 126209046 with resume [resume_id] and cover letter: "Hello..."
Vacancy Hunter Agent
Automated agent for intelligent vacancy search and analysis. See for details.
Features:
- Analyzes multiple resumes simultaneously
- Scores vacancies by relevance (0-30 points)
- Generates CSV reports with AI-powered recommendations
- Focuses on Moscow region only
Usage:
Run vacancy-hunter agent
Project Structure
headhunter-mcp-server/
βββ server.py # MCP server (10 tools)
βββ hh_client.py # HeadHunter API client
βββ requirements.txt # Python dependencies
βββ .env.example # Environment variables template
βββ examples/
β βββ oauth_flow.py # OAuth authorization script
βββ docs/
βββ vacancy-hunter-agent.md # Agent documentation
Requirements
- Python 3.10+
- Claude Code or any MCP-compatible client
- HeadHunter API credentials
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT License - see file for details.
Links
Russian
MCP ΡΠ΅ΡΠ²Π΅Ρ Π΄Π»Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ HeadHunter API Ρ Claude Code ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ MCP ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ.
HeadHunter (hh.ru) β ΠΊΡΡΠΏΠ½Π΅ΠΉΡΠ°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΏΠΎ ΠΏΠΎΠΈΡΠΊΡ ΡΠ°Π±ΠΎΡΡ Π² Π ΠΎΡΡΠΈΠΈ ΠΈ ΡΡΡΠ°Π½Π°Ρ Π‘ΠΠ. ΠΡΠΎΡ MCP ΡΠ΅ΡΠ²Π΅Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±Π΅ΡΡΠΎΠ²Π½ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ API HeadHunter, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ AI Π°ΡΡΠΈΡΡΠ΅Π½ΡΠ°ΠΌ ΠΈΡΠΊΠ°ΡΡ Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ, ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅Π·ΡΠΌΠ΅ ΠΈ ΠΎΡΠΊΠ»ΠΈΠΊΠ°ΡΡΡΡ Π½Π° Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ ΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
- π Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠΈΡΠΊ Π²Π°ΠΊΠ°Π½ΡΠΈΠΉ - Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π·Π°ΡΠΏΠ»Π°ΡΠ΅, ΠΎΠΏΡΡΡ, ΡΠΈΠΏΡ Π·Π°Π½ΡΡΠΎΡΡΠΈ
- π Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠΌΠ΅ - ΠΡΠΎΡΠΌΠΎΡΡ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π°ΡΠΈΠΌΠΈ ΡΠ΅Π·ΡΠΌΠ΅ Π½Π° HeadHunter
- βοΈ ΠΡΠΊΠ»ΠΈΠΊΠΈ Π½Π° Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ - ΠΠΎΠ΄Π°ΡΠ° Π·Π°ΡΠ²ΠΎΠΊ Ρ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΠΎΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΏΠΈΡΡΠΌΠ°ΠΌΠΈ
- π’ ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡ - ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΎ ΡΠ°Π±ΠΎΡΠΎΠ΄Π°ΡΠ΅Π»ΡΡ
- π ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠΊΠ»ΠΈΠΊΠΎΠ² - ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΈΡΡΠΎΡΠΈΠΈ Π²Π°ΡΠΈΡ ΠΎΡΠΊΠ»ΠΈΠΊΠΎΠ²
- π€ AI-Π°Π³Π΅Π½Ρ - ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠΈΡΠΊ Π²Π°ΠΊΠ°Π½ΡΠΈΠΉ Ρ ΡΠΌΠ½ΡΠΌ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ
- π OAuth 2.0 - ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½Π°Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ΅Π· HeadHunter
ΠΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ (10)
- hh_search_vacancies - ΠΠΎΠΈΡΠΊ Π²Π°ΠΊΠ°Π½ΡΠΈΠΉ
- hh_get_vacancy - ΠΠ΅ΡΠ°Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ
- hh_get_employer - ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ/ΡΠ°Π±ΠΎΡΠΎΠ΄Π°ΡΠ΅Π»Π΅
- hh_get_similar - ΠΠΎΠΈΡΠΊ ΠΏΠΎΡ ΠΎΠΆΠΈΡ Π²Π°ΠΊΠ°Π½ΡΠΈΠΉ
- hh_get_areas - Π‘ΠΏΠΈΡΠΎΠΊ ΡΠ΅Π³ΠΈΠΎΠ½ΠΎΠ²/Π³ΠΎΡΠΎΠ΄ΠΎΠ²
- hh_get_dictionaries - Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ (ΠΎΠΏΡΡ, ΡΠΈΠΏΡ Π·Π°Π½ΡΡΠΎΡΡΠΈ ΠΈ Ρ.Π΄.)
- hh_get_resumes - Π‘ΠΏΠΈΡΠΎΠΊ Π²Π°ΡΠΈΡ ΡΠ΅Π·ΡΠΌΠ΅
- hh_get_resume - ΠΠ΅ΡΠ°Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅Π·ΡΠΌΠ΅
- hh_apply_to_vacancy - ΠΡΠΊΠ»ΠΈΠΊΠ½ΡΡΡΡΡ Π½Π° Π²Π°ΠΊΠ°Π½ΡΠΈΡ (ΡΡΠ΅Π±ΡΠ΅Ρ OAuth)
- hh_get_negotiations - ΠΡΡΠΎΡΠΈΡ ΠΎΡΠΊΠ»ΠΈΠΊΠΎΠ² (ΡΡΠ΅Π±ΡΠ΅Ρ OAuth)
ΠΡΡΡΡΡΠΉ ΡΡΠ°ΡΡ
1. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
git clone https://github.com/yourusername/headhunter-mcp-server.git
cd headhunter-mcp-server
python -m venv venv
source venv/bin/activate # Π Windows: venv\Scripts\activate
pip install -r requirements.txt
2. ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ credentials HeadHunter API
- ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° https://dev.hh.ru/admin
- ΠΠΎΠ»ΡΡΠΈΡΠ΅ Client ID, Client Secret ΠΈ App Token
- Π‘ΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅
.env.example
Π².env
ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ²ΠΎΠΈ credentials
cp .env.example .env
# ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠΉΡΠ΅ .env ΡΠ²ΠΎΠΈΠΌΠΈ credentials
3. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Claude Code
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π² ~/.claude.json
:
{
"mcpServers": {
"headhunter": {
"type": "stdio",
"command": "/ΠΏΡΡΡ/ΠΊ/venv/bin/python",
"args": ["/ΠΏΡΡΡ/ΠΊ/headhunter-mcp-server/server.py"],
"env": {
"HH_CLIENT_ID": "Π²Π°Ρ_client_id",
"HH_CLIENT_SECRET": "Π²Π°Ρ_client_secret",
"HH_APP_TOKEN": "Π²Π°Ρ_app_token",
"HH_REDIRECT_URI": "https://Π²Π°Ρ-Π΄ΠΎΠΌΠ΅Π½.com/oauth/callback"
}
}
}
}
4. OAuth Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ (ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ)
ΠΠ»Ρ ΠΎΡΠΊΠ»ΠΈΠΊΠΎΠ² Π½Π° Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅Π·ΡΠΌΠ΅:
python examples/oauth_flow.py
Π‘Π»Π΅Π΄ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ Π΄Π»Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΠ΅Π½ΠΎΠ² Π΄ΠΎΡΡΡΠΏΠ°.
ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
# ΠΠΎΠΈΡΠΊ Python Π²Π°ΠΊΠ°Π½ΡΠΈΠΉ Π² ΠΠΎΡΠΊΠ²Π΅
ΠΠ°ΠΉΠ΄ΠΈ 10 Π²Π°ΠΊΠ°Π½ΡΠΈΠΉ Python ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π² ΠΠΎΡΠΊΠ²Π΅ Ρ Π·Π°ΡΠΏΠ»Π°ΡΠΎΠΉ ΠΎΡ 200000
# ΠΡΠΎΡΠΌΠΎΡΡ ΡΠ΅Π·ΡΠΌΠ΅
ΠΠΎΠΊΠ°ΠΆΠΈ ΠΌΠΎΠΈ ΡΠ΅Π·ΡΠΌΠ΅
# ΠΠ΅ΡΠ°Π»ΠΈ Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ
ΠΠΎΠΊΠ°ΠΆΠΈ Π΄Π΅ΡΠ°Π»ΠΈ Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ 126209046
# ΠΡΠΊΠ»ΠΈΠΊ Π½Π° Π²Π°ΠΊΠ°Π½ΡΠΈΡ (ΠΏΠΎΡΠ»Π΅ OAuth)
ΠΡΠΊΠ»ΠΈΠΊΠ½ΠΈΡΡ Π½Π° Π²Π°ΠΊΠ°Π½ΡΠΈΡ 126209046 ΡΠ΅Π·ΡΠΌΠ΅ [resume_id] Ρ ΠΏΠΈΡΡΠΌΠΎΠΌ: "ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅..."
Vacancy Hunter Agent
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π°Π³Π΅Π½Ρ Π΄Π»Ρ ΡΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π²Π°ΠΊΠ°Π½ΡΠΈΠΉ. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π² .
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ:
- ΠΠ½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π·ΡΠΌΠ΅ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ
- ΠΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΠΎΡΡΡ Π²Π°ΠΊΠ°Π½ΡΠΈΠΉ (0-30 Π±Π°Π»Π»ΠΎΠ²)
- ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅Ρ CSV ΠΎΡΡΡΡΡ Ρ AI ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌΠΈ
- Π€ΠΎΠΊΡΡΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠ΅Π³ΠΈΠΎΠ½Π΅ ΠΠΎΡΠΊΠ²Π°
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅:
ΠΠ°ΠΏΡΡΡΠΈ Π°Π³Π΅Π½ΡΠ° vacancy-hunter
Π‘ΡΡΡΠΊΡΡΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°
headhunter-mcp-server/
βββ server.py # MCP ΡΠ΅ΡΠ²Π΅Ρ (10 ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²)
βββ hh_client.py # HeadHunter API ΠΊΠ»ΠΈΠ΅Π½Ρ
βββ requirements.txt # Python Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
βββ .env.example # Π¨Π°Π±Π»ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ
βββ examples/
β βββ oauth_flow.py # Π‘ΠΊΡΠΈΠΏΡ OAuth Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ
βββ docs/
βββ vacancy-hunter-agent.md # ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π°Π³Π΅Π½ΡΠ°
Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ
- Python 3.10+
- Claude Code ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΉ MCP-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ
- HeadHunter API credentials
Π£ΡΠ°ΡΡΠΈΠ΅ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅
ΠΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ Π»ΡΠ±ΡΠ΅ Π²ΠΊΠ»Π°Π΄Ρ! ΠΠ΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Pull Request.
ΠΠΈΡΠ΅Π½Π·ΠΈΡ
MIT License - ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π² ΡΠ°ΠΉΠ»Π΅ .
Π‘ΡΡΠ»ΠΊΠΈ
Made with β€οΈ for the HeadHunter and MCP community