resume-mcp

resume-mcp

MCP server that exposes a resume as callable tools and resources, enabling AI agents to query experience, skills, projects, and contact information via natural language.

Category
Visit Server

README

resume-mcp

My resume, as a single source of truth with three faces:

  • a website for humans,
  • a local (stdio) MCP server for AI agents on your machine,
  • a hosted (HTTP) MCP server any remote client can connect to,

all reading one resume.json and one shared search function, so nothing drifts.

Live:

  • Website: https://surya-resume-site.suryakapila.workers.dev
  • Hosted MCP endpoint: https://surya-resume-site.suryakapila.workers.dev/mcp

The point is the shape, not the size: a typed boundary, validated arguments, predictable payloads. The same backend systems I build every day.


Layout

resume.json          <- the single source of truth (JSON Resume schema)
shared/search.ts     <- searchBySkill(resume, skill), imported by every artifact
server-local/        <- stdio MCP server (Claude Desktop, Claude Code)
site/                <- React Router v7 site + hosted /mcp endpoint, on Cloudflare Workers

Everything reads the one resume.json and the one shared/search.ts, so the data and the tool logic can never drift between artifacts.

Tools: get_summary · get_section (work | education | skills | projects) · search_by_skill Resource: resume://full (application/json)


1. Local MCP server (stdio)

Exposes the resume as callable tools instead of prose.

Build & run

npm install
npm run build          # tsc -> dist/server-local/src/index.js
npm start              # runs the stdio server

Connect to Claude Desktop

Add to claude_desktop_config.json, then fully quit and reopen Claude Desktop:

{
  "mcpServers": {
    "resume": {
      "command": "node",
      "args": ["/absolute/path/to/resume-mcp/dist/server-local/src/index.js"]
    }
  }
}

Then ask your own Claude, e.g. "use the resume server to search for Kafka".


2. Hosted MCP endpoint (HTTP)

Live at https://surya-resume-site.suryakapila.workers.dev/mcp (Streamable HTTP). It exposes the same tools and resource as the local server, reads the same resume.json + shared/search.ts, and needs no clone and no key. It runs as a Durable Object (site/workers/mcp.ts) mounted into the site Worker.

Connect it from any MCP client:

  • Claude (Desktop or web): Settings, then Connectors, then Add custom connector, and paste the URL.
  • Claude Code:
    claude mcp add --transport http resume https://surya-resume-site.suryakapila.workers.dev/mcp
    
  • Anything else: add an MCP server with the Streamable HTTP transport and the URL. Opening the URL in a browser shows a short explainer page, not the raw protocol.

3. The website

An editorial one-pager (the "Classical" design system) that renders from resume.json and documents the MCP servers.

cd site
npm install
npm run dev            # http://localhost:5173  (hot reload)
npm run build          # production build
npm run deploy         # build + wrangler deploy  (needs `wrangler login` first)

The site's /resume.json route serves the repo-root resume.json verbatim, no copy, so the download, the page and the MCP servers always agree.


Surya Prakash Rao Kapila, Hyderabad, India.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured