What is MCP?
The Model Context Protocol (MCP) is a standard that lets LLM-powered tools connect to external services. Instead of being limited to the built-in chat UI, you can use any MCP client to interact with your resumes.Prerequisites
Create an API key
Follow the Using the API guide to create an API key in your Reactive Resume dashboard.
Install Node.js
The MCP server requires Node.js version 18 or later.
Running the MCP server
The server is a single TypeScript entry point and is run with tsx (no build step). From the repository root:node_modules (and thus @modelcontextprotocol/sdk) is resolved. Configure your MCP client with cwd set to the repo path.
Configuration
Claude Desktop
Add the following to yourclaude_desktop_config.json:
Replace
/path/to/reactive-resume with the actual path to your cloned repository, and your-api-key with the API key you created.Cursor
Add the following to.cursor/mcp.json in your project or home directory:
Available Tools
The MCP server exposes three tools:| Tool | Description |
|---|---|
list_resumes | List all your resumes with their IDs, names, tags, and status |
get_resume | Get the full data of a specific resume by ID |
patch_resume | Apply JSON Patch operations to modify a resume |
Available Resources
| Resource | Description |
|---|---|
resume://{id} | The full resume data as a readable JSON resource |
resume://schema | The ResumeData JSON schema for understanding the data structure |
Usage Examples
Once your MCP client is connected, you can use natural language to interact with your resumes:Browsing
- “List my resumes”
- “Show me my resume named ‘Software Engineer’”
- “What skills are listed on my resume?”
Editing
- “Update my name to Jane Doe”
- “Change my headline to Senior Software Engineer”
- “Add TypeScript to my skills with an Advanced proficiency level”
- “Add a new experience entry for my role as Staff Engineer at Acme Corp from Jan 2024 to Present”
- “Remove the third item from my skills section”
Styling
- “Change the template to bronzor”
- “Set the primary color to blue”
- “Hide the interests section”
Self-Hosting
If you’re running a self-hosted Reactive Resume instance, setREACTIVE_RESUME_URL to your instance URL:
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
REACTIVE_RESUME_API_KEY | Yes | — | API key from Reactive Resume settings |
REACTIVE_RESUME_URL | No | https://rxresu.me | Base URL of the Reactive Resume instance |
TRANSPORT | No | stdio | Transport mode: stdio or http |
PORT | No | 3100 | Port for streamable HTTP transport |
Troubleshooting
| Issue | Solution |
|---|---|
| ”REACTIVE_RESUME_API_KEY is required” | Set the REACTIVE_RESUME_API_KEY environment variable in your MCP client configuration |
| ”API error (401)“ | Your API key is invalid or expired. Create a new one in the dashboard |
| ”API error (404)“ | The resume ID doesn’t exist. Use list_resumes to find valid IDs |
| ”API error (403)“ | The resume is locked. Unlock it in the Reactive Resume dashboard |
| Connection refused | Check that REACTIVE_RESUME_URL is correct and the instance is running |
| Module not found / Cannot find package | Ensure cwd is the repository root so the main project’s node_modules is used |