jobs-mcp
MCP server for searching jobs across multiple boards and drafting proposals automatically.
Features
- Multi-source search -- RemoteOK, Hacker News "Who is Hiring", Arbeitnow, GitHub Issues
- Upwork scraping -- HTML-based job search with fallback strategies
- Proposal drafting -- Auto-selects from 4 templates (MCP, AI Agent, Discord, General) based on keyword scoring
- Job scan -- Single command to sweep all sources at once
- Profile storage -- Built-in profile for quick reference during applications
Tools
| Tool | Description |
|---|---|
search_remote_jobs | Search RemoteOK by tags (typescript, ai, python, etc.) |
search_hn_jobs | Search HN "Who is Hiring" threads via Algolia API |
search_github_jobs | Search GitHub issues/discussions for job postings |
search_arbeitnow_jobs | Search Arbeitnow with remote filter |
search_upwork_jobs | Scrape Upwork job listings by keyword |
draft_proposal | Generate a tailored proposal from a job description |
job_scan | Sweep all sources at once with multiple keywords |
my_profile | Return saved profile, skills, and project portfolio |
Setup
npm install
npm run build
MCP Client Config
Add to your MCP client configuration:
{
"mcpServers": {
"jobs": {
"command": "node",
"args": ["path/to/jobs-mcp/dist/index.js"]
}
}
}
Stack
- TypeScript
- @modelcontextprotocol/sdk
- Zod for input validation
- No API keys required (all free/public APIs)
How Proposal Drafting Works
The draft_proposal tool scores a job description against 4 templates:
- Template A -- MCP / Model Context Protocol projects
- Template B -- AI agents, autonomous systems, LLM integration
- Template C -- Discord bots and server management
- Template D -- General TypeScript/Python backend work
Keywords in the job title and description are matched against each template. The highest-scoring template is selected and combined with a custom opening that references the specific technologies mentioned in the listing.
License
MIT