search_sanctions
Search global sanctions lists to identify restricted entities by name, alias, address, or country. Access OFAC, EU, UN, and UK sanctions data with relevance-ranked results.
Instructions
Full-text search across all sanctions entries. Search by name, alias, address, country, or program. Returns matching entries ranked by relevance. Cost: $0.009 per query. Source: OFAC SDN, EU, UN, UK lists.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query (name, alias, address, country, etc.) | |
| limit | No | Maximum results (default 25) |
Implementation Reference
- src/tools/sanctions.ts:110-137 (handler)Handler function for the search_sanctions tool. It makes an API call to /api/v1/sanctions/search and processes the response.
async ({ q, limit }) => { const res = await apiGet<SanctionsQueryResponse>( "/api/v1/sanctions/search", { q, limit: limit ?? 25 }, ); if (!res.ok) { return { content: [ { type: "text" as const, text: `API error (${res.status}): ${JSON.stringify(res.data)}`, }, ], isError: true, }; } const { count, data } = res.data; const warn = stalenessWarning(res); const summary = `${warn}Found ${count} sanctions result(s).`; const json = JSON.stringify(data, null, 2); return { content: [{ type: "text" as const, text: `${summary}\n\n${json}` }], }; }, ); - src/tools/sanctions.ts:93-109 (schema)Input schema definition for the search_sanctions tool.
{ title: "Search Sanctions", description: "Full-text search across all sanctions entries. Search by name, alias, address, " + "country, or program. Returns matching entries ranked by relevance. " + "Cost: $0.009 per query. Source: OFAC SDN, EU, UN, UK lists.", inputSchema: { q: z.string().describe("Search query (name, alias, address, country, etc.)"), limit: z .number() .int() .min(1) .max(100) .optional() .describe("Maximum results (default 25)"), }, }, - src/tools/sanctions.ts:91-92 (registration)Tool registration for search_sanctions.
server.registerTool( "search_sanctions",