Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Find the right paid x402 API, plus fact checks: IBAN, EU VAT, OFAC sanctions, LEI, FX
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
X402_PRIVATE_KEY, X402_MAX_PER_CALL_USD, X402_SESSION_BUDGET_USDValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"facts402": {
"command": "uvx",
"args": [
"facts402-mcp"
],
"env": {
"X402_PRIVATE_KEY": "your-value",
"X402_MAX_PER_CALL_USD": "your-value",
"X402_SESSION_BUDGET_USD": "your-value"
}
}
}
}Run this in your terminal
claude mcp add facts402 --env X402_PRIVATE_KEY=your-value --env X402_MAX_PER_CALL_USD=your-value --env X402_SESSION_BUDGET_USD=your-value -- uvx facts402-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"facts402": {
"command": "uvx",
"args": [
"facts402-mcp"
],
"env": {
"X402_PRIVATE_KEY": "your-value",
"X402_MAX_PER_CALL_USD": "your-value",
"X402_SESSION_BUDGET_USD": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"facts402": {
"type": "stdio",
"command": "uvx",
"args": [
"facts402-mcp"
],
"env": {
"X402_PRIVATE_KEY": "your-value",
"X402_MAX_PER_CALL_USD": "your-value",
"X402_SESSION_BUDGET_USD": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
X402_MAX_PER_CALL_USD envX402_SESSION_BUDGET_USD envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified against the domain facts402.com (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: X402_PRIVATE_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.1.1) reached the registry 5 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Dialyne
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Real phone calls in France for AI agents: dial +33 numbers, menus, hold, AI disclosure.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Find the right paid API for a task, and verified fact checks for AI agents. Before an agent pays an unknown API, x402_recommend ranks the x402 endpoints that fit the task by relevance, real on-chain buyers and liveness, for $0.005 (the preview is free). And at $0.01 per call: validate an IBAN before a payout. Check an EU VAT number in VIES before invoicing. Screen a name against OFAC sanctions. Look up a company's LEI. Validate a phone number or email before outreach. Convert currency at official ECB rates. Check how old a domain is. These are small, exact answers an agent can rely on, with no API keys or sign-up.
Pay per call with x402: USDC on Base, from your own wallet, within a per-call cap and a session budget you set.
| Tool | Price (USDC) | Use it to |
|---|---|---|
x402_recommend | $0.005 | Find the best paid x402 endpoints for a task: url, price, network, 30-day buyers, liveness, risk flags, score |
x402_recommend_preview | free | See the single top pick (host, price, buyers) for a task |
iban_check | $0.01 | Validate an IBAN and get bank name, BIC and SEPA membership |
eu_vat_check | $0.01 | Check an EU VAT number in VIES: status, company name and address |
sanctions_screen | $0.01 | Fuzzy-screen a person, company, vessel or aircraft against the OFAC SDN list |
lei_lookup | $0.01 | Look up a company in the GLEIF LEI index, by LEI or by name |
phone_check | $0.01 | Validate and normalise a phone number: E.164, line type, carrier, time zone |
email_check | $0.01 | Check email syntax, MX, disposable and role-account flags |
fx_convert | $0.01 | Convert currency at ECB reference rates, for the latest day or any of the last 90 |
domain_check | $0.01 | Get a domain's age, registrar, status and DNSSEC via RDAP (WHOIS) |
business_days | $0.01 | Count business days and list public holidays between two dates |
weather_forecast | $0.01 | Get a forecast for any coordinates, up to 7 days |
sun_times | $0.01 | Get sunrise, sunset, golden hour and day length |
base_token_check | $0.01 | Get raw on-chain facts for a Base ERC-20 contract (owner, proxy, mint / pause / blacklist) |
The service charges only for a successful (2xx) answer: invalid input, upstream errors and a recommend query with no match (404) are never charged. Recommendations use the x402-list.com catalog (CC BY 4.0) and sellers' own 402 quotes, filtered and re-scored by facts402; facts402's own APIs are ranked with the same formula. For Base memecoin trading safety (honeypot, rug pull, exit liquidity, smart money), see base-memecoin-guard-mcp.
| Variable | Default | Meaning |
|---|---|---|
X402_PRIVATE_KEY | (unset) | Private key of a Base mainnet wallet you control that holds some USDC. Without it, x402_recommend_preview works and the paid tools return their price and setup steps, paying nothing. |
X402_MAX_PER_CALL_USD | 0.30 | The most one call may pay. |
X402_SESSION_BUDGET_USD | 2.00 | The most the server may spend until it restarts. |
exact payments are gasless EIP-3009 USDC authorisations.0x5498b0Aa90cd56F8962CBd136DF3D3769C85f149). A quote for any other payee, any other token or a Permit2 approval is refused.The server runs with uv (uvx facts402-mcp).
Add this to claude_desktop_config.json (Settings > Developer > Edit Config):
{
"mcpServers": { "facts402": { "command": "uvx", "args": ["facts402-mcp"], "env": { "X402_PRIVATE_KEY": "0xYOUR_HOT_WALLET_KEY", "X402_MAX_PER_CALL_USD": "0.30", "X402_SESSION_BUDGET_USD": "2.00" } } } }
claude mcp add facts402 --scope user -e X402_PRIVATE_KEY=0xYOUR_HOT_WALLET_KEY -- uvx facts402-mcp
Use ~/.cursor/mcp.json (global) or .cursor/mcp.json (project; keep the key out of version control):
{
"mcpServers": { "facts402": { "command": "uvx", "args": ["facts402-mcp"], "env": { "X402_PRIVATE_KEY": "0xYOUR_HOT_WALLET_KEY" } } } }
Use ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": { "facts402": { "command": "uvx", "args": ["facts402-mcp"], "env": { "X402_PRIVATE_KEY": "0xYOUR_HOT_WALLET_KEY" } } } }
This folder also holds the shared core used by base-memecoin-guard-mcp: the HTTP caller, the x402 wallet, the budget and the server plumbing. From A2A_MICROPAYMENTS_TRACK/mcp:
python -m venv .venv
.venv/bin/pip install -e "./facts402-mcp[test]" -e "./base-memecoin-guard-mcp[test]" .venv/bin/pytest facts402-mcp && .venv/bin/pytest base-memecoin-guard-mcp # unit tests, mocked HTTP .venv/bin/pytest -m live facts402-mcp && .venv/bin/pytest -m live base-memecoin-guard-mcp # live, never pays .venv/bin/python scripts/sync_schemas.py # refresh input schemas and prices from the live /openapi.json .venv/bin/python scripts/write_manifest.py # refresh each manifest.json (MCPB) from the code