claude mcp add jobstack-mcp -- npx -y vercel{
"mcpServers": {
"jobstack-mcp": {
"command": "npx",
"args": ["-y", "vercel"]
}
}
}Resumen de MCP Servers
# jobstack-mcp
A remote **MCP (Model Context Protocol)** connector for **JobStack** — the unified jobs-search API ([jobs-api](https://jobs-api-gamma.vercel.app)) that fuses official job-board feeds and public ATS boards (USAJOBS, Adzuna, Jooble, The Muse, Reed, and Greenhouse/Lever/Ashby/Workable/SmartRecruiters behind one `ats` engine) into one flat `Job` shape.
**Live:** `https://jobstack-mcp.vercel.app/mcp` — 2 tools, exposed over the MCP streamable-HTTP transport. Since the upstream jobs-api deployment is metered (RapidAPI/Apify) and its `/v1/*` routes sit behind a RapidAPI proxy-secret guard, this connector authenticates its own outbound calls with that same secret (`JOBSTACK_MCP_PROXY_SECRET`, sent as the `X-RapidAPI-Proxy-Secret` header) and applies a soft per-IP rate limit (`JOBSTACK_MCP_RATE_LIMIT`, default 30 tool-calls/hour, in-memory) so the free MCP tier stays a discovery channel rather than an unmetered bypass of the paid listing — see `lib/ratelimit.js`.
## What this is
JobStack is a plain REST API. This repo is a thin adapter that exposes each endpoint as a discoverable, typed MCP **tool** so MCP clients (Claude, ChatGPT, any MCP-aware agent) can call it directly, speaking the MCP streamable-HTTP transport at a single `/mcp` endpoint. It has no business logic of its own — every tool call is a pass-through `fetch` to jobs-api, and the JSON response is handed back verbatim as the tool result.
## Tools
| Tool | JobStack endpoint | Description |
|---|---|---|
| `search_jobs` | `GET /v1/jobs/search` | Search + merge job postings across all (or a `sources=` subset of) engines, sorted newest-first, paginated. |
| `get_job` | `GET /v1/jobs/{source}/{id}` | Fetch one job by its source engine + native id (composite `board:company:nativeId` for `ats`). |
Both tools are read-only and annotated `{ readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true }`.
### `search_jobs` inputs
- `keywords` (string, optional) — free-text search terms.
- `location` (string, optional) — free-text location filter.
- `remote` (boolean, optional) — filter to remote roles where the source signals it.
- `sources` (string, optional) — comma list of engine keys: `usajobs, adzuna, jooble, themuse, reed, ats`. Omit for all six.
- `limit` (int 1-100, optional, default 20).
- `offset` (int ≥0, optional, default 0).
### `get_job` inputs
- `source` (enum: `usajobs | adzuna | jooble | themuse | reed | ats`).
- `id` (string) — native upstream id from a search result; for `ats`, the composite `board:company:nativeId` string.
## Config
- `JOBSTACK_MCP_API_BASE_URL` — upstream base URL. Default `https://jobs-api-gamma.vercel.app`.
- `JOBSTACK_MCP_PROXY_SECRET` — the RapidAPI proxy secret forwarded as `X-RapidAPI-Proxy-Secret` on outbound calls (needed for the production origin, which guards `/v1/*`).
- `JOBSTACK_MCP_RATE_LIMIT` — soft per-IP tools/call cap per hour. Default 30.
## Local development
```bash
npm install
npm run dev # starts local-server.js on http://localhost:3900
npm run smoke # in another terminal — real HTTP/JSON-RPC smoke test
```
`test/smoke.mjs` drives the running server over real HTTP/JSON-RPC and verifies `GET /health`, `initialize` (`serverInfo.name === "jobstack"`), and `tools/list` (the 2 tools with their zod-derived schemas), then attempts a live `search_jobs` tools/call. Without `JOBSTACK_MCP_PROXY_SECRET` set locally the upstream origin returns 403 (its RapidAPI guard) — an expected upstream-auth condition the smoke test reports as a soft warning while still verifying the full protocol surface.
## Deploy
```bash
cd /Users/isaiahdupree/Software/jobstack-mcp
npx vercel --yes --prod
```
After deploy, the MCP connector URL to register in Claude/ChatGPT/any MCP client is `https://<deployment-domain>/mcp`.
Lo que la gente pregunta sobre jobstack-mcp
¿Qué es IsaiahDupree/jobstack-mcp?
+
IsaiahDupree/jobstack-mcp es mcp servers para el ecosistema de Claude AI con 0 estrellas en GitHub.
¿Cómo se instala jobstack-mcp?
+
Puedes instalar jobstack-mcp clonando el repositorio (https://github.com/IsaiahDupree/jobstack-mcp) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar IsaiahDupree/jobstack-mcp?
+
IsaiahDupree/jobstack-mcp aún no ha sido auditado por nuestro agente de seguridad. Revisa el repositorio original en GitHub antes de usarlo en producción.
¿Quién mantiene IsaiahDupree/jobstack-mcp?
+
IsaiahDupree/jobstack-mcp es mantenido por IsaiahDupree. La última actividad registrada en GitHub es de yesterday, con 0 issues abiertos.
¿Hay alternativas a jobstack-mcp?
+
Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.
Despliega jobstack-mcp en tu cloud
Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.
¿Mantienes este repo? Añade un badge a tu README
Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.
[](https://claudewave.com/repo/isaiahdupree-jobstack-mcp)<a href="https://claudewave.com/repo/isaiahdupree-jobstack-mcp"><img src="https://claudewave.com/api/badge/isaiahdupree-jobstack-mcp" alt="Featured on ClaudeWave: IsaiahDupree/jobstack-mcp" width="320" height="64" /></a>Más MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!