Offendersearch MCP Server
Enables searching all US sex-offender registries from any MCP client, returning scored, de-duplicated records with provenance and per-registry status.
README
Offendersearch MCP Server
Search all 58 US sex-offender registries — every US state, DC and the territories — from any MCP client: Claude Desktop, Claude Code, or any agent runtime that speaks the Model Context Protocol.
One tool call returns scored, de-duplicated, provenance-tagged records from a
continuously updated national dataset with 100% US coverage. Built on the official
Python mcp SDK (FastMCP).
Tools
| Tool | What it does |
|---|---|
search_offenders |
Search every registry for one person/location — name, DOB, age, city/state/ZIP, street address, GIS radius, or free text. Returns scored matches with per-registry outcome (sourceStatus) and plain-language warnings. |
batch_search |
Up to 1,000 lookups in one call, row-in/row-out, each through the same engine as a single search. |
get_registry_coverage |
The public coverage catalog: every registry code, scope, legal status and health. No API key needed. |
Results carry matchConfidence, matchBasis (why it matched), DOB verification
state, aliases, addresses, offense detail, and a per-source citation with
lastCheckedAt — so an agent can cite exactly which registry said what.
Auth — an API key, free to get
Create a key at offendersearch.app — it works immediately: 25 free searches, no card required.
- Local (stdio): set
OFFENDERSEARCH_API_KEY. - Remote (streamable-HTTP): each request forwards its own
X-API-Keyheader — multi-tenant by design.
Quick start (Claude Desktop, local stdio)
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
claude_desktop_config.json:
{
"mcpServers": {
"offendersearch": {
"command": "python",
"args": ["/path/to/services/mcp-server/server.py"],
"env": { "OFFENDERSEARCH_API_KEY": "os_live_..." }
}
}
}
Remote / self-hosted (streamable-HTTP)
MCP_TRANSPORT=streamable-http OFFENDERSEARCH_API_KEY="os_live_..." python server.py
# or: uvicorn server:http_app (see Dockerfile)
Client config for a hosted instance (per-request key, no env secret):
{
"mcpServers": {
"offendersearch": {
"url": "https://<your-host>/mcp",
"headers": { "X-API-Key": "os_live_..." }
}
}
}
Example exchange
User: Is a John Doe, born 1980-04-12, on any registry in New Jersey?
Agent →
search_offenders(first_name="John", last_name="Doe", dob="1980-04-12", state="NJ")Agent: One candidate matched with a full date-of-birth confirmation (
dobVerification: dob_match, confidence 1.0): John A. Doe, registered in NJ, with the official registry record linked. All 58 registries were searched to completion (sourcesIncomplete: 0).
Reading results responsibly
- If
counts.sourcesIncomplete > 0, the records are a lower bound — relaywarnings[0]rather than reporting a clean "no match". - A match is a candidate, not an identification — verify DOB and photograph.
- Results are public-record data and not a consumer report; do not use them for FCRA-covered decisions without appropriate process.
More
- API docs: https://offendersearch.app/docs
- OpenAPI: https://offendersearch.app/openapi.json
- MCP page: https://offendersearch.app/mcp-server
Offendersearch resources
- Sex offender registry search — search every US registry from one dashboard, free tier included
- Sex offender statistics by state — ranked counts and per-1,000-resident rates for all 56 US jurisdictions
- Open data downloads — free aggregate CSVs (by state and by city)
- Background check API documentation — REST reference, normalized record schema, quickstarts
- State registry guides — how each state's registry works and how to search it
- MCP server guide — hosted endpoint, Claude Desktop and ChatGPT connector setup
- API pricing — metered, $0.15 per call, volume tiers
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.