Skip to main content
Glama
offendersearch

Offendersearch MCP Server

Official

Offendersearch MCP Server

Search all 58 US sex-offender registries — every state, DC, the US territories, the tribal registries and the national NSOPW source — 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-Key header — 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?

Agentsearch_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 — relay warnings[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

Offendersearch resources

-
license - not tested
Not graded
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Checks whether a name is on the FBI Most Wanted list, for compliance and AML due diligence. Platform

  • Identity resolution MCP server for phone/email lookups across 31+ services. Global + India coverage.

  • OpenSanctions MCP — Global sanctions and PEP data (free, no auth required)

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/offendersearch/mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server