← All Side Quests

Job Search MCP Server

Completed
MCP Job Search Tooling

What is this?

A local MCP server that gives Claude tools for the job search grind. It exposes four tools to any MCP-compatible client:

  • job_search — search LinkedIn with filters for keywords, location, job type, remote preference, experience level, and more
  • profile_data - loads and returns profile data reading pdf, docx and md files.
  • job_description_search - Fetch full job descriptions from LinkedIn job URLs. Accepts a list of URLs (from job_search results) and returns the complete description text for each. Fetches run in parallel batches with delays to avoid rate limiting.
  • company_research — dig into a company using web search and optional site scraping to figure out what they actually do

You drop a profile/ directory with your experience files and a manifest, the model you’re working with can use that as context for any follow-ups. using the tool just prevents LLM side-quests to parse pdfs, docx files and text.

Why I wanted to do it

Combing through LinkedIn is tedious. The signal-to-noise ratio is rough, and reading between the lines of a job description only gets you so far when you’re trying to understand what a company actually does. The company research tool is more effective for that — it pulls real information instead of making me decode corporate buzzwords.

Cover letters are the other pain point. Starting from a blank page is where I lose momentum and start pulling my hair out. The cover letter builder doesn’t write the letter for me, but it gives me a structured starting point with my experience already mapped to the job requirements. That’s usually enough to get past the blank-page paralysis.

And honestly, it’s just fun building tools for these models. Simple, locally built tools that are a little more deterministic than a skills document. Same spirit as the devdocs RAG server — I’m learning how these things work by building them.

What I’m learning

  • More practice standing up MCP servers, this time in TypeScript with stdio transport
  • How to structure profile data so tools can do useful things with it (manifest + sections approach)
  • Web scraping with Playwright for the company research piece — DuckDuckGo search, Glassdoor, company sites
Check it out