screening

OFAC and global sanctions screening: crypto addresses, emails, websites, IDs, countries, VPN, geo

Should I use this

Quality & Safety

A
Description quality
98%
Schema completeness
72%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~903Tokens (tool definitions)
~660 BTypical response size
Moderate attention impact (0.71% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "screening": {
      "url": "https://api.compliapi.com/mcp"
    }
  }
}

Remote endpoints

https://api.compliapi.com/mcpstreamable-http

What it can do

Tool inventory

Tools (8)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢screen_crypto_address(address, lists)

Screen a crypto address on any chain (or an ENS name, e.g. vitalik.eth) across the enabled sanctions and crime lists. `lists`: optional comma-separated list slugs.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string"
    },
    "lists": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "address"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "additionalProperties": true
}
🟢screen_email(email, lists)

Screen an email address across the enabled sanctions and crime lists. `lists`: optional comma-separated list slugs.

Input Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string"
    },
    "lists": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "email"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "additionalProperties": true
}
🟢screen_website(website, lists)

Screen a website or domain across the enabled sanctions and crime lists. `lists`: optional comma-separated list slugs.

Input Schema

{
  "type": "object",
  "properties": {
    "website": {
      "type": "string"
    },
    "lists": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "website"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "additionalProperties": true
}
🟢screen_government_id(government_id, lists)

Screen a government-issued ID (passport, tax ID, …) across the enabled lists (fuzzy matching). `lists`: optional comma-separated list slugs.

Input Schema

{
  "type": "object",
  "properties": {
    "government_id": {
      "type": "string"
    },
    "lists": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "government_id"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "additionalProperties": true
}
🟢screen_country(country, lists)

Check whether a country or region carries sanctions designations (OFAC-curated today). `lists`: optional comma-separated list slugs.

Input Schema

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string"
    },
    "lists": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "country"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "additionalProperties": true
}
🟢screen_pep(name, birth_date, country)

Screen a person's name against the OpenSanctions PEP (politically exposed persons) dataset. Returns scored candidates; `pep` is true when any candidate clears the 0.7 match threshold. `birth_date` (YYYY-MM-DD, or partial) and `country` (name or ISO code) sharpen matching.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "birth_date": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "country": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "additionalProperties": true
}
🟢detect_vpn(ip_address)

Detect whether an IP address is using a VPN.

Input Schema

{
  "type": "object",
  "properties": {
    "ip_address": {
      "type": "string"
    }
  },
  "required": [
    "ip_address"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "additionalProperties": true
}
🟢geolocate_ip(ip_address)

Geolocate an IP address and flag whether it is in a sanctioned country.

Input Schema

{
  "type": "object",
  "properties": {
    "ip_address": {
      "type": "string"
    }
  },
  "required": [
    "ip_address"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "additionalProperties": true
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded8 tools
verifiedversion not recorded8 tools