Sanctions Check

io.github.chomkaevanPublished by GitHub account chomkaevanv1.1.0Updated Nov 14, 2026

Screen crypto wallets and names against US Treasury OFAC sanctions lists. Pay per call via x402.

The publisher's own server: check.tattoo: tattoo size and placement guide

VerifiedStreamable HTTPWeb executableFinanceSecurity & Monitoring

Overview

AI-generated overview

Screens crypto wallet addresses and person or company names against US Treasury OFAC sanctions lists, with per-call payment via x402.

What you can do
  • Check a crypto wallet address against OFAC sanctions lists across Bitcoin, Ethereum/EVM, USDT, USDC, Tron, Litecoin, Monero and Solana
  • Screen a person, company, vessel or aircraft name against the OFAC SDN and Consolidated lists, including aliases, returning no_match, potential_match or strong_potential_match
  • Inspect which OFAC lists are loaded, entry and wallet counts, and last refresh time (free)
When to use it
Useful before paying an unknown counterparty, onboarding a customer or wallet, accepting funds, or signing with a supplier, when you want a quick sanctions screening step inside an assistant workflow.
Requirements
Remote Streamable HTTP endpoint; no account or API key. Paid tools are billed per call in USDC via x402, so the client needs x402 payment support or a wallet holding USDC on Base. The free list-status tool works without payment.
Before you install
Paid calls cost money per request ($0.002 for wallet checks, $0.003/$0.005 for name screening), so repeated calls add up. Screening results are informational and not a substitute for formal compliance review. The README's wallet setup asks for a private key; use a dedicated low-balance wallet rather than a main one.

Installation

In SourceWeft

  1. Open Sanctions Check in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.chomkaevan%2Fsanctions-check/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "sanctions-check": {
      "type": "http",
      "url": "https://public-domain-check-production.up.railway.app/sanctions/mcp"
    }
  }
}

README

Public Domain Check: MCP server

Is this book, film, song or artwork in the US public domain, and when does it enter it? This MCP server answers that question for AI agents. It's backed by:

  • 2.38 million US Copyright Office registrations (1923–1977)
  • 434,000 renewal records, linked to their registrations
  • the US copyright term rules

Paid tools cost a few cents per call, paid in USDC through x402. There's no account or API key.

Tools

ToolPriceWhat it does
check_public_domain$0.01 (brief) / $0.02 (full)Returns the status (public domain, likely public domain, in copyright, or undetermined), the public-domain date, the confidence, a one-line reason and the record IDs. Full mode adds the complete reasoning and records. Includes HathiTrust's reviewer verdict when one exists; pass countries for the UK, EU, Canada, Australia, Japan, China or India. For 1923–1977 books, a title is enough.
check_public_domain_batch$0.0075 per work (brief) / $0.015 (full)Checks up to 50 works per call. Local wrapper only.
search_copyright_renewals$0.01Shows who renewed a work's copyright and when, which usually points to the rightsholder.
copyright_rules_for_yearfreeTells you which rule applies to a publication year, and whether a record lookup is needed.
public_domain_dayfreeLists what enters the US public domain on January 1.
check_wallet_sanctions$0.002Checks whether a crypto wallet is on the US Treasury (OFAC) sanctions lists (Bitcoin, Ethereum/EVM, USDT, USDC, Tron and more). Use it before paying an unknown wallet.
screen_sanctions_name$0.003 / $0.005Screens a person, company, vessel or aircraft name against the OFAC SDN and Consolidated lists, including aliases and spelling variants.
check_property_risk$0.02 / $0.04One-call natural hazard report for a US address: overall risk and what drives it, FEMA flood zone and insurance requirement, seismic risk, ratings for 18 hazards from FEMA's National Risk Index, and federal disaster declarations in the county since 2000.

You're never charged when a request is invalid or the service needs more information.

Brief answers by default. check_public_domain returns a short answer: the status, the date, the confidence, a one-line reason, and the record IDs. That's about 80% fewer tokens for your agent to read. For the complete reasoning and records ($0.02), pass format: "full" (local wrapper) or call check_public_domain_full (remote MCP).

Use it

Claude Desktop, Cursor, Windsurf, and other MCP clients

Add this to your MCP config:

json
{  "mcpServers": {    "public-domain-check": {      "command": "npx",      "args": ["-y", "public-domain-check-mcp"],      "env": {        "WALLET_PRIVATE_KEY": "0x...",        "MAX_PRICE_PER_CALL": "0.25"      }    }  }}
  • WALLET_PRIVATE_KEY is the private key of a wallet that holds a little USDC on Base. Use a dedicated wallet with a few dollars in it, not your main wallet.
  • Without a key, the free tools still work.
  • MAX_PRICE_PER_CALL is a hard cap, in US dollars, enforced on your machine. The wrapper refuses any call that costs more.

Agents with built-in x402 support

These include @x402/mcp, Coinbase AgentKit, and other x402-aware frameworks. Connect to the remote URL above. Paid tools return an x402 payment request, and your client pays it and retries.

Example answer

json
{  "status": "in_copyright",  "confidence": "high",  "public_domain_date": "2035-01-01",  "reasoning": [    "Published 1939; works published 1929–1963 needed a renewal filed in the 28th year (1966–1967) ...",    "Found the original registration A125939 (1939-02-06) and its renewal R399023 (1966-12-12)."  ],  "registration": {    "renewal": {      "id": "R399023",      "claimants": [{ "name": "Helga Greene", "role": "executor" }]    }  }}

Data and limits

  • Sources: US Copyright Office records from the Catalog of Copyright Entries, plus renewal records. Both were transcribed by the New York Public Library and released under CC0.
  • Coverage: US law in full, plus term rules for the UK, EU, Canada, Australia, Japan, China and India (pass countries). The answers are informational, not legal advice.

License

MIT

Source: README.md at commit b2235a7

Tools

3

check_wallet_sanctions

Check a crypto wallet against OFAC sanctions

Check whether a crypto wallet address is on the US Treasury OFAC sanctions lists. Call this before paying an unknown counterparty, onboarding a wallet, or accepting funds. Covers Bitcoin, Ethereum/EVM, USDT, USDC, Tron, Litecoin, Monero, Solana and more; refreshed every 12 hours. Costs $0.002 (x402, USDC on Base).

Parametersaddressrequired

screen_sanctions_name

Screen a name against OFAC sanctions lists

Screen a person, company, vessel or aircraft name against the US Treasury OFAC SDN and Consolidated sanctions lists, including aliases. Use before onboarding a customer, paying a supplier or signing a counterparty. Returns no_match, potential_match or strong_potential_match with the best candidate and a one-line reason. Costs $0.003 (x402, USDC on Base).

Parametersnamerequiredtype

sanctions_list_status

Sanctions list status (free)

Free. Which OFAC lists are loaded, how many entries and wallet addresses, and when they were last refreshed.

Takes no parameters.

Version history

2
  1. v1.1.0LatestNov 14, 2026
  2. v1.0.0Nov 14, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Check integrations