io.github.scka-de/opensanctions-mcp

Official registry AI and agents

Sanctions screening and PEP checks via OpenSanctions API for AI agents

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package opensanctions-mcp
Claude Code
claude mcp add opensanctions-mcp -e 'OPENSANCTIONS_API_KEY=<your opensanctions_api_key>' -e 'OPENSANCTIONS_API_URL=<OPENSANCTIONS_API_URL>' -- npx -y opensanctions-mcp@0.1.1
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "opensanctions-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "opensanctions-mcp@0.1.1"
            ],
            "env": {
                "OPENSANCTIONS_API_KEY": "<your opensanctions_api_key>",
                "OPENSANCTIONS_API_URL": "<OPENSANCTIONS_API_URL>"
            }
        }
    }
}

Environment variables

  • OPENSANCTIONS_API_KEY required secret OpenSanctions API key. Get a free key at https://www.opensanctions.org/api/
  • OPENSANCTIONS_API_URL API URL. Defaults to https://api.opensanctions.org. Set to your self-hosted yente URL if applicable.

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. opensanctions-mcp
  2. Quick Start
  3. Tools
  4. Configuration
  5. Self-hosted yente
  6. Development
  7. License

opensanctions-mcp

MCP server for sanctions screening and PEP checks via the OpenSanctions API.

Lets AI agents (Claude, Cursor, Windsurf, GPT) screen persons and companies against 320+ sanctions and PEP lists from OFAC, EU, UN, UK HMT, and more.

Disclaimer: This tool provides informational data only. It is not legal or compliance advice. Always verify matches with official sources before taking action.

Quick Start

Add to your MCP client config:

{
  "mcpServers": {
    "opensanctions": {
      "command": "npx",
      "args": ["-y", "opensanctions-mcp"],
      "env": {
        "OPENSANCTIONS_API_KEY": "your-key-here"
      }
    }
  }
}

Get a free API key at opensanctions.org/api.

Where to add this config
  • Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
  • Cursor: Settings > MCP Servers
  • Windsurf: ~/.windsurf/config.json

Tools

search_entities

Search the OpenSanctions database by name or keyword.

"Search for entities named Viktor Bout"
"Find companies related to Iran sanctions"
match_entity

Screen a person or company against sanctions and PEP lists using structured properties. This is the primary screening tool.

"Screen Viktor Bout, born 1967-01-13, Russian national, against sanctions lists"
"Check if Acme Corp is on any EU sanctions list"
get_entity

Fetch complete details for a specific entity, including relationships to other entities (companies, associates, family members).

"Get full details for entity NK-2Ciy8EG7jz1YHMGCxYLb25"
list_datasets

List available sanctions and PEP datasets. No API key required.

"What sanctions lists are available?"
"Show me EU-related datasets"
get_dataset

Get details about a specific dataset (publisher, entity count, last updated). No API key required.

"Tell me about the OFAC SDN list"
investigate_entity

Run a full compliance investigation in one call: match, fetch details, map relationships, and return structured data.

"Investigate Viktor Bout for sanctions exposure"
"Run a compliance check on Acme Corp, jurisdiction Belgium"

Configuration

Environment VariableRequiredDefaultDescription
OPENSANCTIONS_API_KEYYes*—API key for the hosted OpenSanctions API. Get one at opensanctions.org/api.
OPENSANCTIONS_API_URLNohttps://api.opensanctions.orgAPI URL. Set to your self-hosted yente instance.
OPENSANCTIONS_DATASETNodefaultDataset to screen against. default includes all 320+ sources.
OPENSANCTIONS_MAX_RETRIESNo3Max retries for failed API calls.
DEBUGNo—Set to any value to enable debug logging.

*Not required for list_datasets, get_dataset, or when using a self-hosted yente instance without auth.

Self-hosted yente

If you run your own yente instance, point the server at it:

{
  "mcpServers": {
    "opensanctions": {
      "command": "npx",
      "args": ["-y", "opensanctions-mcp"],
      "env": {
        "OPENSANCTIONS_API_URL": "http://localhost:8000"
      }
    }
  }
}

No API key needed for self-hosted yente.

Development

git clone https://github.com/scka-de/opensanctions-mcp.git
cd opensanctions-mcp
npm install
npm test          # run tests (fixtures, no API key needed)
npm run build     # compile to dist/
npm run dev       # run in dev mode
npm run lint      # check code style

License

MIT

Frequently asked questions

What is io.github.scka-de/opensanctions-mcp?

Sanctions screening and PEP checks via OpenSanctions API for AI agents

How do I install io.github.scka-de/opensanctions-mcp?

It runs on your machine. In Claude Code: claude mcp add opensanctions-mcp -e 'OPENSANCTIONS_API_KEY=<your opensanctions_api_key>' -e 'OPENSANCTIONS_API_URL=<OPENSANCTIONS_API_URL>' -- npx -y opensanctions-mcp@0.1.1. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.scka-de/opensanctions-mcp need an API key?

Yes. It expects OPENSANCTIONS_API_KEY, which you set in its configuration.

Is io.github.scka-de/opensanctions-mcp open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.scka-de/opensanctions-mcp?

It is published by scka-de. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.