About madtaco
madtaco is a stdio MCP server for agents that wraps the MadTaco API for identifier validation, sanctions screening, and company and domain checks. It combines free utilities with credit-based paid checks, with failed checks not charged.
Key features
- 01Tax ID and IBAN validation
- 02Email and phone validation
- 03Sanctions screening
- 04Company and domain checks
- 05Usage and account tools
Use cases
- 01Validate a Chilean tax ID or IBAN
- 02Screen a party against sanctions
- 03Check a company or domain
- 04Inspect account usage before paid checks
MCP support
Exposes 13 MadTaco API operations as MCP tools over stdio. The same tool set is also available through Streamable HTTP at the API endpoint.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @madtaco/mcpMADTACO_API_BASEMadTaco API base URL (default: https://api.madtaco.dev/v1)MADTACO_API_KEYSecretX-Api-Key for paid checks, usage, and proposals (free tools work without it)Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
13Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Tax ID to validate, e.g. "11.111.111-1". |
| country | string | Yes | ISO 3166-1 alpha-2 country code, e.g. "CL". |
Details
From the project README🌮 MadTaco — MCP Server
npm: @madtaco/mcp
Verification and utility API for AI agents. Validate tax IDs, screen sanctions, verify companies, inspect domains — prepaid USD credits. Failed checks are never charged.
This package is a stdio MCP server that wraps the public MadTaco API at https://api.madtaco.dev/v1. Every response includes credits_charged (0 for free operations). Prefer remote HTTP instead? See HTTP MCP below.
Docs
- madtaco.dev — product site
- Setup guide — Cursor, Claude, Smithery
- API docs — OpenAPI reference
- Agent skill — integration guide (MCP + REST)
- llms.txt — full endpoint catalog
- pricing.json — per-operation prices
- Health — API status
- Server card — tool metadata
Quick start (stdio)
npx @madtaco/mcp
Claude Desktop / Cursor
Claude Desktop config: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows).
Cursor: .cursor/mcp.json in your project or global MCP settings.
{
"mcpServers": {
"madtaco": {
"command": "npx",
"args": ["-y", "@madtaco/mcp"],
"env": {
"MADTACO_API_KEY": "your_api_key_here"
}
}
}
}
Without an API key: validate_tax_id, validate_iban, lookup_instrument, validate_email (syntax), validate_phone (format), create_account, verify_account.
With an API key (tier registered): get_usage, propose_check.
Funded account required (tier 2): paid screening/verification tools and validate_email/validate_phone full modes. Top up via POST /v1/billing/checkout or madtaco.dev billing.
Rate limits: 50 req/day anonymous (per IP), 100 req/day registered (per API key), 500/day included once funded — see llms.txt.
Try it
Validate the Chilean RUT
11.111.111-1using MadTaco.
Check whether IBAN
DE89370400440532013000is valid.
Look up ticker
CMGon exchangeUS.
Remote HTTP
Streamable HTTP MCP on the API subdomain — no npm install required:
{
"mcpServers": {
"madtaco": {
"url": "https://api.madtaco.dev/mcp",
"headers": { "X-Api-Key": "your_api_key_here" }
}
}
}
Authenticate with X-Api-Key or Authorization: Bearer. Same 13 tools as this stdio package.
Environment
| Variable | Required | Default |
|---|---|---|
MADTACO_API_KEY | For authenticated and paid tools | — |
MADTACO_API_BASE | No | https://api.madtaco.dev/v1 |
Override for staging or local dev:
"env": { "MADTACO_API_BASE": "https://api.madtaco.dev/v1" }
Tools
All paths are relative to MADTACO_API_BASE (default https://api.madtaco.dev/v1).
| Tool | API endpoint | Credits |
|---|---|---|
validate_tax_id | POST /validate/tax-id | 0 |
validate_iban | POST /validate/iban | 0 |
lookup_instrument | POST /lookup/instrument | 0 |
validate_email | POST /validate/email | 0 (syntax) / 0.005 (full, tier 2) |
validate_phone | POST /validate/phone | 0 (format) / 0.005 (full, tier 2) |
screen_sanctions | POST /screen/sanctions | 0.10 |
verify_company | POST /verify/company | 0.15 |
inspect_domain | POST /inspect/domain | 0.05 |
screen | POST /screen + optional GET /screens/{id}?wait=60 | sum of completed checks |
propose_check | POST /propose | pledge hold only |
create_account | POST /accounts | 0 |
verify_account | POST /accounts/verify | 0 |
get_usage | GET /usage | 0 |
Not in MCP (REST only)
Call these directly against the API — see llms.txt:
GET /data/cl/{indicator}— Chilean indicators (UF, UTM, USD, EUR, IPC)GET /balance— credit balance (get_usageincludes balance)GET /evidence/{id}— signed evidence URLsGET /health— uptime check
Agent onboarding flow
create_accountwith an email →account_id+pending_verification- Human or agent reads the 6-digit code from email
verify_account→api_key(tierregistered)- Fund the account via madtaco.dev billing or
POST /v1/billing/checkout - Set
MADTACO_API_KEYand run paid checks
Credentials never transit through MCP responses for human dashboard access — use POST /v1/accounts/invite-human when needed.
Development
Stdio transport only — this server calls the public HTTP API; no database or secrets beyond an optional API key.
git clone https://github.com/madtaco-dev/mcp.git
cd mcp
npm install
npm test
npm run build
MADTACO_API_KEY=... npm run dev
New tools ship as minor npm releases as the API grows. See llms.txt for the current tool list.
License
MIT © 🌮 MadTaco · Built for agents, literally.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.