Guides

MCP Integration

Prepzo is the first ATS with native Model Context Protocol (MCP) support. Connect AI agents, LLMs, and automation tools directly to your hiring pipeline.

What is MCP?

The Model Context Protocol is an open standard that lets AI models interact with external tools and data sources. Instead of building custom integrations for every AI tool, MCP provides a universal interface.

With Prepzo's MCP server, any MCP-compatible AI agent can list your open jobs, search candidates, move applications through your pipeline, schedule interviews, and pull analytics - all through natural language.

Quick Start

The MCP server is available at two endpoints:

  • POST /api/mcp - JSON-RPC 2.0 message endpoint
  • GET /api/mcp/sse - SSE transport (for streaming clients)

Both require Bearer token authentication (same API key as the REST API).

Initialize

curl -X POST https://prepzo.ai/api/mcp \
  -H "Authorization: Bearer pk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
      "protocolVersion": "2024-11-05",
      "clientInfo": { "name": "my-agent", "version": "1.0" }
    }
  }'

List Available Tools

curl -X POST https://prepzo.ai/api/mcp \
  -H "Authorization: Bearer pk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

Available Tools

ToolDescription
list_jobsList open jobs with optional status filter
get_jobGet detailed job info by ID
create_jobCreate a new job posting
list_candidatesList candidates with optional search
search_candidatesSearch by name, email, or tags
create_candidateAdd a new candidate
list_applicationsList applications with filters
move_applicationMove to a pipeline stage
reject_applicationReject with optional reason
schedule_interviewSchedule an interview
get_hiring_analyticsGet funnel metrics and time-to-hire
searchUnified search across all data

Call a Tool

curl -X POST https://prepzo.ai/api/mcp \
  -H "Authorization: Bearer pk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
      "name": "search_candidates",
      "arguments": { "query": "senior engineer" }
    }
  }'

SSE Transport

For streaming MCP clients, connect to the SSE endpoint:

# Connect to SSE (returns the message endpoint URL)
curl -N -H "Authorization: Bearer pk_live_YOUR_KEY" \
  https://prepzo.ai/api/mcp/sse

# Response (SSE stream):
# event: endpoint
# data: https://prepzo.ai/api/mcp

Use with Claude Desktop

Add Prepzo to your Claude Desktop MCP config:

{
  "mcpServers": {
    "prepzo": {
      "url": "https://prepzo.ai/api/mcp/sse",
      "headers": {
        "Authorization": "Bearer pk_live_YOUR_KEY"
      }
    }
  }
}

Use with OpenAI Agents

# Python with openai SDK
from openai import OpenAI

client = OpenAI()
response = client.responses.create(
    model="gpt-4o",
    tools=[{
        "type": "mcp",
        "server_label": "prepzo",
        "server_url": "https://prepzo.ai/api/mcp/sse",
        "headers": {"Authorization": "Bearer pk_live_YOUR_KEY"}
    }],
    input="Show me all open engineering jobs and their applicant counts"
)

Why MCP?

  • Universal: Works with any MCP-compatible AI tool
  • No custom code: AI agents can discover and use tools automatically
  • Natural language: "Find candidates who applied for the senior role last week"
  • Composable: Chain multiple tools together for complex workflows
  • Secure: Same Bearer token auth as the REST API