Skip to main content
Thirdwatchthirdwatch

Thirdwatch MCP docs

The Thirdwatch MCP server gives any agent — Claude, Cursor, Claude Code, or your own — a uniform set of 14 high-level tools for jobs, candidates, companies, products, real estate, reviews, and India compliance. Pay per result in credits; no integration glue.

  • One endpoint: https://mcp.thirdwatch.dev/mcp
  • 14 tools across 6 clusters (Account / Talent / Competitive / Business / Ecommerce / Real estate)
  • Credit-based — 1 credit ≈ $0.01. Tool calls cost 1–26 credits depending on how heavy the underlying search is.
  • 100 free credits on every new account.

Setup

The MCP server speaks the standard Model Context Protocol over HTTP. Any MCP-compatible client works. Configurations for the three most common ones:

Claude Desktop

Edit your Claude Desktop config file, restart the app, and "thirdwatch" appears in the Tools menu.

json
// claude_desktop_config.json
// macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
// Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "thirdwatch": {
      "url": "https://mcp.thirdwatch.dev/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_THIRDWATCH_KEY"
      }
    }
  }
}

Cursor

Drop the JSON below in either the project-scoped or global config. Cursor picks it up on next reload.

json
// .cursor/mcp.json (project) or ~/.cursor/mcp.json (global)
{
  "mcpServers": {
    "thirdwatch": {
      "url": "https://mcp.thirdwatch.dev/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_THIRDWATCH_KEY"
      }
    }
  }
}

Claude Code

One command. Use --scope user to make it available across every project.

bash
# Add to Claude Code (user scope, available everywhere)
claude mcp add --transport http --scope user thirdwatch \
  https://mcp.thirdwatch.dev/mcp \
  --header "Authorization: Bearer YOUR_THIRDWATCH_KEY"

# Verify it loaded
claude mcp list

For other clients, point them at https://mcp.thirdwatch.dev/mcp with an Authorization: Bearer … header. The server speaks JSON-RPC 2.0; all standard MCP methods work (tools/list, tools/call).

Auth & keys

Every request needs your Thirdwatch key in the Authorization header.

  • Generate a key by signing up at /pricing. Each account gets one key on creation; you can rotate it from the dashboard.
  • Treat keys like passwords. Don't commit them; load from environment variables or a secrets manager.
  • Rate limits are per-key. Default is 60 requests per minute per key, plenty for interactive agents. Talk to support for higher limits.
  • Compromised key? Rotate from the dashboard or email support. The old key dies immediately on rotation.

Credits & billing

  • 1 credit ≈ $0.01 on the Free tier. Larger packs lower the effective rate.
  • Each tool call costs 1–26 credits depending on how many sources it queries — see the tool reference below.
  • Failed calls aren't billed. If the call errors before returning data, no credits are deducted.
  • Credits never expire. Buy them once, spend them when you need them.
  • Check balance any time with the free get_account_info tool, or the dashboard.

Pricing detail and credit packs: /pricing.

Calling tools (raw protocol)

If you're building your own MCP client (no Claude/Cursor), the wire format is JSON-RPC 2.0. Discover tools with tools/list then call them with tools/call.

json
// JSON-RPC over HTTP — what your client sends to https://mcp.thirdwatch.dev/mcp
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "search_jobs",
    "arguments": {
      "query": "senior product designer",
      "location": "Bangalore",
      "max_results": 25
    }
  },
  "id": 1
}

The response wraps the result in an MCP content block. Each tool's input shape is published in its inputSchema (visible via tools/list); see the reference below for what each one does.

Tool reference

All 14 tools, grouped by cluster. Credit costs are minimum–maximum ranges; use estimate_cost to get the exact price for specific arguments.

Account · 3

Free utility tools. Always available regardless of balance.
professional_search
0
Natural-language router. Picks the best tool for the request.
estimate_cost
0
Preview the credit cost of a tool call before running it.
get_account_info
0
Balance, plan, and usage history.

Talent · 3

Hiring intelligence — jobs, candidates, employees.
search_jobs
8–21
Cross-source job search. tier='lite' for 5 sources, 'full' for 14.
search_candidates
3
Find profiles by skills, seniority, location.
get_company_employees
3
Employees of a company; pass title_filter for decision-makers.

Competitive · 2

Cross-validated competitive intelligence.
competitive_snapshot
13–15
8-source company brief: reviews + jobs + employees + news.
brand_sentiment
4
Sentiment + alerts across Trustpilot, Reddit, Yelp, news.

Business · 3

Local + B2B business data, with India routing built-in.
search_businesses
1–3
Local business search; country='IN' adds JustDial+IndiaMart.
verify_business
1–2
GST + Maps cross-check for a single business.
enrich_company
4–6
Reviews + employer ratings for one company.

Ecommerce · 1

Multi-marketplace product intelligence.
search_products
6–8
Cross-marketplace product search across 5 sources.

Real estate · 2

Property listings + market analytics.
search_properties
8
Listings across multiple property portals.
analyze_property_market
6
Median, p25, p75, counts, optional rent-yield.

Errors

Errors come back as standard JSON-RPC error objects. The data field always carries a type tag you can switch on.

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "error": {
    "code": -32602,
    "message": "Insufficient credits",
    "data": {
      "type": "insufficient_credits",
      "balance": 12,
      "required": 18
    }
  }
}
insufficient_credits
Top up at /pricing or wait for the next pack.
invalid_arguments
Check the tool's inputSchema; common cause is a wrong location code.
rate_limited
Slow down. Default is 60 req/min/key. Retry with backoff.
upstream_unavailable
A source we depend on is throttling. Retry in ~30s.
unauthorized
Bad or revoked key. Rotate and update your client config.
internal_error
Our fault — auto-paged. Safe to retry.

Example prompts

Drop these into Claude or Cursor with the MCP connected. The agent picks the right tool; you don't need to name it.

Recruiting

"Find 25 senior backend engineers in Berlin who've worked at a Series-B fintech in the last 2 years."

Sales / RevOps

"Give me decision makers at the top 10 D2C brands hiring for marketing in Mumbai right now."

B2B SaaS CI

"Track Linear vs Asana vs ClickUp — pulls reviews, hiring signals, employee growth, and recent news into one brief."

Ecommerce

"Compare iPhone 17 prices across Amazon, Flipkart, and Noon UAE. Flag any unit selling >10% below median."

Real estate

"Show 2BHK rentals in Indiranagar Bangalore under ₹50K/mo with rent-yield estimates."

Compliance (India)

"Verify GST 27AAACT2727Q1ZP and cross-check the registered address with Google Maps."

Support

Bugs, custom contracts, missing tool, or a tool that's behaving oddly? support@thirdwatch.dev — we read every message.