workatastartup-mcp
Provides tools to read job postings and company details from Y Combinator's Work at a Startup platform, including structured job data (title, company, location, salary, etc.) and company profiles with open roles.
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., "@workatastartup-mcpGet job 100105 from Work at a Startup"
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.
workatastartup-mcp
An MCP server that reads Work at a Startup (Y Combinator) job postings through your own logged-in session.
Work at a Startup keeps its job pages behind a login, so tools that only fetch public URLs get a title and nothing else. This server signs the request with your session cookie, so an AI assistant can pull the full job description the same way you'd see it in the browser.
What it does
It exposes two tools:
get_job(jobId)— takes the numeric id from a/jobs/<id>URL and returns the job as structured data: title, company, location, job type, minimum experience, salary and equity ranges, visa policy, skills, whether your account's location is eligible for the role, and the full description.get_company(slug)— takes the slug from a/companies/<slug>URL (e.g.siphox-health) and returns the company's details — name, batch, tagline, website, location, team size, industry, and founders — along with every role it currently has open (title, id, url, role, location, experience, salary and equity ranges, visa policy, and skills).
Related MCP server: jd-intel-mcp
Requirements
Node.js 18 or newer
A Work at a Startup account you're logged into
Install
npm install -g workatastartup-mcpOr run it straight from npm without installing:
npx workatastartup-mcpGetting your session cookie
The server reuses your existing session instead of storing your password. You give it your cookie once:
Log in to https://www.workatastartup.com in your browser.
Open the developer tools (
F12), go to the Network tab, and reload the page.Click the first request, find the Cookie request header, and copy its whole value.
Put that value in a
WAAS_COOKIEenvironment variable.
The cookie expires after a while. When the server starts returning "session expired", repeat the steps above for a fresh one.
Connecting it to an MCP client
Add the server to your client's MCP config. For a Claude-style config it looks like this:
{
"mcpServers": {
"workatastartup": {
"command": "npx",
"args": ["workatastartup-mcp"],
"env": {
"WAAS_COOKIE": "paste-your-cookie-here"
}
}
}
}Once it's connected, ask your assistant to fetch a posting by id, for example: "Get Work at a Startup job 100105." — or ask for a company's open roles: "What is siphox-health hiring for on Work at a Startup?"
How it works
The job pages are an Inertia.js app: instead of server-rendering the content, they ship the whole page as JSON inside a data-page attribute and let the browser draw it. The server reads that JSON straight from the attribute, so you get clean structured fields rather than scraped text — and it needs nothing heavier than a single authenticated HTTP request per job, no headless browser.
Batch mode from the command line
Run with one or more job ids and the same binary works as a plain CLI instead of the MCP server — handy for scripting, a saved queue of ids, or a quick check without wiring up a client. Each job streams to stdout as it's fetched, one JSON record per line, so you can pipe it straight into jq:
WAAS_COOKIE=... npx workatastartup-mcp --json 100105 100106 | jq .titleWithout --json each record is pretty-printed. A bad id doesn't stop the run — it prints an { "jobId": ..., "error": ... } record and the command exits non-zero if any id failed. Run it with --help for the full usage.
Limitations
Only reads public-to-you postings — anything your account can't see, the server can't see either.
Field extraction is best-effort against the current page markup; if Work at a Startup restructures a page, the selectors in
src/job-client.jsmay need a small update.Through the MCP tools it's one posting per call; use the batch CLI above to fetch several ids at once.
License
MIT — see LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Latest Blog Posts
- 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/moutasem-isentemiz/workatastartup-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server