Miramo
French rental law for tenants and landlords: rent caps, rental zones and unfurnished lease drafts.
Description from the maker (original English)
Screen eleven sanctions/export-control lists; resolve GLEIF entities offline. Screening aid.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
MCP_LOG_LEVEL, SANCTIONS_MIRROR_PATH, SANCTIONS_FUZZY_MIN_SCOREYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://sanctions-screening.caseyjhand.com/mcpOpen Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"sanctions-screening": {
"command": "npx",
"args": [
"-y",
"@cyanheads/sanctions-screening-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"SANCTIONS_MIRROR_PATH": "your-value",
"SANCTIONS_FUZZY_MIN_SCORE": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http sanctions-screening https://sanctions-screening.caseyjhand.com/mcpclaude mcp add sanctions-screening --env MCP_LOG_LEVEL=your-value --env SANCTIONS_MIRROR_PATH=your-value --env SANCTIONS_FUZZY_MIN_SCORE=your-value -- npx -y @cyanheads/sanctions-screening-mcp-serverFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"sanctions-screening": {
"url": "https://sanctions-screening.caseyjhand.com/mcp"
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"sanctions-screening": {
"command": "npx",
"args": [
"-y",
"@cyanheads/sanctions-screening-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"SANCTIONS_MIRROR_PATH": "your-value",
"SANCTIONS_FUZZY_MIN_SCORE": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"sanctions-screening": {
"type": "http",
"url": "https://sanctions-screening.caseyjhand.com/mcp"
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"sanctions-screening": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/sanctions-screening-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"SANCTIONS_MIRROR_PATH": "your-value",
"SANCTIONS_FUZZY_MIN_SCORE": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://sanctions-screening.caseyjhand.com/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
MCP_LOG_LEVEL envSANCTIONS_MIRROR_PATH envSANCTIONS_FUZZY_MIN_SCORE envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.
sanctions_screen_nameScreen a name (person, company, vessel, aircraft) against loaded sanctions and export-control watchlists — OFAC SDN + Consolidated, EU, UK, UN, and the six BIS/State CSL lists — alias- and fuzzy-aware. Check sanctions_list_sources for coverage before interpreting an empty result;
sanctions_screen_identifierLook up an identifier — a vessel IMO number, a SWIFT/BIC code, a digital-currency wallet address, a passport or national ID number, or any other identifier a list publishes — against all loaded sanctions watchlists at once: OFAC SDN + Consolidated, EU, UK, and UN. Exact match aft
sanctions_get_designationFetch the full record for one sanctions designation by source list + entry ID or the list's published reference number — the drill-in after sanctions_screen_name or sanctions_screen_identifier surfaces a candidate, or the lookup for a reference a notice cites (UN QDe.004, EU EU.2
sanctions_list_sourcesList supported watchlists (OFAC SDN + Consolidated, EU, UK, UN, BIS Entity/Denied Persons/Unverified/Military End User, State ITAR Debarred/Nonproliferation) and GLEIF datasets with current mirrored counts, source URLs, licenses, readiness, and as-of timestamps. coverageNotice na
sanctions_resolve_entityResolve a company or organization name (with an optional jurisdiction: a country code, which includes its subdivisions, or an ISO 3166-2 subdivision code) to candidate GLEIF Legal Entity Identifiers (LEIs), ranked. This turns a free-text counterparty name into a stable global ide
sanctions_get_entityFetch 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 a sanctions cross-reference against all loaded watchlists. The cross-r
sanctions_trace_ownershipTrace a paged GLEIF Level 2 ownership segment from a 20-character LEI (use sanctions_resolve_entity to obtain one). Direction both walks parents and children separately from the root, never sideways into siblings or co-parents; parents-side placement wins cycles. Ultimate-parent
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry name was verified with the GitHub account cyanheads, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 174 ms (HTTP 200)
No sign-in needed
Read 7 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (0.6.0) reached the registry 7 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Miramo, Private Law Wiki, Gerro: госзакупки для ИИ / Russian public procurement
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
French rental law for tenants and landlords: rent caps, rental zones and unfurnished lease drafts.
Sourced answers, search and bank-case assessment for wiki.private.law by the Mothership runtime.
Госзакупки РФ в ИИ-чате: поиск, обеспечения, документы. Russian public procurement for AI chats.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
@cyanheads/sanctions-screening-mcp-server Screen names against eleven OFAC, EU, UK, UN, BIS, and State sanctions and export-control lists and resolve legal entities against GLEIF, matched offline over a local SQLite + FTS5 mirror. A screening aid, not a compliance determination. 7 Tools • 4 Resources • 1 Prompt
Public Hosted Server: https://sanctions-screening.caseyjhand.com/mcp
Sanctions and export-control screening over eleven lists plus the GLEIF LEI registry, matched offline against a local mirror. Screen a name or identifier for potential watchlist hits, resolve a company to its LEI, and trace its accounting-consolidation relationships.
| Source codes | Lists |
|---|---|
ofac_sdn, ofac_consolidated | OFAC SDN and Consolidated |
eu, uk, un | EU, UK Sanctions List, UN Security Council |
bis_el, bis_dpl, bis_uvl, bis_meu | BIS Entity, Denied Persons, Unverified, Military End User |
state_dtc, state_acn | State ITAR Debarred, Nonproliferation Sanctions |
The six BIS/State lists come from trade.gov's keyless Consolidated Screening List (CSL) bulk download. Treasury CSL copies are skipped; direct OFAC provenance and grouping remain unchanged.
[!IMPORTANT]
A screening aid, not a compliance determination. Every result is a potential match with a transparent score and source provenance, never a verdict. A hit is a candidate to verify against the official source; an empty result is never a clearance. Sanctions compliance needs human review and a qualified determination. This server feeds that process and does not perform it.
| Tool | Description |
|---|---|
sanctions_screen_name | Screen a person, company, vessel, or aircraft name against every loaded watchlist at once |
sanctions_screen_identifier | Look up an IMO number, SWIFT/BIC code, wallet address, or passport or national ID number exactly across every loaded watchlist |
sanctions_get_designation | Fetch the full record for one designation by source list and entry ID or published reference number |
sanctions_resolve_entity | Resolve a company name, optionally within a jurisdiction, to ranked GLEIF LEI candidates |
sanctions_get_entity | Fetch the GLEIF Level 1 record for an LEI, with a sanctions cross-reference of its names, LEI, and registration number |
sanctions_trace_ownership | Trace an LEI's parents and children, optionally cross-referencing every entity in the graph |
sanctions_list_sources | List the loaded sources with record counts, licenses, and mirror freshness |
| Resource | Description |
|---|---|
sanctions://designation/{source}/{entryId} | One sanctions designation by source and entry ID or published reference number |
sanctions://entity/{lei} | One GLEIF Level 1 entity by LEI |
sanctions://sources | Loaded sources with counts, plus each mirror's readiness and as-of timestamp |
skill://sanctions-screening-guide/SKILL.md | Consumer guide for identity confirmation, ownership continuation, and screening uncertainty |
The three sanctions:// data resources are also reachable through the tools, for clients that don't surface resources. The guide is also published in the plugin, npm package, and bundle under skills/sanctions-screening-guide/.
| Prompt | Description |
|---|---|
sanctions_vet_counterparty | Run a counterparty due-diligence pass: screen, resolve, trace ownership, summarize |
sanctions_screen_name toolname in any script (at most 64 words and 1,024 characters) plus optional sources, entityType, and minScore filters; matchMode is strict (default) or fuzzy. Strict runs a fuzzy pass over each selected list it finds nothing on: a full pass when it finds nothing on any list, otherwise one that adds, after the strict hits, only candidates covering every word of the name other than legal forms, articles and other function words, and the jurisdiction codes uk, usa, uae, and rf. fuzzySources names the lists a fuzzy pass searched; up to 100 hits per page (limit, default 25) with offsetsource, sourceEntryId, the list's published referenceNumber where it has one, matchedName with its matchedNameType, and matchType (exact / strong / approximate); approximate hits add the raw Jaro-Winkler score (0–1) and queryTokenCoveragesources names every selected list a hit's party is on. OFAC publishes a party on the SDN List and a non-SDN list under one entry ID in both of its files; with both OFAC lists selected that party is one hit, counted once, naming both even when the screen matched one record. Its other fields, the designation date included, come from the source record: ofac_sdn, unless the Consolidated record matched alone or bettertotalAvailable, hasMore, and nextOffset page the rest, and paging reaches every match counted; totalAvailableBasis marks the count exact (strict matched on every selected list) or a lower_bound (a fuzzy pass ran), and a notice asks for a more distinctive word when a list's fuzzy candidate pool reached its budgetsanctions_screen_identifier toolvalue (an identifier as you hold it) plus optional type (any default, imo, swift_bic, digital_currency_address, passport, national_id) and sources- . / are ignored; an IMO number matches with or without its IMO prefix; a SWIFT/BIC compares on its first eight characters, so a branch BIC11 matches its institution's BIC8; a wallet address folds case only for hex (0x…), bech32 (bc1…, ltc1…, bnb1…), and cashaddr encodings, while base58 addresses compare exactlytype matches on each list's published label: imo is OFAC Vessel Registration Identification, UK IMO Number, and EU IMO (vessel identification); swift_bic is SWIFT/BIC and SWIFT BIC; digital_currency_address is OFAC Digital Currency Address - ; passport and national_id cover the lists' passport and national-ID labels. any also reaches every label with no category (MMSI, call signs, tail numbers, tax and registration numbers, email, websites)matchedIdentifiers that matched as published and its sources, an OFAC party on both OFAC lists being one hit naming both; not paged. An identifier a list prints only in free-text remarks, or bundled with other numbers in one field, does not matchsanctions_get_designation toolsource (one of the eleven codes above) and entryId: the sourceEntryId from a screening hit, or the reference number the list publishes (UN QDe.004, EU EU.27.28, UK OFSI Group ID 14196). Matched trimmed and case-insensitive, entry ID first; a reference number two designations share fails as reference_ambiguous, naming both. CSL records retain the provider's opaque id; missing entity type remains unknownreferenceNumber beside sourceEntryId where the list publishes one; OFAC publishes none, its entry ID being its published number1952-10-07, 1946-08, 1938, or an interval such as 1955/1957), with circa: true where the source marks one approximate; designationDate is the source's own designation date as YYYY-MM-DDofac_sdn, the non-SDN lists for ofac_consolidated, earliest first. A party on both files can carry a different date on eachlegalBasis is the instrument the list cites, verbatim: OFAC's legal-basis references (Executive Order 14024 (Russia)), the EU regulation title (2024/1488 (OJ L27052024)), or the UK regime's regulations (The Russia (Sanctions) (EU Exit) Regulations 2019), several joined with ; . The UN list publishes nonefeatures carries what a list publishes to describe the party rather than identify it, each typed with the list's own label, in published order: OFAC's vessel flag, type, owner, and tonnage, aircraft model, operator, and manufacture date, title, gender, and sanctions notes (Secondary sanctions risk: See Section 11 of Executive Order 14024.), and the UK list's ship details (CurrentBelievedFlagOfShip, TypeOfShip, YearBuilt, …). A date is ISO 8601 at published precision, with circa: true where OFAC marks it approximate. The EU and UN lists contribute none, and no screening tool matches a feature value. CSL features also retain published restrictions, order flags, end dates, country, notices, and provenance URLs without legal interpretation.sanctions_resolve_entity toolname in any script (same bound as sanctions_screen_name) plus optional jurisdiction, status, and minScore; matchMode is strict (default), which falls back to a fuzzy pass only when strict finds nothing, or fuzzy; up to 50 candidates per page (limit, default 10) with offsetjurisdiction is a country code, which matcheOnly the beginning is shown; read the rest in the repo