Open standard · MIT licence

The standard MCP interface
for UK recruitment data.

One open server. Any AI assistant. UK job listings, market rates, and candidate availability — with a common, platform-neutral schema any job board can implement.


Name.  Location.  Skills.  Rate.  Availability.  Notice period.  Preferred work mode.  Contract or permanent.  PAYE or outside IR35.

And every single platform asks for all of it, every time.

It's 2026. AI assistants can book restaurants, manage calendars, and write code — but somehow job hunting still means manually re-keying your entire professional history into another identical form, on another identical platform, for the fifth time this week.

MCP changes that. A candidate should be able to store their profile once and have any AI assistant read it and fill in any application form automatically. No re-keying. No copy-pasting. No wasted afternoon.

But for that to work, job platforms need to speak a common language. This is my attempt to define that language for the UK market.

Eight tools. One standard.

Every tool returns structuredContent alongside text — clean typed data for AI hosts to work with directly.

Public — no auth required
search_jobs
Search UK jobs by keyword, location, type, seniority, and pay range
get_job_detail
Full structured record for a job — skills, compensation, IR35, source URL
get_market_rates
Current UK salary and day rate data by role, seniority, and region
get_skills_demand
Most in-demand skills with job counts, avg rates, and trend direction
Candidate — candidate:read scope
get_candidate_availability
Read availability status, work preferences, and compensation expectations
update_availability
Update availability status and available-from date
Recruiter — recruiter:read / write scope
post_job
Create a new job listing with full UK field support including IR35
search_available_candidates
Search candidates who have made availability public — anonymised results

Up and running in minutes.

A hosted public instance is coming soon. For now, clone and run locally against your own data source.

01

Clone and install

git clone https://github.com/jobsmcp/JobsMCP
cd JobsMCP
npm install
02

Start the server

npm run dev
# MCP endpoint:  http://localhost:3000/mcp
# Discovery:     http://localhost:3000/.well-known/mcp.json
# Health:        http://localhost:3000/health
03

Connect Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "uk-jobs": {
      "command": "npx",
      "args": ["-y", "uk-jobs-mcp"]
    }
  }
}
04

Test with the MCP Inspector

npm run inspector

This is a schema, not just an implementation.

If you run a UK job board, ATS, or recruitment platform — you can implement this same interface over your own data. Fork the repo, replace the stubs, deploy.

Fork the repoThe schema in src/types.ts is the canonical field definition for UK recruitment data exchange.

Replace the stubsEach tool in src/tools/ has a clearly labelled stub function. Wire it to your data store.

Set your domainThe BASE_URL env variable controls what the discovery endpoints advertise. BASE_URL=https://your-domain.com npm start

Open a PRAdd yourself to the Built with section in the README. Contributions to the standard are welcome.