Skip to main content

jobspy-mcp

MCP server wrapping JobSpy to search LinkedIn, Indeed, Glassdoor, ZipRecruiter, Google Jobs, Bayt, Naukri, and BDJobs from any MCP-compatible AI client.

Quick Start

Run directly with uvx (stdio, default):

uvx jobspy-mcp

Or with SSE / HTTP transports:

uvx jobspy-mcp --transport sse                        # SSE on 127.0.0.1:8000
uvx jobspy-mcp --transport streamable-http            # HTTP on 127.0.0.1:8000
uvx jobspy-mcp --transport sse --host 0.0.0.0 --port 9000

Or install globally:

pip install jobspy-mcp
jobspy-mcp

CLI Options

Flag Default Description
--transport stdio stdio, sse, or streamable-http
--host 127.0.0.1 Bind host (SSE/HTTP only)
--port 8000 Bind port (SSE/HTTP only)

Claude Desktop Configuration

Add to ~/.config/claude/claude_desktop_config.json (Linux/macOS):

{
  "mcpServers": {
    "jobspy": {
      "command": "uvx",
      "args": ["jobspy-mcp"]
    }
  }
}

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

Available Tools

Tool Description
list_job_sites Returns all supported site names with notes
search_jobs Search jobs with full parameter control

search_jobs Parameters

Parameter Type Default Description
site_name list[str] ["linkedin","indeed"] Job boards to search
search_term str None Job title or keywords
google_search_term str None Search term for Google Jobs specifically
location str None City, state, or country
results_wanted int 15 Results per site
hours_old int None Filter by recency (hours)
job_type str None fulltime, parttime, internship, contract
is_remote bool False Remote jobs only
distance int 50 Search radius in miles
country_indeed str "usa" Country for Indeed/Glassdoor
easy_apply bool None Easy Apply filter
fetch_description bool False Fetch full descriptions on every site that supports it (slower)
linkedin_fetch_description bool False Deprecated alias for fetch_description
linkedin_company_ids list[int] None Restrict LinkedIn results to these company ids
enforce_annual_salary bool False Convert hourly/monthly salaries to annual
offset int 0 Pagination offset
description_format str "markdown" "markdown", "html" or "plain"
proxies list[str] None Proxy URLs for rate limit avoidance
user_agent str None Override the HTTP User-Agent

Supported Sites

Site Notes
linkedin Global; proxies recommended for large searches
indeed Best scraper; use country_indeed for non-US
glassdoor Use country_indeed for non-US
zip_recruiter US and Canada only
google Use google_search_term for best results
bayt Middle East focused
naukri India focused
bdjobs Bangladesh focused

Development

git clone https://github.com/andrijdavid/jobspy-mcp
cd jobspy-mcp
uv sync --dev
uv run pytest
uv run jobspy-mcp   # starts MCP server on stdio

Metadata

Release files for jobspy-mcp 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jobspy-mcp 0.2.0
File Size Uploaded
jobspy_mcp-0.2.0.tar.gz 91.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jobspy-mcp 0.2.0
File Interpreter ABI Platform
jobspy_mcp-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 110.3 kB

Release files / jobspy_mcp-0.2.0.tar.gz

Download URL jobspy_mcp-0.2.0.tar.gz
Size 91.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ae7555cf5d0c5fabb1a7f7f443451ed4f77a04755fe53a83976a4bd0f767e63e
BLAKE2b-256 checksum
How to use checksums
3b1dc112d67a4c39d82c2b78de03c185037c1d73a8a98b247c4a3d8f0a798886
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 5, 2026.

Transparency log

Release files / jobspy_mcp-0.2.0-py3-none-any.whl

Download URL jobspy_mcp-0.2.0-py3-none-any.whl
Size 18.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aebdbb99d61280fc9ad079a63e1cd62970d3b11849a49a2f866423a2667087ed
BLAKE2b-256 checksum
How to use checksums
194c179f1d44776d715273da9515916e5d5761456da57fad8df38967716ee54a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 5, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page