mcpbeat Sign in

Sanctions Screening MCP Server

answering

Sanctions Screening MCP Server is answering right now. Last checked 11 min ago. 103 installs a week from npm. It exposes 6 tools. Last commit 25 Aug 2026.

Screen names against OFAC, EU, UK, UN sanctions lists; resolve entities via GLEIF. Screening aid.

Installs per day peak 163 · avg 21 · +85% w/w
a month agotoday
Uptime history 47 days of history · worst day 0%
47 days agonow
100.0%
Uptime 24h
91 of 91 checks
6
Tools
read from the server
326 ms
Response time
average over 24h
103
Installs / week
npm and PyPI

What changed 18

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 17 August 2026. No other catalogue keeps this.

25 Aug 6 tools changed the parameters they ask for sanctions_get_designation, sanctions_get_entity, sanctions_list_sources and 3 more
25 Aug a tool changed version
17 Aug 4 tool descriptions were rewritten6 times that day sanctions_get_entity, sanctions_resolve_entity, sanctions_screen_name and 1 more
17 Aug a tool changed version3 times that day
17 Aug 2 tools changed the parameters they ask for sanctions_resolve_entity, sanctions_screen_name
and 4 more, back to 17 August 2026

Nothing serious here today

Today is the operative word: we check Sanctions Screening MCP Server every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 11 min ago.

run in your terminal
claude mcp add sanctions-screening-mcp-server --transport http https://sanctions-screening.caseyjhand.com/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "sanctions-screening-mcp-server": {
      "url": "https://sanctions-screening.caseyjhand.com/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.sanctions-screening-mcp-server]
url = "https://sanctions-screening.caseyjhand.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "sanctions-screening-mcp-server": {
      "url": "https://sanctions-screening.caseyjhand.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "sanctions-screening-mcp-server": {
      "url": "https://sanctions-screening.caseyjhand.com/mcp"
    }
  }
}

This one needs environment variables set before it will start: MCP_HTTP_HOST (The hostname for the HTTP server.), MCP_HTTP_PORT (The port to run the HTTP server on.), MCP_HTTP_ENDPOINT_PATH (The endpoint path for the MCP server.), MCP_AUTH_MODE (Authentication mode to use: 'none', 'jwt', or 'oauth'.), MCP_LOG_LEVEL (Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').), SANCTIONS_MIRROR_PATH (Filesystem path for the local SQLite mirror; a persistent volume on a hosted deployment. All sources are keyless; no API key is required.), SANCTIONS_REFRESH_CRON (Cron for the scheduled refresh of the sanctions lists + name index (HTTP transport only). GLEIF deltas are refreshed manually via mirror:refresh.), SANCTIONS_FUZZY_MIN_SCORE (Default Jaro-Winkler similarity floor (0-1) for fuzzy matches when the caller omits minScore.), SANCTIONS_FUZZY_MAX_RESULTS (Hard cap on fuzzy candidates scored per query, to bound work on short queries.). The author declared them in the registry entry; get the values from the project itself.

Available tools 6

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

sanctions
sanctions_get_designation
Fetch the full record for one sanctions designation by source list + entry ID — the drill-in after sanctions_screen_name surfaces a candidate. Returns all published aliases, identifiers (passport/national-ID/tax), addresses, dates and places of birth, nationalities, sanctioning program, legal basis, and designation date. The record reflects exactly what the source published; missing fields mean the source omitted them. This is a screening aid — the designation record supports a compliance review, it is not itself a determination.
sanctions_get_entity
Fetch the full GLEIF Level 1 record for one LEI: legal name, other/trading names, legal and headquarters addresses, registration status, jurisdiction, registration authority and ID, and last-update date — plus any sanctions hits screened against the same legal name across all loaded watchlists. The screening cross-reference is a screening AID: a hit is a candidate to verify against the official source, and no hit is not a clearance. screeningStatus says whether that cross-reference actually ran — an empty sanctionsHits under not_ready means the sanctions mirror was unavailable, not that nothing matched. sanctionsScreen says whether the hit list is the whole set: it reports how many potential matches existed before the cap, so a capped cross-reference is distinguishable from a complete one. LEI must be a 20-character GLEIF identifier (18 alphanumerics + 2 check digits).
sanctions_list_sources
List the sanctions watchlists (OFAC SDN + Consolidated, EU, UK, UN) and GLEIF datasets currently loaded in the local mirror, each with its record count, source URL, license, and the mirror's readiness and as-of timestamp. Use this for provenance and freshness on any result — results are only as current as the last mirror refresh, and a not-ready mirror means screening cannot run yet. Attribution: UK data is under the Open Government Licence v3.0; all sources are cited here.
sanctions_resolve_entity
Resolve a company or organization name (with an optional ISO 3166-1 alpha-2 jurisdiction) to candidate GLEIF Legal Entity Identifiers (LEIs), ranked. This turns a free-text counterparty name into a stable global identifier that sanctions_get_entity and sanctions_trace_ownership key off. Strict mode (default) matches exact-normalized then all-tokens-present; fuzzy mode (or auto when strict is empty) adds Jaro-Winkler scoring labeled approximate with a raw 0–1 score plus the count of query tokens the matched name covers, which orders candidates that tie on score. Results are paged: totalAvailable and hasMore report candidates beyond the returned page, and nextOffset retrieves them. Returns potential matches to confirm against the GLEIF record — name resolution is a candidate ranking, not an authoritative identification.
sanctions_screen_name
Screen a name (person, company, vessel, aircraft) against all loaded sanctions watchlists at once — OFAC SDN + Consolidated, EU, UK, and UN — alias- and fuzzy-aware. Returns scored potential matches with the source list, sanctioning program, designation date, and the matched alias. Strict mode (default) matches exact-normalized then all-tokens-present; fuzzy mode (or auto when strict is empty) adds Jaro-Winkler and phonetic matching and labels hits approximate with a raw 0–1 similarity score plus the count of query tokens the candidate covers, which orders candidates that tie on score. Results are paged: totalAvailable and hasMore report matches beyond the returned page, and nextOffset retrieves them. This is a screening AID for a human/compliance review, NOT a compliance determination: a hit means "review this candidate against the official source," and an empty result never means "cleared."
sanctions_trace_ownership
Trace the GLEIF Level 2 corporate-ownership graph for an LEI: direct and ultimate parents and/or children, traversed breadth-first to a bounded depth, with relationship type for each edge. Set screenNodes to also screen every entity in the graph against all loaded watchlists — beneficial-ownership screening that resolves "is anyone in this ownership chain sanctioned." Each per-node screen is a screening AID: hits are candidates to verify, and an empty result for a node is not a clearance of that node. The response says what it could not do: complete/truncated/missingEntityLeis report whether the graph is the full known picture, screeningStatus reports whether the cross-reference actually ran, and each screened node reports whether its own hit list was capped. Requires a valid 20-character LEI (use sanctions_resolve_entity to obtain one).

Endpoints

URLTransportStateLatencyChecked
https://sanctions-screening.caseyjhand.com/mcp streamable-http answering 189 ms 11 min ago

Alternatives to Sanctions Screening MCP Server

same job, measured the same way
SanctionsAI
by kindrat86

OFAC sanctions screening for AI agents: screen names, wallets, entities against the SDN list.

3 tools answering
Sanctions Screening
by hatchloop

Screen a name or entity against OFAC SDN, the EU Consolidated list and the UK list.

8 tools answering
Sanctions Screening
by pipeworx-io

Screen names against the US Consolidated Screening List: OFAC SDN, BIS Entity List +10 more lists

38 tools answering
OFACScreen Sanctions Screening
by ofacscreen

Screen names against OFAC SDN and 7 more global sanctions lists. Free, no account required.

1 tools answering
Sanctions & PEP Screening
by macaroonnetwork

Screen a name in one call against US OFAC SDN, the EU Consolidated Financial Sanctions List, UK…

local only
Clearscreen
by lvsmanhole

Screen people & companies against 12 US sanctions & exclusion lists (OFAC, LEIE, SAM, Medicaid).

answering
Sanctionwise
by qinisolabs

Verified UK sanctions screening for AI agents — official FCDO UK Sanctions List, not guesses.

32 installs/wk local only
mcp-sanctions
by atomno-mcp

Sanctions/watchlist screening (RF, OFAC, EU, UK, UN) with confidence levels for KYC/AML.

404 installs/wk local only

Sanctions Screening MCP Server — questions

Answers built from our own checks of this server.

What can Sanctions Screening MCP Server do?
It exposes 6 tools, read directly from the server on our last check. Among them: sanctions_get_designation, sanctions_get_entity, sanctions_list_sources, sanctions_resolve_entity, sanctions_screen_name, sanctions_trace_ownership. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Sanctions Screening MCP Server working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 326 ms. The bar chart above shows every period we have measured.
How do I connect Sanctions Screening MCP Server?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Sanctions Screening MCP Server need an API key?
No. Sanctions Screening MCP Server completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 6 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Sanctions Screening MCP Server?
It answers our handshake in 326 ms on average, which is faster than 47% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.
How many people use Sanctions Screening MCP Server?
The npm package @cyanheads/sanctions-screening-mcp-server was installed 103 times in the last week. Week over week that is +85%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Sanctions Screening MCP Server open source?
Yes — it is published under the Apache-2.0 licence, written in TypeScript, 1 stars on GitHub and 9 open issues. The source link is on this page, so you can read exactly what it does with your data before you connect it.