The job index, as tools.
Verified jobs from employers in 91 countries, with the same filters and the same answers whether a person searches or an agent does. Connect an agent over MCP, call the REST API from any program, or load a Skill. Free, with no key.
“Find remote nursing jobs open to people in the Philippines.”
search_jobs({ q: "nurse", work_arrangement: "remote", eligible_country: "PH" })
Each job comes back with its source, attribution and verification time.
MCP endpoint
60 requests a minutehttps://jobs.peopleseek.ai/mcpModel Context Protocol over Streamable HTTP. 11 tools for Claude Code, Claude Desktop, Cursor and any MCP client.
See the toolsREST API
120 requests a minutehttps://jobs.peopleseek.ai/api/v1JSON with cursor pagination. Every answer carries ok, data, error and meta.
Skills
3 Skillshttps://jobs.peopleseek.ai/skillsThree packaged Skills an agent runtime can load: each is a folder with a SKILL.md.
Get the SkillsConnect in one line, then ask in words.
Add the MCP endpoint to your agent, ask for jobs the way a person would, and show the source of every job it returns.
Add the endpoint
Run claude mcp add with the endpoint, as shown above, or add https://jobs.peopleseek.ai/mcp to your client's MCP settings.
Search in plain language
“Remote nursing jobs open to people in the Philippines.” The agent calls search_jobs with work_arrangement and eligible_country.
Show where each job came from
Every job answer carries its source, attribution and verification time. Show them, and send people to the employer's page to apply.
Build a search, see the call.
Change the filters and the request updates in every language. Send it to see the answer envelope.
The job fields shown are the ones the API page names. The OpenAPI spec has the full job object.
Eleven tools, one endpoint.
Each tool takes the parameters of its REST counterpart. The endpoint is https://jobs.peopleseek.ai/mcp, over Streamable HTTP.
| Tool | What it does | REST counterpart |
|---|
Plain HTTP, plain JSON.
Every path below starts with https://jobs.peopleseek.ai/api/v1. CORS is open, so browser agents can call it too.
| Endpoint | What it returns |
|---|
GET /jobs
The same filters as the search on Find jobs. Allowed values for each parameter are in the OpenAPI spec.
| Group | Parameters |
|---|---|
| Search and place | q, occupation, occupation_id, industry_id, country, countries, region, city |
| Who can apply | eligible_country, worldwide_eligible, include_unknown_eligibility |
| Work and pay | work_arrangement, salary_min, salary_max, currency, compensation_period |
| The job | employment_type, seniority, language, company |
| Dates and status | posted_since, verified_since, status |
| Order and paging | sort, limit (20 by default, at most 100), cursor (from meta.next_cursor, with the same filters) |
One envelope for every answer.
Envelope
ok, data (for a search, data.jobs holds the jobs; null on error), error (null on success) and meta, which holds total, total_capped, next_cursor and applied.
Job fields
Every job carries title, company.name, source.name and source.attributionText, canonicalUrl, applyUrl, verification.lastVerifiedAt, remoteEligibility and eligibleCountries.
remoteEligibility
worldwidecountriesunknownnot_applicableRemote never means worldwide by default.
status
activeunverifiedstaleclosedexpiredremovedOnly active jobs, listed on the last run, are searched by default.
What every agent answer must keep.
Applications
No tool submits an application. get_application_options always answers directSubmitSupported: false and points to the employer's page. POST /applications/submit is always refused with 409 direct_submit_not_supported.
Attribution
Every job answer carries its source, attribution and verification time. Show them.
Eligibility
Use eligible_country for where the person can work from, and worldwide_eligible only for jobs open to anyone. Jobs whose eligibility is unknown are left out unless include_unknown_eligibility is true.
Freshness
Say when a job was last verified. Before sending someone to apply, check_job_status tells you whether it is still listed.
The same for everyone.
There is no key, and no key to raise the limits.
Three Skills, ready to load.
Unzip the archive into your runtime's skills directory. For Claude Code, that is .claude/skills/. Each Skill calls the public endpoints only, and no key is needed.
peopleseek-jobsPeopleSeek Jobs
Search global jobs, occupations, industries, locations, remote eligibility and salary.
peopleseek-job-applicationPeopleSeek Job Application
Retrieve application options and help complete permitted application workflows.
Where the labels come from.
| Labels | Credit |
|---|---|
| Occupations | ESCO © European Union, CC BY 4.0 |
| Geography | GeoNames, CC BY 4.0 |
| Industries | ISIC Rev.4, UNSD |