JobScout MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@JobScout MCPFind remote backend Python jobs"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
JobScout MCP
An MCP (Model Context Protocol) server that lets Claude search live job postings, score them against your own skills, and track which ones you've applied to - all running locally on your machine.
Why this exists
Built as a hands-on project to learn how MCP servers actually work: how Claude discovers tools, how tool schemas get defined, and how to design tools that are genuinely useful rather than just API wrappers.
Related MCP server: job-search
Directory structure
jobscout-mcp/
├── server.py # MCP server entrypoint - defines all 4 tools
├── scoring.py # Scores a job posting against profile.json
├── storage.py # SQLite-backed tracking of application status
├── profile.json # YOUR editable skills/preferred-roles list
├── requirements.txt # Runtime dependencies
├── requirements-dev.txt # Adds pytest for running tests
├── .gitignore
├── LICENSE
├── README.md
└── tests/
├── test_scoring.py # Unit tests for scoring.py
└── test_storage.py # Unit tests for storage.pyHow the pieces connect: server.py is the only file that talks to
Claude - it imports functions from scoring.py and storage.py and
exposes them as tools. scoring.py reads profile.json (your skills)
and never touches the network or the database. storage.py owns the
local SQLite file (jobscout.db, created automatically on first run,
gitignored so it stays private) and never touches the network either.
This separation is why tests/ can test scoring and storage logic
directly, without needing a live network connection or a running MCP
server.
Tools exposed to Claude
Tool | What it does |
| Keyword search over live postings from RemoteOK |
| Same, but scored + sorted against your |
| Record or update a job's status (seen/applied/interviewing/rejected/offer/ignored) |
| List what you're tracking, optionally filtered by status |
Setup
git clone <your-repo-url>
cd jobscout-mcp
python3 -m venv venv
source venv/bin/activate # on Windows: venv\Scripts\activate
pip install -r requirements.txtEdit profile.json with your actual skills and preferred role keywords
before using rank_jobs_for_me - the scoring is only as good as this list.
Running the tests
pip install -r requirements-dev.txt
pytest tests/ -vAll storage tests run against temporary throwaway databases (via
pytest's tmp_path fixture), so they never touch your real
jobscout.db.
Quick manual test (no Claude needed)
python3 -c "
import asyncio
from server import search_jobs, rank_jobs_for_me
print(asyncio.run(search_jobs('python', limit=5)))
print(asyncio.run(rank_jobs_for_me(limit=5)))
"python3 -c "
from server import track_job, list_tracked_jobs
print(track_job('abc123', 'applied', title='Backend Engineer', company='Acme'))
print(list_tracked_jobs())
"These hit the live RemoteOK API and a real local SQLite file, so you need actual internet access and a writable directory for this to work.
Connecting to Claude Desktop
Add this to your Claude Desktop config
(~/Library/Application Support/Claude/claude_desktop_config.json on Mac,
%APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"jobscout": {
"command": "python3",
"args": ["/absolute/path/to/jobscout-mcp/server.py"]
}
}
}Restart Claude Desktop, then try:
"Use jobscout to find remote backend Python jobs."
"Rank the live postings against my skills profile."
"Mark job [id] as applied, I just submitted it."
"What jobs am I currently tracking as interviewing?"
Known limitations
Only pulls from RemoteOK's public API - a real production version would pull from multiple job boards.
Scoring is keyword-based, not semantic - it won't know that "Golang" means the same thing as "go" unless both are in
profile.json.No automated monitoring of scoring quality over time; see
tests/test_scoring.pyfor what's covered today.
Roadmap (built in this order)
Part 1: live job search tool
Part 2: score/rank postings against your own skills
Part 3: local storage to track seen/applied jobs
Part 4: tests, docs, packaging
This server cannot be installed
Maintenance
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
- FlicenseAqualityDmaintenanceAn MCP server that enables searching for jobs across Australian platforms (Seek and LinkedIn) from Claude or any MCP-compatible client, with filters for location, salary, employment type, and more.Last updated13
- Alicense-qualityBmaintenanceA job-search MCP server that ranks roles, drafts cover letters, and rehearses Q&A answers using a candidate profile, with live listings from five public sources.Last updated68MIT
- Alicense-qualityBmaintenanceAn MCP server that enables AI-assisted job search workflows including job discovery, application tracking, resume evaluation, and cover letter generation, with support for multiple job sources and scheduled scraping.Last updated81AGPL 3.0
- Alicense-qualityBmaintenanceA custom MCP server that exposes a jobs database to any MCP-compatible LLM client, allowing users to ask in plain English to search, filter, and match job openings.Last updatedMIT
Related MCP Connectors
MCP server for AI job search — find jobs, track applications, get alerts. Claude, ChatGPT, Cursor.
GetJobzi MCP server for job search, application tracking, and career forecasting.
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/csarushan1729/jobscout-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server