Adzuna Job Search MCP

by folathecoder

Not rated
GitHub

About

MCP server for Adzuna Job Search API - search jobs, analyze salaries, and research employers across 12 countries

Details

Author
folathecoder
Categories
Search, Knowledge Base, Other

Option 1: Install from PyPI (Recommended)

git clone https://github.com/folarinakinloye/adzuna-mcp.git cd adzuna-mcp pip install -e .
git clone https://github.com/folarinakinloye/adzuna-mcp.git cd adzuna-mcp python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -e ".](https://developer.adzuna.com/)[dev]"

Create a.envfile with your Adzuna credentials:

ADZUNA_APP_ID=your_app_id_here ADZUNA_APP_KEY=your_app_key_here

Add to your Claude Desktop configuration file:

macOS:~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:%APPDATA%\Claude\claude_desktop_config.json

{ "mcpServers": { "adzuna-jobs": { "command": "/path/to/adzuna-mcp/venv/bin/python", "args": ["/path/to/adzuna-mcp/server.py"], "env": { "ADZUNA_APP_ID": "your_app_id", "ADZUNA_APP_KEY": "your_app_key" } } } }

Restart Claude Desktop after updating the configuration.

Add to your Cursor MCP settings (.cursor/mcp.jsonin your project or global config):

{ "mcpServers": { "adzuna-jobs": { "command": "/path/to/adzuna-mcp/venv/bin/python", "args": ["/path/to/adzuna-mcp/server.py"], "env": { "ADZUNA_APP_ID": "your_app_id", "ADZUNA_APP_KEY": "your_app_key" } } } }
# Activate virtual environment source venv/bin/activate # Run with stdio transport (default) python server.py # Or use FastMCP CLI fastmcp run server.py:mcp

FastMCP provides a dev mode with an interactive inspector:

This opens a browser-based UI to test your tools.

Once connected, you can ask your AI assistant:

- "Find software engineer jobs in London paying over £60,000"
- "Search for remote Python developer positions in the US"
- "Show me data science jobs in Germany"

- "What's the typical salary for a machine learning engineer in the UK?"
- "Compare software engineer salaries between London and Manchester"
- "How have data scientist salaries changed over the past year?"

- "Which companies are hiring the most software engineers in London?"
- "Show me the top employers for finance jobs in New York"

Search for jobs with comprehensive filtering:

Parameters: - country (required): Country code (e.g., "gb", "us") - keywords: Search terms (e.g., "python developer") - location: City, region, or postal code - page: Page number (starts at 1) - results_per_page: Results per page (max 50) - salary_min/salary_max: Annual salary filter - full_time/part_time/contract/permanent: Job type filters - category: Category tag from get_categories - sort_by: "date", "salary", or "relevance" - max_days_old: Maximum listing age in days

Get valid category tags before searching:

Parameters: - country (required): Country code Returns category tags like "it-jobs", "engineering-jobs", "finance-jobs"
Parameters: - country (required): Country code - keywords: Filter by job type - location: Filter by location - category: Filter by category
Parameters: - country (required): Country code - keywords: Filter by job type - location: Filter by location - category: Filter by category
Parameters: - country (required): Country code - keywords: Filter by job type - location: Focus on sub-regions - category: Filter by category
Parameters: - country (required): Country code - keywords: Filter by job type - location: Filter by location - category: Filter by category - months: Months of history (default 12, max ~24)

- Salaries are annual amountsin the local currency of the selected country
- Callget_categoriesfirstto get valid category tags for your country
- Many jobs don't list salaries- salary filters will exclude these jobs
- Rate limits apply- the Adzuna API has usage limits on free tier

adzuna-mcp/ ├── server.py # Main MCP server ├── pyproject.toml # Package configuration ├── requirements.txt # Python dependencies ├── .env.example # Environment template ├── .env # Your credentials (gitignored) ├── tests/ # Test suite │ ├── __init__.py │ └── test_server.py ├── .github/ │ └── workflows/ │ ├── ci.yml # CI pipeline │ └── publish.yml # PyPI publishing ├── CONTRIBUTING.md # Contribution guide ├── LICENSE ├── .gitignore └── README.md

- Check the Python path is correct in your config
- Ensure the virtual environment has all dependencies installed
- Restart Claude Desktop completely (Cmd+Q / Alt+F4)
- Check Claude Desktop logs:~/Library/Logs/Claude/mcp*.log
- Verify your API credentials atAdzuna Developer Portal
- Check the.envfile has correct values
- Ensure environment variables are passed in the MCP config
- Try broader search terms
- Check the country code is valid
- Remove salary filters (many jobs don't list salaries)
- Verify the category tag is valid for that country

Contributions are welcome! Please seeCONTRIBUTING.mdfor guidelines.

- Adzunafor providing the job search API
-
FastMCPfor the MCP framework
-
Anthropicfor the Model Context Protocol specification

Search global news using natural language. Webz.io News Search API returns the most relevant articles and content, with filters for source, country, language, date, sentiment, and category.

Fetch, convert, and search AWS documentation pages, with recommendations for related content.

Search campgrounds around the world on campertunity, check availability, and provide booking links.

The Ferryhopper MCP Server exposes ferry routes, schedules and booking redirects so an AI assistant can discover connections across Europe and the Mediterranean and send users to Ferryhopper to complete bookings.

All-in-One SEO & Web Intelligence Toolkit API from FetchSERP.

MCP server that provides read-only access to HyperKitty, the web-based email archive component of Mailman 3.

At Sunrise Apps, we believe AI agents should be limitless, especially when it comes to visual data. We created ImageSorcery to bridge the critical gap in AI's ability to interact with and manipulate images directly, all while upholding the highest standards of privacy and security.

Just Domain is the domain registrar for businesses built with AI. Its remote MCP server checks availability and returns first-year and renewal pricing, plus a link to register on justdomain.ai, with DNS and WHOIS privacy in the same place. No account, no API key, read only. Endpoint: https://mcp.justdomain.ai/

Research tools, including a Sqlite-backed document stash

Semantic search over 9 free-license stock photo sources. Hosted remote server with OAuth — no API key to paste.

SerpApi MCP Server for Google and other search engine results

A Model Context Protocol (MCP) server that provides AI assistants with access to theAdzuna Job Search API. Search for jobs, analyze salary data, and research employers across 12 countries.

- Job Search- Search millions of job listings with filters for location, salary, job type, and more
- Salary Analysis- Get salary histograms, regional comparisons, and historical trends
- Company Research- Find top employers by hiring volume
- Multi-Country Support- Access job markets in 12 countries with local currency support

- Python 3.10+
- Adzuna API credentials (free)
- Go to
Adzuna Developer Portal
- Sign up for a free account
- Create a new application
- Copy yourApp IDandApp Key

Option 1: Install from PyPI (Recommended)

git clone https://github.com/folarinakinloye/adzuna-mcp.git cd adzuna-mcp pip install -e .
git clone https://github.com/folarinakinloye/adzuna-mcp.git cd adzuna-mcp python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -e ".[dev]"

Create a.envfile with your Adzuna credentials:

ADZUNA_APP_ID=your_app_id_here ADZUNA_APP_KEY=your_app_key_here

Add to your Claude Desktop configuration file:

macOS:~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:%APPDATA%\Claude\claude_desktop_config.json

{ "mcpServers": { "adzuna-jobs": { "command": "/path/to/adzuna-mcp/venv/bin/python", "args": ["/path/to/adzuna-mcp/server.py"], "env": { "ADZUNA_APP_ID": "your_app_id", "ADZUNA_APP_KEY": "your_app_key" } } } }

Restart Claude Desktop after updating the configuration.

Add to your Cursor MCP settings (.cursor/mcp.jsonin your project or global config):

{ "mcpServers": { "adzuna-jobs": { "command": "/path/to/adzuna-mcp/venv/bin/python", "args": ["/path/to/adzuna-mcp/server.py"], "env": { "ADZUNA_APP_ID": "your_app_id", "ADZUNA_APP_KEY": "your_app_key" } } } }
# Activate virtual environment source venv/bin/activate # Run with stdio transport (default) python server.py # Or use FastMCP CLI fastmcp run server.py:mcp

FastMCP provides a dev mode with an interactive inspector:

This opens a browser-based UI to test your tools.

Once connected, you can ask your AI assistant:

- "Find software engineer jobs in London paying over £60,000"
- "Search for remote Python developer positions in the US"
- "Show me data science jobs in Germany"

- "What's the typical salary for a machine learning engineer in the UK?"
- "Compare software engineer salaries between London and Manchester"
- "How have data scientist salaries changed over the past year?"

- "Which companies are hiring the most software engineers in London?"
- "Show me the top employers for finance jobs in New York"

Search for jobs with comprehensive filtering:

Parameters: - country (required): Country code (e.g., "gb", "us") - keywords: Search terms (e.g., "python developer") - location: City, region, or postal code - page: Page number (starts at 1) - results_per_page: Results per page (max 50) - salary_min/salary_max: Annual salary filter - full_time/part_time/contract/permanent: Job type filters - category: Category tag from get_categories - sort_by: "date", "salary", or "relevance" - max_days_old: Maximum listing age in days

Get valid category tags before searching:

Parameters: - country (required): Country code Returns category tags like "it-jobs", "engineering-jobs", "finance-jobs"
Parameters: - country (required): Country code - keywords: Filter by job type - location: Filter by location - category: Filter by category
Parameters: - country (required): Country code - keywords: Filter by job type - location: Filter by location - category: Filter by category
Parameters: - country (required): Country code - keywords: Filter by job type - location: Focus on sub-regions - category: Filter by category
Parameters: - country (required): Country code - keywords: Filter by job type - location: Filter by location - category: Filter by category - months: Months of history (default 12, max ~24)

- Salaries are annual amountsin the local currency of the selected country
- Callget_categoriesfirstto get valid category tags for your country
- Many jobs don't list salaries- salary filters will exclude these jobs
- Rate limits apply- the Adzuna API has usage limits on free tier

adzuna-mcp/ ├── server.py # Main MCP server ├── pyproject.toml # Package configuration ├── requirements.txt # Python dependencies ├── .env.example # Environment template ├── .env # Your credentials (gitignored) ├── tests/ # Test suite │ ├── __init__.py │ └── test_server.py ├── .github/ │ └── workflows/ │ ├── ci.yml # CI pipeline │ └── publish.yml # PyPI publishing ├── CONTRIBUTING.md # Contribution guide ├── LICENSE ├── .gitignore └── README.md

- Check the Python path is correct in your config
- Ensure the virtual environment has all dependencies installed
- Restart Claude Desktop completely (Cmd+Q / Alt+F4)
- Check Claude Desktop logs:~/Library/Logs/Claude/mcp*.log
- Verify your API credentials atAdzuna Developer Portal
- Check the.envfile has correct values
- Ensure environment variables are passed in the MCP config
- Try broader search terms
- Check the country code is valid
- Remove salary filters (many jobs don't list salaries)
- Verify the category tag is valid for that country

Contributions are welcome! Please seeCONTRIBUTING.mdfor guidelines.

- Adzunafor providing the job search API
-
FastMCPfor the MCP framework
-
Anthropicfor the Model Context Protocol specification

Search global news using natural language. Webz.io News Search API returns the most relevant articles and content, with filters for source, country, language, date, sentiment, and category.

Fetch, convert, and search AWS documentation pages, with recommendations for related content.

Search campgrounds around the world on campertunity, check availability, and provide booking links.

The Ferryhopper MCP Server exposes ferry routes, schedules and booking redirects so an AI assistant can discover connections across Europe and the Mediterranean and send users to Ferryhopper to complete bookings.

All-in-One SEO & Web Intelligence Toolkit API from FetchSERP.

MCP server that provides read-only access to HyperKitty, the web-based email archive component of Mailman 3.

At Sunrise Apps, we believe AI agents should be limitless, especially when it comes to visual data. We created ImageSorcery to bridge the critical gap in AI's ability to interact with and manipulate images directly, all while upholding the highest standards of privacy and security.

Just Domain is the domain registrar for businesses built with AI. Its remote MCP server checks availability and returns first-year and renewal pricing, plus a link to register on justdomain.ai, with DNS and WHOIS privacy in the same place. No account, no API key, read only. Endpoint: https://mcp.justdomain.ai/

Research tools, including a Sqlite-backed document stash

Semantic search over 9 free-license stock photo sources. Hosted remote server with OAuth — no API key to paste.

SerpApi MCP Server for Google and other search engine results

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.