Sanctionlistcheck.com
Checks names against OFAC, UK, EU, UN and more sanctions lists; returns scored possible matches.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"sanctionlistcheck": {
"url": "https://sanctionlistcheck.com/mcp"
}
}
}Puntos de conexión remotos
https://sanctionlistcheck.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (4)
⚪screen_names(names, threshold, idempotency_key)
Audit-ready sanctions screening of 1 to 100 names against 10 official lists. The response includes a record id, the snapshot version, the data-as-of date for each source list, and the matching engine version. Each screened name costs one credit. Hits are candidates for human review and require further assessment.
Esquema de entrada
{
"type": "object",
"properties": {
"names": {
"type": "array",
"description": "A list of 1 to 100 names to be screened.",
"minItems": 1,
"maxItems": 100,
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The full name of a person or an entity, as written.",
"minLength": 1,
"maxLength": 200
},
"country": {
"type": "string",
"description": "An optional country context to refine the screening.",
"maxLength": 100
},
"dob": {
"type": "string",
"description": "An optional date of birth for a person, to refine the screening.",
"maxLength": 100
},
"type": {
"type": "string",
"description": "An optional type, either 'person' or 'entity', to refine the screening.",
"enum": [
"person",
"entity"
]
}
},
"required": [
"name"
],
"additionalProperties": false
}
},
"threshold": {
"type": "number",
"description": "An optional minimum score from 0.6 to 1; only hits at or above this score are returned.",
"minimum": 0.6,
"maximum": 1
},
"idempotency_key": {
"type": "string",
"description": "An optional key to prevent duplicate screenings. A retry with the same key within 24 hours returns the stored record and charges no credits.",
"minLength": 1,
"maxLength": 128,
"pattern": "^[\\x21-\\x7e]+$"
}
},
"required": [
"names"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"anyOf": [
{
"type": "object",
"required": [
"record_id",
"record_url",
"screened_at",
"snapshot_version",
"engine_version",
"sources",
"warnings",
"credits_charged",
"credits_remaining",
"results"
],
"properties": {
"record_id": {
"type": "string",
"description": "ULID. Fetch the record again with GET /v1/records/{id}."
},
"record_url": {
"type": "string"
},
"screened_at": {
"type": "string"
},
"snapshot_version": {
"type": "string"
},
"engine_version": {
"type": "string"
},
"sources": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"data_as_of"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"data_as_of": {
"type": [
"string",
"null"
],
"description": "When the source published the data in the screened snapshot. null when unknown; a warning then says so."
},
"attribution": {
"type": "string",
"description": "The licence credit of the source. Present only when the source's licence requires one (CA_SEMA, AU_DFAT)."
}
}
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
},
"description": "Provenance gaps, e.g. a source whose data-as-of is unknown."
},
"request_hash": {
"type": "string",
"description": "sha256 of the canonical request (names and threshold, keys sorted)."
},
"threshold": {
"type": "number"
},
"credits_charged": {
"type": "integer"
},
"credits_remaining": {
"type": "integer"
},
"payload_expires_at": {
"type": "string",
"description": "After this time the record keeps its metadata but no longer holds the names and hits."
},
"payload_status": {
"type": "string",
"enum": [
"available",
"expired",
"missing"
],
"description": "available on a fresh screen. On a replay, the same meaning as GET /v1/records/{id}: expired or missing when results is null."
},
"results": {
"oneOf": [
{
"type": "array",
"items": {
"type": "object",
"required": [
"input",
"hits"
],
"properties": {
"input": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"country": {
"type": "string",
"maxLength": 100,
"description": "Optional context. A country that agrees with the list entry raises reviewPriority to HIGH; it never hides a hit."
},
"dob": {
"type": "string",
"maxLength": 100,
"description": "Optional date of birth, ISO 8601. Same rule as country."
},
"type": {
"type": "string",
"enum": [
"person",
"entity"
],
"description": "Optional. Lowers the score of hits of the opposite type."
}
}
},
"hits": {
"type": "array",
"items": {
"type": "object",
"description": "One list entry that matched. Same fields as a row of the batch report's JSON export; the export row also has rowIndex, inputName, listDataAsOf, hitGroup, review and spreadsheetRow (the uploaded row's number as a spreadsheet app shows it, added 2026-10-05), and since 2026-10-06 contextCheck (ReportContextCheck), inputContext (ReportInputContext) and nameComparison (ReportNameComparison). In the export, reviewPriority is HIGH when the uploaded country or date of birth agrees with the list entry (since 2026-10-09, E2.4: a country that agrees does not make HIGH when contextCheck.dobGapOver2Years is true and every item of the uploaded country cell gives a country code). The CSV export has the same data in the columns name_comparison, words_that_match, country_check, country_your_file, country_list, dob_check, dob_your_file and dob_list, after spreadsheet_row. entityId, matchReasons and listEntry were added on 2026-10-03; records stored before that do not have them. Since 2026-10-07 a file whose rows hold several names (for example a student, an agent and a contact) is screened per name: the export row then has party (the name group, also the CSV column party), rowIndex is the name item (row x groups + group), and spreadsheetRow is the file row. Since 2026-10-07 each export row also has whyListed (the list's listing codes as [{code, plain, source}]: plain is the official programme name, or null when no official table names the code; source is the page that defines it, or null) and lookUp ({text, url}: where to look the list entry up). The CSV export has the same data in the columns why_listed, look_up and look_up_url. listing_reason keeps the raw code. Also since 2026-10-07, each export row has matchLabel (the report's words for the band and score, for example 'Strong name match (93%)'; band and score are unchanged) and alsoListedAs (the other names that matched the same listed person or entity in this row: only on the hit group's best match, [] on its other rows). These 2 keys are export-only: /v1 hits do not have them. Since 2026-10-09 (matcher 2.8) each export row also has mutualMismatch (true when the uploaded name and the list name each keep a word that pairs with nothing; false for matches screened before 2.8); export-only too. Since 2026-10-09 (E2.4) the batch report export differs from /v1/screen for the same match: /v1/screen hits keep the engine's band, score and reviewPriority (HIGH when the country or date of birth agrees), and the batch report export applies the date-of-birth cap and the HIGH change described here. Since 2026-10-09 (E2.4, QA PR #165) an uploaded date-of-birth or country cell where some item gives no reading and another does gives contextCheck.dobPartlyRead / countryPartlyRead = true and never 'differs': the check is then 'unreadable', the CSV check word is 'partly read: ...', and the CSV *_your_file column and the PDF print the cell as written. A cell that reads in full but with a year not written as 4 digits on their own, or a day after the report date, keeps its check (agrees / differs) and only switches the E2.4 rules off. Since 2026-10-09 (E2.4) each export row also has dobCap: null, or {nameScore, reason} when the engine gave the match the Strong band and the report shows it as Possible because the date of birth is more than 2 years off (contextCheck.dobGapOver2Years); band and score are then the report's (score at most the Strong line minus 0.01) and nameScore is the engine's name score; export-only. The CSV has the same data in its columns band_note and name_score_before_cap, after report_section. Since 2026-10-10 (matcher 2.10) each export row also has capReason: null, or one of weak_alias_copy, number_missing, letters_differ, one_word_spelling (and since matcher 2.11 common_words_only) when the engine gave a name score of the Strong line or more the Possible score 0.89 for that reason (the engine's score and band are then already Possible); and capNote, its plain sentence (null when capReason is null); capNote is export-only. Since matcher 2.11, /v1 hits also have capReason (see the property), without capNote. The CSV band_note then gives 'Shown as Possible (not Strong): ' and that sentence, and name_score_before_cap stays empty (no new CSV column). The CSV's last column, words_not_compared, holds the words on one side only that the engine leaves out of the name comparison as legal forms (nameComparison.notComparedYours / notComparedList, joined by ', '). The CSV columns match_label, your_words_not_in_list_name and list_words_not_in_your_name (nameComparison.unmatchedYours / unmatchedList, joined by ', ') and also_listed_as (at most 10 names joined by ' | ', then '(+N more)'; the JSON array has every name) are the last 4.",
"required": [
"matchedList",
"matchedName",
"score",
"band",
"reviewPriority",
"listVersion",
"matchedTokenPairs",
"identifiers"
],
"properties": {
"matchedList": {
"type": "string",
"description": "Source list id, e.g. OFAC_SDN."
},
"matchedName": {
"type": "string"
},
"score": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"band": {
"type": "string",
"enum": [
"high_confidence",
"possible_match"
]
},
"reviewPriority": {
"type": "string",
"enum": [
"HIGH",
"REVIEW"
]
},
"listVersion": {
"type": "string"
},
"matchedTokenPairs": {
"type": "array",
"items": {
"type": "object",
"required": [
"inputToken",
"candidateToken",
"similarity",
"idfWeight"
],
"properties": {
"inputToken": {
"type": "string"
},
"candidateToken": {
"type": "string"
},
"similarity": {
"type": "number"
},
"idfWeight": {
"type": "number"
}
}
}
},
"identifiers": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"value"
],
"properties": {
"type": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
},
"entityId": {
"type": "string",
"description": "The matched list entry, <list>:<source entry id>."
},
"matchReasons": {
"type": "array",
"items": {
"type": "string",
"enum": [
"exact",
"accent",
"word_order",
"partial",
"spelling",
"alias"
]
},
"description": "Derived from the two names, for the reviewer; never a scoring input. exact: same words, same order (case, spaces, punctuation ignored). accent: same once diacritics are removed. word_order: same words, other order. partial: every word of one name is in the other. spelling: spelled differently. alias: the matched name is an alias of the entry (only when listEntry is known)."
},
"listEntry": {
"oneOf": [
{
"type": "object",
"description": "The matched entry's data as the list publishes it. A null field: the list publishes none for this entry, unless the field is in unavailableFields.",
"required": [
"primaryName",
"entityType",
"dob",
"country",
"listingReason",
"unavailableFields"
],
"properties": {
"primaryName": {
"type": "string"
},
"entityType": {
"type": [
"string",
"null"
],
"description": "individual, entity, vessel, aircraft or unknown."
},
"dob": {
"type": [
"string",
"null"
]
},
"country": {
"type": [
"string",
"null"
]
},
"listingReason": {
"type": [
"string",
"null"
],
"description": "The listing reason or sanctions program, as the list states it."
},
"unavailableFields": {
"type": "array",
"items": {
"type": "string",
"enum": [
"entityType",
"dob",
"country",
"listingReason"
]
},
"description": "Fields our data of this list does not carry at all. For these, null means unknown, not that the list publishes none."
},
"entryId": {
"type": "string",
"description": "Batch report export only (2026-10-06). The list's own reference for the entry: the part of entityId after the first colon, e.g. 35096, EU.7510.16, RUS0251."
},
"officialUrl": {
"type": [
"string",
"null"
],
"description": "Batch report export only (2026-10-06). The entry's page on the list owner's site. Only for OFAC_SDN entries (https://sanctionssearch.ofac.treas.gov/Details.aspx?id=<entryId>); null for every other list."
}
}
},
{
"type": "null"
}
],
"description": "null: the entry data could not be read for this screen."
},
"capReason": {
"type": "string",
"enum": [
"weak_alias_copy",
"number_missing",
"letters_differ",
"one_word_spelling",
"common_words_only"
],
"description": "Since matcher 2.11 (optional, absent when there is none): the engine gave a name score of the Strong line or more the Possible score 0.89 for this reason; score and band are already Possible. weak_alias_copy: OFAC or the UN marks this alias as weak in a linked entry. number_missing: one name has a number that the other name does not have. letters_differ: both names have single letters, and each has one the other does not have. one_word_spelling: one word on each side (legal forms and common words left out), not spelled the same. common_words_only: each matched word pair has a common business word, and one name has a word or single letter that the other does not have."
}
}
}
}
}
}
},
{
"type": "null"
}
]
},
"disclaimer": {
"type": "string"
},
"replayed": {
"type": "boolean",
"description": "true when this answer is a stored record replayed without a charge."
}
}
},
{
"type": "object",
"required": [
"error",
"balance",
"needed",
"buy_url"
],
"properties": {
"error": {
"type": "string",
"const": "insufficient_credits"
},
"balance": {
"type": "integer",
"minimum": 0
},
"needed": {
"type": "integer",
"minimum": 1
},
"buy_url": {
"type": "string",
"description": "A checkout page bound to this key, valid 24 hours."
}
}
},
{
"type": "object",
"required": [
"error",
"message",
"record_id",
"credits_charged",
"credits_refunded"
],
"properties": {
"error": {
"type": "string",
"enum": [
"snapshot_unavailable",
"screening_unavailable",
"record_persist_failed"
]
},
"message": {
"type": "string"
},
"record_id": {
"type": "string"
},
"credits_charged": {
"type": "integer",
"description": "Credits still charged now. 0 when the refund succeeded."
},
"credits_refunded": {
"type": "integer"
}
}
},
{
"type": "object",
"required": [
"error",
"limit_per_minute",
"retry_after_seconds"
],
"properties": {
"error": {
"type": "string",
"const": "rate_limited"
},
"limit_per_minute": {
"type": "integer"
},
"retry_after_seconds": {
"type": "integer",
"minimum": 1
}
}
},
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Machine-readable error code."
},
"message": {
"type": "string"
},
"details": {
"type": "array",
"items": {
"type": "string"
}
},
"record_id": {
"type": "string"
}
}
}
]
}🟢get_record(record_id)
Fetch a previously stored screening record by its record id. This tool is free to use.
Esquema de entrada
{
"type": "object",
"properties": {
"record_id": {
"type": "string",
"description": "The unique identifier of a screening record, returned by screen_names.",
"pattern": "^[0-9A-HJKMNP-TV-Z]{26}$"
}
},
"required": [
"record_id"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"anyOf": [
{
"type": "object",
"required": [
"record_id",
"status",
"screened_at",
"snapshot_version",
"engine_version",
"sources",
"warnings",
"credits_charged",
"payload_status",
"results"
],
"properties": {
"record_id": {
"type": "string"
},
"record_url": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"pending",
"done",
"failed"
],
"description": "failed: the screen did not complete and the credits were (or will be) refunded."
},
"screened_at": {
"type": "string"
},
"snapshot_version": {
"type": [
"string",
"null"
]
},
"engine_version": {
"type": [
"string",
"null"
]
},
"sources": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"data_as_of"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"data_as_of": {
"type": [
"string",
"null"
],
"description": "When the source published the data in the screened snapshot. null when unknown; a warning then says so."
},
"attribution": {
"type": "string",
"description": "The licence credit of the source. Present only when the source's licence requires one (CA_SEMA, AU_DFAT)."
}
}
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"request_hash": {
"type": "string"
},
"threshold": {
"type": "number"
},
"names_count": {
"type": "integer"
},
"credits_charged": {
"type": "integer"
},
"payload_expires_at": {
"type": "string"
},
"payload_status": {
"type": "string",
"enum": [
"available",
"expired",
"missing",
"none"
],
"description": "available: results present. expired: past retention. missing: not expired but not found (an incident; contact support). none: the screen did not complete."
},
"results": {
"oneOf": [
{
"type": "array",
"items": {
"type": "object",
"required": [
"input",
"hits"
],
"properties": {
"input": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"country": {
"type": "string",
"maxLength": 100,
"description": "Optional context. A country that agrees with the list entry raises reviewPriority to HIGH; it never hides a hit."
},
"dob": {
"type": "string",
"maxLength": 100,
"description": "Optional date of birth, ISO 8601. Same rule as country."
},
"type": {
"type": "string",
"enum": [
"person",
"entity"
],
"description": "Optional. Lowers the score of hits of the opposite type."
}
}
},
"hits": {
"type": "array",
"items": {
"type": "object",
"description": "One list entry that matched. Same fields as a row of the batch report's JSON export; the export row also has rowIndex, inputName, listDataAsOf, hitGroup, review and spreadsheetRow (the uploaded row's number as a spreadsheet app shows it, added 2026-10-05), and since 2026-10-06 contextCheck (ReportContextCheck), inputContext (ReportInputContext) and nameComparison (ReportNameComparison). In the export, reviewPriority is HIGH when the uploaded country or date of birth agrees with the list entry (since 2026-10-09, E2.4: a country that agrees does not make HIGH when contextCheck.dobGapOver2Years is true and every item of the uploaded country cell gives a country code). The CSV export has the same data in the columns name_comparison, words_that_match, country_check, country_your_file, country_list, dob_check, dob_your_file and dob_list, after spreadsheet_row. entityId, matchReasons and listEntry were added on 2026-10-03; records stored before that do not have them. Since 2026-10-07 a file whose rows hold several names (for example a student, an agent and a contact) is screened per name: the export row then has party (the name group, also the CSV column party), rowIndex is the name item (row x groups + group), and spreadsheetRow is the file row. Since 2026-10-07 each export row also has whyListed (the list's listing codes as [{code, plain, source}]: plain is the official programme name, or null when no official table names the code; source is the page that defines it, or null) and lookUp ({text, url}: where to look the list entry up). The CSV export has the same data in the columns why_listed, look_up and look_up_url. listing_reason keeps the raw code. Also since 2026-10-07, each export row has matchLabel (the report's words for the band and score, for example 'Strong name match (93%)'; band and score are unchanged) and alsoListedAs (the other names that matched the same listed person or entity in this row: only on the hit group's best match, [] on its other rows). These 2 keys are export-only: /v1 hits do not have them. Since 2026-10-09 (matcher 2.8) each export row also has mutualMismatch (true when the uploaded name and the list name each keep a word that pairs with nothing; false for matches screened before 2.8); export-only too. Since 2026-10-09 (E2.4) the batch report export differs from /v1/screen for the same match: /v1/screen hits keep the engine's band, score and reviewPriority (HIGH when the country or date of birth agrees), and the batch report export applies the date-of-birth cap and the HIGH change described here. Since 2026-10-09 (E2.4, QA PR #165) an uploaded date-of-birth or country cell where some item gives no reading and another does gives contextCheck.dobPartlyRead / countryPartlyRead = true and never 'differs': the check is then 'unreadable', the CSV check word is 'partly read: ...', and the CSV *_your_file column and the PDF print the cell as written. A cell that reads in full but with a year not written as 4 digits on their own, or a day after the report date, keeps its check (agrees / differs) and only switches the E2.4 rules off. Since 2026-10-09 (E2.4) each export row also has dobCap: null, or {nameScore, reason} when the engine gave the match the Strong band and the report shows it as Possible because the date of birth is more than 2 years off (contextCheck.dobGapOver2Years); band and score are then the report's (score at most the Strong line minus 0.01) and nameScore is the engine's name score; export-only. The CSV has the same data in its columns band_note and name_score_before_cap, after report_section. Since 2026-10-10 (matcher 2.10) each export row also has capReason: null, or one of weak_alias_copy, number_missing, letters_differ, one_word_spelling (and since matcher 2.11 common_words_only) when the engine gave a name score of the Strong line or more the Possible score 0.89 for that reason (the engine's score and band are then already Possible); and capNote, its plain sentence (null when capReason is null); capNote is export-only. Since matcher 2.11, /v1 hits also have capReason (see the property), without capNote. The CSV band_note then gives 'Shown as Possible (not Strong): ' and that sentence, and name_score_before_cap stays empty (no new CSV column). The CSV's last column, words_not_compared, holds the words on one side only that the engine leaves out of the name comparison as legal forms (nameComparison.notComparedYours / notComparedList, joined by ', '). The CSV columns match_label, your_words_not_in_list_name and list_words_not_in_your_name (nameComparison.unmatchedYours / unmatchedList, joined by ', ') and also_listed_as (at most 10 names joined by ' | ', then '(+N more)'; the JSON array has every name) are the last 4.",
"required": [
"matchedList",
"matchedName",
"score",
"band",
"reviewPriority",
"listVersion",
"matchedTokenPairs",
"identifiers"
],
"properties": {
"matchedList": {
"type": "string",
"description": "Source list id, e.g. OFAC_SDN."
},
"matchedName": {
"type": "string"
},
"score": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"band": {
"type": "string",
"enum": [
"high_confidence",
"possible_match"
]
},
"reviewPriority": {
"type": "string",
"enum": [
"HIGH",
"REVIEW"
]
},
"listVersion": {
"type": "string"
},
"matchedTokenPairs": {
"type": "array",
"items": {
"type": "object",
"required": [
"inputToken",
"candidateToken",
"similarity",
"idfWeight"
],
"properties": {
"inputToken": {
"type": "string"
},
"candidateToken": {
"type": "string"
},
"similarity": {
"type": "number"
},
"idfWeight": {
"type": "number"
}
}
}
},
"identifiers": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"value"
],
"properties": {
"type": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
},
"entityId": {
"type": "string",
"description": "The matched list entry, <list>:<source entry id>."
},
"matchReasons": {
"type": "array",
"items": {
"type": "string",
"enum": [
"exact",
"accent",
"word_order",
"partial",
"spelling",
"alias"
]
},
"description": "Derived from the two names, for the reviewer; never a scoring input. exact: same words, same order (case, spaces, punctuation ignored). accent: same once diacritics are removed. word_order: same words, other order. partial: every word of one name is in the other. spelling: spelled differently. alias: the matched name is an alias of the entry (only when listEntry is known)."
},
"listEntry": {
"oneOf": [
{
"type": "object",
"description": "The matched entry's data as the list publishes it. A null field: the list publishes none for this entry, unless the field is in unavailableFields.",
"required": [
"primaryName",
"entityType",
"dob",
"country",
"listingReason",
"unavailableFields"
],
"properties": {
"primaryName": {
"type": "string"
},
"entityType": {
"type": [
"string",
"null"
],
"description": "individual, entity, vessel, aircraft or unknown."
},
"dob": {
"type": [
"string",
"null"
]
},
"country": {
"type": [
"string",
"null"
]
},
"listingReason": {
"type": [
"string",
"null"
],
"description": "The listing reason or sanctions program, as the list states it."
},
"unavailableFields": {
"type": "array",
"items": {
"type": "string",
"enum": [
"entityType",
"dob",
"country",
"listingReason"
]
},
"description": "Fields our data of this list does not carry at all. For these, null means unknown, not that the list publishes none."
},
"entryId": {
"type": "string",
"description": "Batch report export only (2026-10-06). The list's own reference for the entry: the part of entityId after the first colon, e.g. 35096, EU.7510.16, RUS0251."
},
"officialUrl": {
"type": [
"string",
"null"
],
"description": "Batch report export only (2026-10-06). The entry's page on the list owner's site. Only for OFAC_SDN entries (https://sanctionssearch.ofac.treas.gov/Details.aspx?id=<entryId>); null for every other list."
}
}
},
{
"type": "null"
}
],
"description": "null: the entry data could not be read for this screen."
},
"capReason": {
"type": "string",
"enum": [
"weak_alias_copy",
"number_missing",
"letters_differ",
"one_word_spelling",
"common_words_only"
],
"description": "Since matcher 2.11 (optional, absent when there is none): the engine gave a name score of the Strong line or more the Possible score 0.89 for this reason; score and band are already Possible. weak_alias_copy: OFAC or the UN marks this alias as weak in a linked entry. number_missing: one name has a number that the other name does not have. letters_differ: both names have single letters, and each has one the other does not have. one_word_spelling: one word on each side (legal forms and common words left out), not spelled the same. common_words_only: each matched word pair has a common business word, and one name has a word or single letter that the other does not have."
}
}
}
}
}
}
},
{
"type": "null"
}
]
},
"disclaimer": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"error",
"limit_per_minute",
"retry_after_seconds"
],
"properties": {
"error": {
"type": "string",
"const": "rate_limited"
},
"limit_per_minute": {
"type": "integer"
},
"retry_after_seconds": {
"type": "integer",
"minimum": 1
}
}
},
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Machine-readable error code."
},
"message": {
"type": "string"
},
"details": {
"type": "array",
"items": {
"type": "string"
}
},
"record_id": {
"type": "string"
}
}
}
]
}🟢list_sources
The list_sources tool provides the 10 official sanctions lists and their data-as-of dates from the current daily snapshot. This tool is free to use and does not require an API key.
Esquema de entrada
{
"type": "object",
"properties": {},
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"anyOf": [
{
"type": "object",
"required": [
"snapshot_version",
"sources",
"warnings"
],
"properties": {
"snapshot_version": {
"type": "string"
},
"sources": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"data_as_of"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"data_as_of": {
"type": [
"string",
"null"
],
"description": "When the source published the data in the screened snapshot. null when unknown; a warning then says so."
},
"attribution": {
"type": "string",
"description": "The licence credit of the source. Present only when the source's licence requires one (CA_SEMA, AU_DFAT)."
}
}
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
{
"type": "object",
"required": [
"error",
"limit_per_minute",
"retry_after_seconds"
],
"properties": {
"error": {
"type": "string",
"const": "rate_limited"
},
"limit_per_minute": {
"type": "integer"
},
"retry_after_seconds": {
"type": "integer",
"minimum": 1
}
}
},
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Machine-readable error code."
},
"message": {
"type": "string"
},
"details": {
"type": "array",
"items": {
"type": "string"
}
},
"record_id": {
"type": "string"
}
}
}
]
}🟢get_balance
Retrieve the credit balance for your API key and its latest credit movements. This tool is free to use.
Esquema de entrada
{
"type": "object",
"properties": {},
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"anyOf": [
{
"type": "object",
"required": [
"key_prefix",
"credits_balance",
"retention_days",
"effective_retention_hours"
],
"properties": {
"key_prefix": {
"type": "string"
},
"email": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string"
},
"credits_balance": {
"type": "integer",
"minimum": 0
},
"rate_limit_per_minute": {
"type": "integer"
},
"retention_days": {
"type": "integer",
"minimum": 1,
"maximum": 365,
"description": "Days a record keeps names and hits. Default 90."
},
"effective_retention_hours": {
"type": "integer",
"description": "min(retention_days x 24, the service cap)."
},
"ledger": {
"type": "array",
"maxItems": 10,
"description": "The 10 newest credit changes, newest first.",
"items": {
"type": "object",
"required": [
"delta",
"reason",
"ref",
"created_at"
],
"properties": {
"delta": {
"type": "integer"
},
"reason": {
"type": "string",
"enum": [
"free_grant",
"screen",
"pack",
"refund",
"pack_refund",
"admin"
],
"description": "refund: a failed screen's credits given back (positive). pack_refund: pack credits taken back after a payment refund or chargeback (negative)."
},
"ref": {
"type": [
"string",
"null"
],
"description": "Record id (screen, refund), Paddle transaction id (pack) or Paddle adjustment id (pack_refund)."
},
"created_at": {
"type": "string"
}
}
}
}
}
},
{
"type": "object",
"required": [
"error",
"limit_per_minute",
"retry_after_seconds"
],
"properties": {
"error": {
"type": "string",
"const": "rate_limited"
},
"limit_per_minute": {
"type": "integer"
},
"retry_after_seconds": {
"type": "integer",
"minimum": 1
}
}
},
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Machine-readable error code."
},
"message": {
"type": "string"
},
"details": {
"type": "array",
"items": {
"type": "string"
}
},
"record_id": {
"type": "string"
}
}
}
]
}Comunidad
Evidencia