mcpField
S
SightRadar

SightRadar

Remote
sightradar.comSearch0Updated 1d ago

About SightRadar

SightRadar is a face-recognition MCP server for assistants that need to index event photos and search for a person using a selfie. It supports hosted and local connections, batch jobs, webhooks, and account and billing tools.

Key features

  1. 01Index photos and search faces from a selfie
  2. 02Batch photo indexing and matching
  3. 03Collection and photo management
  4. 04Webhook creation and failure replay
  5. 05Credit, usage, and billing tools

Use cases

  1. 01Find a person across an event photo collection
  2. 02Index a large set of photo URLs as a batch
  3. 03Review failed batch jobs or webhook deliveries
  4. 04Check account credit balance and usage

MCP support

SightRadar exposes face search, indexing, batch, webhook, deletion, and account tools to MCP clients. It can connect through a hosted endpoint or a local server, with configurable tool scopes.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://mcp.sightradar.com/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Packages
npmsightradar-mcp0.1.0

Tools

Details

From the project README

SightRadar — Face Recognition API

SightRadar MCP Server

Face recognition for AI assistants. Index event photos, find every photo a person appears in from one selfie, run batches, manage webhooks and billing, all from Claude, ChatGPT, Cursor, VS Code or any MCP client.

npm version License: MIT Documentation


There are two ways to connect. Both expose the same tools.

Remote (hosted)Local (this package)
URL / commandhttps://mcp.sightradar.com/mcpnpx -y sightradar-mcp
Sign-inSightRadar account (email + password, Google or email link), or an API key as a Bearer tokenSIGHTRADAR_API_KEY
InstallNothingNode.js 20+
Images from your computerNo (URLs or base64)Yes, file_path

Remote server (recommended)

Add https://mcp.sightradar.com/mcp as a custom connector. On first use your browser opens sightradar.com, you sign in and choose what the assistant may do. Each connection gets its own revocable key, listed under API keys as MCP: <app name>.

  • Claude (claude.ai, Desktop): Settings → Connectors → Add custom connector → paste the URL.
  • ChatGPT: Settings → Apps & Connectors → Create → paste the URL, authentication OAuth.
  • Claude Code: claude mcp add --transport http sightradar https://mcp.sightradar.com/mcp
  • Cursor (~/.cursor/mcp.json) / VS Code (.vscode/mcp.json, key servers):
    { "mcpServers": { "sightradar": { "url": "https://mcp.sightradar.com/mcp" } } }
    

Prefer an API key? Send it as a header instead of signing in:

{
  "mcpServers": {
    "sightradar": {
      "url": "https://mcp.sightradar.com/mcp",
      "headers": { "Authorization": "Bearer frs_your_key" }
    }
  }
}

Local server

Create an API key at sightradar.com/dashboard/keys, then:

{
  "mcpServers": {
    "sightradar": {
      "command": "npx",
      "args": ["-y", "sightradar-mcp"],
      "env": { "SIGHTRADAR_API_KEY": "frs_your_key" }
    }
  }
}

That block works in Claude Desktop (claude_desktop_config.json), Cursor, Windsurf, Cline and most clients. Claude Code:

claude mcp add sightradar --env SIGHTRADAR_API_KEY=frs_your_key -- npx -y sightradar-mcp
VariableDefault
SIGHTRADAR_API_KEY(required)API key
SIGHTRADAR_SCOPESread,search,write,deleteWhich tool groups to expose. all adds account; read gives a read-only server.
SIGHTRADAR_FILE_ROOTSyour home folderFolders file_path may read (separated by : on macOS/Linux, ; on Windows). none turns file_path off.
SIGHTRADAR_BASE_URLhttps://api.sightradar.comAPI base URL
SIGHTRADAR_TIMEOUT_MS120000Per-request timeout
SIGHTRADAR_DEBUGunsetLog each tool call (no arguments or results) to stderr

Tools

Credits: 100,000 credits = US$1. Every billable tool states its price in its description, and accepts an idempotency_key so a retry is never charged twice.

read — free

Tool
list_collectionsCollections with photo, face and selfie counts; search and paging
get_collectionOne collection's status and counts (verify recounts from the vector store)
get_deletion_statusProgress of a collection deletion
list_batches / get_batch / get_batch_photosBatch jobs, status (one or up to 5000 at once) and per-photo results
list_webhooks / list_webhook_failuresWebhook endpoints and dead-lettered deliveries
get_balance / get_usageCredit balance; usage summary, daily series or storage

search — spends credits, stores nothing

ToolCredits
search_faces93Find every photo in a collection containing the person in a selfie (or an embedding)
search_by_point_id62Repeat a registered selfie's search without re-sending it
detect_faces93Faces, bounding boxes and quality in an image
compare_faces93 per imageAre two faces the same person?

write — spends credits / stores data

ToolCredits
index_photo93Store a photo's faces in a collection
register_selfie93Store a person's selfie; returns its point id and embedding
submit_batch62 per photoUp to 1000 photo URLs, index or match, processed in the background
requeue_failed_batch_photos62 per photoRetry failed batch photos (preview, then execute)
create_collection / recreate_collectionfree
create_webhook / replay_webhook_failuresfreeSigned deliveries for batch and deletion events

delete — free

Tool
delete_collectionSoft delete with a 7-day restore window by default; immediate or compliance erase permanently
restore_collectionUndo a soft delete
delete_photo / restore_photoRemove or restore one photo's faces
delete_webhookStop deliveries to an endpoint

account — free, off by default on the local server

Tool
list_api_keys / create_api_key / revoke_api_keyAPI keys
get_profile / update_profileName and organization
get_billing_settings / update_auto_recharge / get_invoiceAuto-recharge, orders and invoice PDFs
get_notification_settings / update_notification_settings / manage_notification_recipientEmail alerts and extra recipients
list_team_membersOrganization members
Prompts and resources

Clients that show MCP prompts (Claude's "+" menu, / commands) get three ready-made workflows:

PromptWhat it does
find_person_in_eventChecks the balance, searches a collection with a selfie and lists the matching photos
index_event_photosPicks index_photo or submit_batch by photo count and states the cost before starting
account_healthBalance, recent usage, failed batch photos and failed webhook deliveries

Resources: sightradar://docs/pricing-and-limits (credits per operation, rate limits, image and deletion limits) and sightradar://collections/{collection_id} (one collection's counts, needs the read scope).

Images

Image tools take exactly one of:

  • image_url: a public http(s) URL. SightRadar downloads it, so it must be reachable from the internet.
  • gcs_key: an object key on the CDN configured for your account.
  • image_base64: the bytes as base64 or a data: URL. The remote server accepts up to 10 MB; the local server up to 30 MB.
  • file_path (local server only): a JPEG, PNG, WebP, GIF, BMP, TIFF or HEIC file inside SIGHTRADAR_FILE_ROOTS.

Files and base64 data are checked to be real images before anything is uploaded.

Example prompts

  • "Create a collection called wedding-2026-10 and index every photo in ~/Pictures/wedding."
  • "Here is a selfie of Priya: which photos in wedding-2026-10 is she in?"
  • "Submit these 600 photo URLs as a batch into marathon-7 and tell me when it's done."
  • "How many credits did I spend this week, and on what?"
  • "Delete the test-event collection." (The assistant confirms first, and the delete can be undone for 7 days.)

Safety

  • Tools carry MCP annotations (readOnlyHint, destructiveHint), so clients can ask before destructive calls.
  • Deletes are soft by default. Permanent erasure needs immediate or compliance to be set explicitly.
  • Scopes limit what a connection can do. A read-only connection cannot spend credits or change data.
  • The local server reads files only inside SIGHTRADAR_FILE_ROOTS, after resolving symlinks, and only image files.
  • API errors come back as tool results with the error code, a hint and the request id, never as stack traces.

Troubleshooting

You seeMeaning
401 / unauthorizedThe API key was revoked or mistyped. Create a new one at sightradar.com/dashboard/keys; remote connections: reconnect.
402 / insufficient_creditsTop up at sightradar.com/dashboard/billing.
409 / duplicate_request_already_processedThat idempotency_key was already used and charged; the earlier call succeeded.
file_path ... is outside the folders this server may readAdd the folder to SIGHTRADAR_FILE_ROOTS (:-separated on macOS/Linux, ; on Windows).
429Over 50 requests/s per key or 10 in flight per account. Wait and retry.

Development

npm install
npm test          # unit tests against a mocked API
npm run build
SIGHTRADAR_API_KEY=frs_... node scripts/smoke.mjs   # free live calls over stdio

createSightRadarServer({ api, scopes }) and TOOLS are exported for embedding the same tools in another host.

Links

MIT licensed.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.