JobGPT MCP Server

The official MCP server for JobGPT — auto apply & search jobs, generate and manage custom tailored resumes, and track applications directly from Claude, Cursor, Windsurf, and any MCP-compatible AI tool.

What You Can Do

Ask your AI assistant things like:

  • "Find remote senior React jobs paying over $150k"
  • "Auto-apply to the top 5 matches from my job hunt"
  • "Generate a tailored resume for this Google application"
  • "Apply to this job for me - <job_url from company website, greenhouse workday or linkedin, etc>"
  • "Show my application stats for the last 7 days"
  • "Find recruiters for this job and draft an outreach email"

The MCP server connects your AI assistant to the full JobGPT platform — 34 tools covering job search, applications, resumes, outreach, and more.

Quick Start

There are two ways to connect, depending on your AI tool:

  • Browser login (recommended) — no API key, no JSON, no Node.js. Just add the server URL and sign in to 6figr in your browser. Works with Claude Desktop, Claude Code, Codex CLI (codex mcp login), and ChatGPT Web (Developer Mode).
  • API key — for the ChatGPT Desktop app, Cursor, Windsurf, Cline, Continue, and manual config. Paste a key into the tool's config.

Get an API Key (only for the API-key method)

  1. Go to 6figr.com/account
  2. Scroll to MCP Integrations
  3. Click Generate API Key
  4. Copy the key (starts with sk_)

The browser-login method does not need this — it fetches your key for you after you sign in.


Setup by Client

Claude Desktop

Recommended — browser login (no API key, no JSON):

  1. Open Settings → Connectors → Add custom connector
  2. Name it JobGPT and enter the URL https://mcp.6figr.com/mcp
  3. Click Connect — your browser opens a 6figr sign-in page
  4. Sign in and click Approve. Done — the JobGPT tools appear in Claude.

No terminal, no config file, no Node.js. This uses OAuth, so your API key never touches Claude's config — Claude gets a scoped token instead.

Alternative — API key via mcp-remote (for older Claude Desktop builds that don't show Connectors; requires Node.js 18+):

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "jobgpt": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.6figr.com/mcp",
        "--header",
        "Authorization:${AUTH_HEADER}"
      ],
      "env": {
        "AUTH_HEADER": "Bearer your-api-key-here"
      }
    }
  }
}

Claude Code (CLI)

Recommended — browser login (no API key): add the server, then authenticate in your browser:

claude mcp add jobgpt -t http -u https://mcp.6figr.com/mcp

Then run /mcp inside Claude Code, select jobgpt → Connect, and sign in to 6figr when the browser opens. Claude Code stores a scoped OAuth token — no API key needed.

Option A: One-liner with an API key (claude mcp add):

claude mcp add jobgpt -t http -u https://mcp.6figr.com/mcp --header "Authorization: your-api-key-here"

Option B: Edit settings.json manually

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "jobgpt": {
      "type": "http",
      "url": "https://mcp.6figr.com/mcp",
      "headers": {
        "Authorization": "your-api-key-here"
      }
    }
  }
}

Codex CLI (ChatGPT)

Recommended — browser login (no API key): add the server, then authenticate in your browser:

codex mcp add jobgpt --url https://mcp.6figr.com/mcp
codex mcp login jobgpt

codex mcp login opens a browser to sign in to 6figr and approve access; Codex stores a scoped OAuth token (OAuth 2.1 + PKCE). No API key needed.

Alternative — API key via header:

codex mcp add jobgpt --url https://mcp.6figr.com/mcp --header "Authorization: Bearer your-api-key-here"

ChatGPT

ChatGPT connects two different ways depending on where you add the server:

ChatGPT Desktop app — API key. Open Settings → Connectors → Advanced/Developer → Connect to a custom MCP and fill in:

  • Name: JobGPT
  • Type: Streamable HTTP
  • URL: https://mcp.6figr.com/mcp
  • Headers → Add header: Key Authorization, Value Bearer your-api-key-here

The desktop dialog authenticates by header (there's no browser-login button), so use your sk_ key here. Leave the env-var fields blank.

ChatGPT Web (Developer Mode) — browser login (OAuth). On the web app, enable Settings → Connectors → Advanced → Developer mode, then Add custom connector, name it JobGPT, and enter the URL https://mcp.6figr.com/mcp. ChatGPT runs the OAuth flow: sign in to 6figr in the popup and approve. No API key needed. (Developer mode is available on Plus, Pro, Business, Enterprise, and Edu plans.)

Cursor

Go to Settings > MCP > Add new MCP server, or add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "jobgpt": {
      "type": "http",
      "url": "https://mcp.6figr.com/mcp",
      "headers": {
        "Authorization": "your-api-key-here"
      }
    }
  }
}

Windsurf

Go to Settings > Cascade > MCP > Add Server > Add custom server, or add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "jobgpt": {
      "type": "http",
      "url": "https://mcp.6figr.com/mcp",
      "headers": {
        "Authorization": "your-api-key-here"
      }
    }
  }
}

Cline (VS Code)

Open the Cline MCP settings in VS Code and add:

{
  "mcpServers": {
    "jobgpt": {
      "type": "http",
      "url": "https://mcp.6figr.com/mcp",
      "headers": {
        "Authorization": "your-api-key-here"
      }
    }
  }
}

Continue (VS Code / JetBrains)

Add to your Continue config (~/.continue/config.yaml):

mcpServers:
  - name: jobgpt
    type: http
    url: https://mcp.6figr.com/mcp
    headers:
      Authorization: "your-api-key-here"

Alternative: Run Locally

If you prefer to run the server on your machine (requires Node.js 18+):

{
  "mcpServers": {
    "jobgpt": {
      "command": "npx",
      "args": ["-y", "jobgpt-mcp-server"],
      "env": {
        "JOBGPT_API_KEY": "your-api-key-here"
      }
    }
  }
}

Available Tools

Job Search

Tool Description
search_jobs Search jobs with filters — titles, locations, companies, skills, salary, remote, H1B sponsorship
match_jobs Get new job matches from a saved job hunt (only unseen jobs)
get_job Get full details of a specific job posting

Profile & Salary

Tool Description
get_profile View your profile — skills, experience, work history, education
update_profile Update name, headline, location, skills, experience
get_salary Get your current compensation details
update_salary Update base salary, stocks, bonus, target salary
get_currencies List supported currencies (for salary updates)
get_credits Check your remaining credits balance

Job Hunts

Tool Description
list_job_hunts List your saved job hunts with credits balance
create_job_hunt Create a new job hunt with search filters and auto-apply settings
get_job_hunt Get details of a specific job hunt
update_job_hunt Update filters, auto-apply mode, daily limits, status

Applications

Tool Description
get_application_stats Aggregated stats — counts by status, auto-apply metrics
list_applications List applications filtered by job hunt or status
get_application Get full application details
update_application Update status or notes
apply_to_job Trigger auto-apply for an application
add_job_to_applications Save a job from search results to your applications
import_job_by_url Import a job from any URL (LinkedIn, Greenhouse, Lever, Workday, etc.)

Resume

Tool Description
list_resumes List your uploaded resumes
get_resume Get resume details and download URL
delete_resume Delete an alternate resume
upload_resume Upload a resume from URL (PDF, DOC, DOCX)
list_generated_resumes List AI-tailored resumes created for applications
get_generated_resume Get a generated resume's download URL
generate_resume_for_job Generate an AI-optimized resume for a specific application
calculate_match_score Calculate resume-to-job match score with skill analysis

Outreach

Tool Description
get_job_recruiters Find recruiters associated with a job
get_job_referrers Find potential referrers at a company
get_application_recruiters Get recruiters for a saved application
get_application_referrers Find referrers for a saved application
list_outreaches List your sent outreach emails
send_outreach Send an outreach email to a recruiter or referrer

Environment Variables

Variable Required Default Description
JOBGPT_API_KEY Yes Your API key from 6figr.com/account
JOBGPT_API_URL No https://6figr.com API base URL
DEBUG No false Enable debug logging to stderr

Troubleshooting

"JOBGPT_API_KEY environment variable is required"

Your API key isn't being passed to the server. Make sure it's in the env block of your MCP config.

Tool calls failing with "API Error (401)"

Your API key is invalid or expired. Generate a new one at 6figr.com/account.

"You have run out of credits"

Some operations (auto-apply, resume generation) consume credits. Purchase more at 6figr.com/jobgpt.

Server not appearing in your AI tool

  1. Make sure Node.js 18+ is installed (node --version)
  2. Restart your AI tool after editing the config file
  3. Try running manually to check for errors: JOBGPT_API_KEY=your-key npx jobgpt-mcp-server

Debug mode

Add "DEBUG": "true" to your env config to see detailed API request/response logs in stderr.

Development

git clone https://github.com/6figr-com/jobgpt-mcp-server.git
cd jobgpt-mcp-server
npm install
cp .env.example .env   # add your API key

npm run dev:local       # run stdio server locally
npm run build           # compile TypeScript
npm run dev:worker      # run Cloudflare Worker locally
npm run deploy          # deploy to Cloudflare Workers

Testing with MCP Inspector

npx @modelcontextprotocol/inspector

License

MIT

Links