OffenderSearch
For AI agents · Model Context Protocol · private beta

The background check MCP server for Claude, Cursor and agents

Connect Claude and any Model Context Protocol client to sex offender data from 58 US registries. Agents get safe, scored, source-tagged search tools over the full dataset — no custom integration code.

Private beta. The server is built and the tools below are final, but the hosted endpoint is not yet open to self-serve signups. Create an account and ask us for MCP access, or use the REST API today. $0.15 a call, same as REST.

// claude_desktop_config.json
{ "mcpServers": { "offendersearch": {
    "url": "https://mcp.offendersearch.app",
    "headers": { "X-API-Key": "os_live_••••" } } } }

→ tools/call
{ "name": "search_offenders", "arguments": { "firstName": "Jordan",
  "lastName": "Sample", "dob": "1980-04-12" } }

← result · 0.41 s
{ "status": "complete", "counts": { "sourcesIncomplete": 0 },
  "records": [ { "matchState": "dob_match", "matchConfidence": 0.98,
    "source": { "code": "NJ", "recordUrl": "https://…" } } ] }

Connect an MCP client to OffenderSearch in one config block

Once you have beta access, point your MCP client at the server URL with your API key and the tools become available to the model immediately.

{
  "mcpServers": {
    "offendersearch": {
      "url": "https://mcp.offendersearch.app",
      "headers": { "X-API-Key": "os_live_••••" }
    }
  }
}
  • Scored, de-duplicated results the model can reason over
  • Registry tools: search_offenders, batch_search, get_registry_coverage
  • Map API tools: map_viewport, map_area, map_route, map_group, map_open_record
  • Per-source provenance the agent can cite
  • Same metered pricing as the REST API

The tools the MCP server exposes Eight tools, each one metered like a REST call.

ToolWhat it doesBilling
search_offendersSearch all 58 US registries by name, date of birth or age, address, ZIP or a latitude/longitude radius. Returns the same scored, de-duplicated, cited records as the REST API.$0.15 a call ($0.11 past 2,000 a month)
batch_searchUp to 1,000 people in one call — one row in, one scored row out — for agents working through a roster, an applicant list or a volunteer sign-up sheet.One metered search per row
get_registry_coverageThe catalog of every US registry we cover, with its scope, legal status and health, so an agent can say what it searched before it says what it found.Free, no key required
map_viewportWhat to draw for one map view, sent as a bounding box or a centre and radius, with an optional zoom and housing or street-address filters. Clusters when zoomed out, pins closer in, names close up.One map request ($2.00 per 1,000 map requests)
map_groupThe people behind a pin that stands for several people at one address, or for an approximate area, one page at a time.One map request per page
map_areaThe same answer a map view gets, for a drawn polygon or a buffered line instead of a box.One map request ($2.00 per 1,000 map requests)
map_routeCounts per leg and per stop along a walking or bus route, with pins and distances but no names. A count shows registered addresses near the route, not where anyone is.Route units, each one map request: 1 map request per started mile of corridor, plus 1 per 10 stops
map_open_recordThe complete record behind one marker id or saved record reference. Opening the same marker again is free.One record open ($0.035 per record opened)

The five map_ tools use the sex offender map API, which an account turns on separately. $2.00 per 1,000 map requests and $0.035 per record opened, with a $300 monthly minimum applied toward usage. A pin shows a registered address, not a person's current location.

In practice

What an AI agent can do with registry search One question, one tool.

Someone asks the agentWhat it calls
“Is John Doe, born April 12 1980, on any sex offender registry?”search_offenders with name and dob — one person, one scored answer with its citation.
“Check these 40 volunteers before Saturday’s event.”batch_search over the list, returning a row per volunteer the agent can summarise.
“Who is registered within a mile of 123 Main St, Springfield?”search_offenders with a radius, returning registrants and their distances.
“Which registries did you actually check for Texas?”get_registry_coverage — the agent cites the sources instead of guessing.
“How many registered addresses are in this part of Columbus, and who is at this pin?”map_viewport for the view, then map_open_record for the one marker the user picks.

The tools sit on top of the sex offender search API, so anything an agent does can be reproduced with a plain HTTP call. The open-source client and setup notes are on GitHub. Building your own tool definition instead? See AI integration.

Under the hood

How the MCP server answers a registry question Four steps, one metered search.

  1. 01

    The client lists tools

    Your MCP client connects with your API key and sees the tools with their input schemas.

  2. 02

    The model picks one

    A person, a list or a location becomes search_offenders or batch_search; a coverage question becomes get_registry_coverage; a map view becomes map_viewport.

  3. 03

    The search runs

    The same search as the REST API, metered the same way, across the 58 US registries.

  4. 04

    Results with provenance

    Scored records with match state, per-source status and the official registry link for the model to cite.

Prompting

Instructions to give a registry search agent Rules for the system prompt.

Put rules like these in the system prompt of any agent that uses the tools.

  • Ask for a date of birth or age before searching when the user has one; it is the difference between a strong match and a namesake.
  • Report the match state with every record, in plain words.
  • If any registry did not answer, say the result is incomplete instead of saying “no match”.
  • Always give the official registry link, and tell the user to confirm there before acting.
  • Do not use results to decide on hiring, housing or credit; say those decisions need an FCRA-regulated report.
Compare

MCP server vs calling the REST API from your own tool Same results, same billing.

MCP serverYour own tool definition
AvailabilityPrivate beta, by requestAvailable today with any API key
SetupOne config block in an MCP clientWrite a schema and a handler
Toolssearch_offenders, batch_search, get_registry_coverage, map_viewport, map_area, map_route, map_group, map_open_recordWhatever you define
BillingSame as REST: $0.15 a call, $0.11 past 2,000 a month; map tools at Map API pricesSame
Best forClaude and other MCP clientsAny tool-calling model or agent framework

Building your own? Start with the tool schema on AI integration.

Access

How to request MCP beta access Three steps.

  1. 01

    Create an account

    Sign up and get 25 free searches, no card.

  2. 02

    Ask for access

    Contact us with the client you use and what your agent will do.

  3. 03

    Connect

    Add the server URL and your API key to your MCP client config.

Request MCP access · REST API quickstart

Compared

Background check MCP servers compared: Checkr’s hosted server and this one Theirs reads reports; ours runs searches.

From the published docs, read 2026-10-27. Their pages are the authority on their product.

Checkr MCP (docs.checkr.com/mcp)OffenderSearch MCP
HostingHosted by Checkr: mcp.checkr.com, Streamable HTTP; a staging hostOpen source; run it locally over stdio or deploy the Streamable HTTP server; hosted endpoint in private beta
AuthOAuth dynamic client registration (Customer); OAuth client credentials (Candidate)Your API key in a header; os_test_ keys route to the sandbox
Toolsget_candidate, get_candidates_table, get_report (Customer); request_candidate_verification, verify_candidate_otp, get_report (Candidate)search_offenders, batch_search, get_registry_coverage; map_viewport, map_area, map_route, map_group, map_open_record
What a tool returnsReports the customer already ordered, with SSN, date of birth, address and record-level detail redactedThe search itself: scored, cited public records for a name, a list or a place
ClientsClaude (web and desktop), Claude Code, Cursor, VS Code; mcp-remote for stdio clientsAny MCP client that supports remote servers with custom headers, or stdio locally
BillingPackage terms per reportMetered like REST: $0.15 a call; batch per row; coverage free; map tools at Map API prices

A fuller comparison of the REST APIs is on the background check API page and the Checkr API alternative page.

AI background checks

AI background checks: what an agent should and should not do with these tools Five rules for the system prompt.

The tools make an agent’s answer checkable. The rules below keep it honest.

  • Cite the registry link on every record the agent mentions; the record is the evidence, the summary is not.
  • Say the match state in plain words. dob_match is an identification; a name-only match is a lead for a person to review.
  • If counts.sourcesIncomplete is above zero, say the search is incomplete; never say “no match”.
  • Never decide hiring, housing, credit or insurance from a tool result; those are FCRA decisions that run as orders through FCRA Partner Access.
  • Prefer a date of birth or an age before searching a common name, and use batch_search for a list rather than a loop of single calls.

Install and configuration for every client, the tool schemas and the server source are on GitHub; the MCP docs and agents guide go deeper. Where the server is listed: submitted to mcp.directory, mcpservers.org and the punkpeye awesome-mcp-servers list (Legal); the changelog records each listing as it goes live.

Background checks

A background check MCP server: what it covers today Registry tools now; criminal on the REST API.

For teams looking for a way to give an agent background check tools over the Model Context Protocol.

This MCP server gives an agent the sex offender registry part of a background check: search_offenders for one person or a location, batch_search for a list, and get_registry_coverage for what is covered. Results are the same scored, cited records the REST API returns.

Criminal records — jail, prison, court and warrant records — are available on the same key through the REST API at POST /v1/criminal/search. To give an agent both, pair this server with one function tool that calls that endpoint; the AI integration page shows the tool pattern, and the background check API page describes both layers.

An agent’s answer from these tools is a public-records lookup, not a consumer report, so it must not decide whether someone is hired or housed. Those decisions run as FCRA workflows through FCRA Partner Access.

Learn the API the tools call Every tool maps to a REST endpoint; these guides use those endpoints as the worked example.

RESTful API example ›One request and one response, line by line — this endpoint is the worked example.
API token example ›Create, scope, rotate and revoke a key; sandbox keys versus live keys.
Public API for testing ›A free sandbox with realistic records, every scenario documented.
Webhook example ›Receive, verify the signature and retry, in 40 lines of Express or FastAPI.
API errors ›HTTP status first, a machine code, a message you can act on — and our catalogue.
API key vs OAuth ›Why a server-to-server records API uses a key, and when OAuth is right.

All guides: Learn APIs by example · reference: developer docs · packages: SDKs and CLI.

Background check MCP server FAQ

What is the OffenderSearch MCP server?
An MCP (Model Context Protocol) endpoint that exposes our sex offender search across 58 US registries as a tool any MCP-compatible AI client — including Claude — can call, with scored, source-tagged results. It is built and in private beta; the hosted endpoint is not open to self-serve signups yet, so contact us for access.
Which tools does it expose?
Three registry tools: search_offenders (a name, DOB, location or radius search over all 58 US registries), batch_search (up to 1,000 queries in one call, one row in and one row out), and get_registry_coverage (the public catalog of every US registry we cover, with its scope, legal status and health — no API key required). The first two return the same normalized, provenance-tagged records as the REST API. And five Map API tools: map_viewport (what to draw for one map view), map_area (the same for a drawn polygon or a buffered line), map_route (counts per leg and per stop along a route), map_group (the people behind a many-people pin) and map_open_record (the complete record behind one marker).
Does the MCP server include criminal records?
The tools cover sex offender registry search, registry coverage and the Map API. Criminal records are available today through the REST API on the same key.
Which MCP clients work with it?
Any client that supports remote MCP servers with custom headers, including Claude. The server URL and your API key go in the client configuration.
Can I use the REST API while I wait for MCP access?
Yes. Every tool maps to a REST endpoint, so you can define your own tool today and switch to the MCP server later without changing the results your agent sees.
Can an agent access inmate and criminal records through MCP?
Not as MCP tools yet: the server exposes registry and map tools. Criminal records — jail bookings, prison custody, court cases and warrants — are on the same key through the REST API at POST /v1/criminal/search, and the AI integration page shows a one-function tool definition for it, so an agent can have both today.
What are AI background checks, and are they a consumer report?
An AI background check is an agent calling a records tool and summarising what it found. Through this server the tool returns scored, cited public records, and the citation is the point: the agent shows its sources instead of asserting. The result is a public-records lookup, not a consumer report, so an agent must never decide a hire, a tenancy or credit from it; those decisions run as FCRA orders through FCRA Partner Access.
How does this compare with Checkr’s MCP server?
From Checkr’s published docs (docs.checkr.com/mcp, read 2026-10-27): Checkr hosts a Customer MCP server at mcp.checkr.com with OAuth dynamic client registration, exposing get_candidate, get_candidates_table and get_report over reports the customer has already ordered, with SSN, date of birth, address and record-level detail redacted. Ours is open source, runs on your own API key, and the tools perform the search itself — a name, a list or a place in, scored and cited records out. Different jobs: theirs reads reports, ours runs searches.
How is it billed?
MCP tool calls are metered the same as REST API calls — $0.15 per call ($0.11 after 2,000/mo). A Regular search is the base rate; live re-verification adds $0.02 per completed source, capped at $2.00 a search. batch_search bills one metered search per row, not one per call. get_registry_coverage is free. The map tools are billed as the Map API, for accounts that have turned it on: $2.00 per 1,000 map requests and $0.035 per record opened, with a $300 monthly minimum applied toward usage.

Give your agent a registry search tool

25 free searches, no card. Ask for MCP access, or call the REST API from your own tool today.