Indeed jobs for AI agents: an MCP server and live API that searches Indeed's 62 country sites by keyword, city, pay and experience level, and looks jobs up by key. Answers in seconds with title, company, yearly pay, full description, employer details and the apply link.
First release: the live endpoint of Indeed Jobs Scraper 0.7 as an Actor of its own, with Apify Standby on. It runs the same code, so searches, filters and rows are the scraper's.
2026-11-10 (0.1.4): the input form of a normal run is headed with this listing's own title, not the scraper's.
MCP server at /mcp (Streamable HTTP) with four tools: search_jobs, get_jobs, list_countries (free) and run_actor.
HTTP endpoints: GET /jobs, GET /job, GET /countries and POST /run.
Indeed's 62 country sites, Indeed's own filters (posted within, job type, remote or hybrid, experience level, radius, sort) and the Actor's (title words, excluded words and companies, minimum yearly pay, only jobs with pay, apply type, one job per company).
Limits per request, counted from its arrival: an MCP tool call reads up to 3 searches, 100 jobs and about 350 kB within 50 seconds, an HTTP request up to 10 searches, 1,000 jobs and about 6 MB within 170 seconds. What a limit leaves out is named and not charged.
Indeed's refusals are asked again, not worked around: a request Indeed refuses (HTTP 403 or 429, or its bot check) is asked again from the same proxy address after longer waits, never from another address or through residential proxies, and the answer names what didn't load.
Normal runs take the scraper's whole input, with only new jobs and Slack, Discord, Teams or Telegram alerts. Their default history store is indeed-jobs-mcp-history, apart from the scraper's, and a History name another Actor created stops the run before anything is read or charged.