Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Pay-per-call AI agents over x402. Settled in USDC on Base with a per-call spending cap.
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.
AGENT_PRIVATE_KEY, MAX_USDC_PER_CALL, AGENTS_API_KEY, AGENTS_BASE_URL, AGENTS_PACKAGESValues 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": {
"ai-agents": {
"command": "npx",
"args": [
"-y",
"@writerslogic/ai-agents-mcp"
],
"env": {
"AGENT_PRIVATE_KEY": "your-value",
"MAX_USDC_PER_CALL": "your-value",
"AGENTS_API_KEY": "your-value",
"AGENTS_BASE_URL": "your-value",
"AGENTS_PACKAGES": "your-value"
}
}
}
}Run this in your terminal
claude mcp add ai-agents --env AGENT_PRIVATE_KEY=your-value --env MAX_USDC_PER_CALL=your-value --env AGENTS_API_KEY=your-value --env AGENTS_BASE_URL=your-value --env AGENTS_PACKAGES=your-value -- npx -y @writerslogic/ai-agents-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"ai-agents": {
"command": "npx",
"args": [
"-y",
"@writerslogic/ai-agents-mcp"
],
"env": {
"AGENT_PRIVATE_KEY": "your-value",
"MAX_USDC_PER_CALL": "your-value",
"AGENTS_API_KEY": "your-value",
"AGENTS_BASE_URL": "your-value",
"AGENTS_PACKAGES": "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": {
"ai-agents": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@writerslogic/ai-agents-mcp"
],
"env": {
"AGENT_PRIVATE_KEY": "your-value",
"MAX_USDC_PER_CALL": "your-value",
"AGENTS_API_KEY": "your-value",
"AGENTS_BASE_URL": "your-value",
"AGENTS_PACKAGES": "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.
MAX_USDC_PER_CALL envAGENTS_BASE_URL envAGENTS_PACKAGES 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 8, 2026
The registry name was verified with the GitHub account writerslogic, which owns the repo
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: AGENT_PRIVATE_KEY, AGENTS_API_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.2.0) reached the registry 2 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, NexusWindows
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.
Windows computer use in the background: desktop apps driven without your mouse or keyboard.
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.
An MCP server that exposes the WritersLogic x402 agent hub as tools. Each hub agent becomes one tool. Calls are priced in USDC and paid over x402 on Base, with no gas needed from the buyer.
The server is a thin client: it fetches the hub catalog, registers a tool per agent, forwards calls over HTTPS, and signs a payment authorization when the hub asks for one and your spending cap allows it.
Requires Node.js 20 or later. No global install is needed; MCP clients run it with npx, which builds it from this repository on first run.
{
"mcpServers": { "writerslogic-ai-agents": { "command": "npx", "args": ["-y", "@writerslogic/ai-agents-mcp"], "env": { "AGENT_PRIVATE_KEY": "0x...", "MAX_USDC_PER_CALL": "1.00" } } } }
Put that block in your client's MCP configuration:
| Client | Config file |
|---|---|
| Claude Desktop | claude_desktop_config.json (Settings, Developer, Edit Config) |
| Cursor | ~/.cursor/mcp.json (or .cursor/mcp.json in a project) |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| Cline | cline_mcp_settings.json (MCP Servers, Configure MCP Servers) |
| Claude Code | claude mcp add writerslogic-ai-agents -e AGENT_PRIVATE_KEY=0x... -- npx -y @writerslogic/ai-agents-mcp |
Omit AGENT_PRIVATE_KEY to browse and to see prices: paid tools then return the payment instructions instead of paying.
| Variable | Default | Purpose |
|---|---|---|
AGENT_PRIVATE_KEY | unset | Private key of the wallet that pays. Needs USDC on Base, no ETH. Use a dedicated low-balance wallet. |
MAX_USDC_PER_CALL | 1.00 | Per-call spending cap. A call whose price is above it is refused before anything is signed. |
AGENTS_API_KEY | unset | Sent as X-API-KEY. Bypasses payment. |
AGENTS_BASE_URL | https://agents.writerslogic.com | Hub URL. Must be https; plain http is accepted for localhost only. |
AGENTS_TIMEOUT_MS | 120000 | Timeout for tool calls (1000 to 600000). The catalog fetch uses at most 15 s. |
AGENTS_PACKAGES | unset | all, or a comma-separated list of package ids, to list those packages' checks as individual tools instead of one tool per package. |
Tools are discovered from the hub catalog (GET /api/v1/catalog?view=tools) and package index (GET /api/v1/packages) when the server starts, and refreshed on tools/list after ten minutes, so the live list is authoritative. Tool names are the agent or package id with every character outside A-Za-z0-9_ replaced by _. Each agent tool takes the agent's own input schema.
Small single-purpose checks ($0.005 each) are grouped into one tool per package, such as money_math_kit, so the tool list stays short. A package tool takes one of:
{"describe": true, "check": " "}: free. Returns the check's input schema and an example input, from GET /api/v1/packages/ . Without check it lists the package's checks.{"check": " ", "input": {...}}: runs one check at its own price.{"calls": [{"check": " ", "input": {...}}, ...]}: runs up to 20 checks from the package under one $0.02 payment through /api/v1/micro-batch. Stateful and network checks are rejected before payment.Arguments are validated locally first, so a check outside the package or a malformed call never reaches the hub. A hub without a package index gets one tool per agent. Agents at the time of writing:
| Tool | Price (USDC) | Description |
|---|---|---|
abandoned_compound_miner | 2.00 | Abandoned Compound & Uncommercialized Trial Miner |
accessibility_patcher | 0.75 | ADA / WCAG Lawsuit Shield & DOM Auto-Patcher |
arxiv_to_code | 1.00 | arXiv-to-Production Code & Hyperparameter Compiler |
token_trap_detector | 0.25 | On-Chain Bytecode & Unverified Token Trap Detector |
chargeback_fighter | 2.50 | E-Commerce Chargeback Representment Builder |
clarification_impact | 0.50 | Prediction-Market Clarification Impact Pricer |
competitor_battlecard | 1.50 | SaaS Pricing & Competitor Battlecard Spy |
contract_auditor | 1.00 | Smart Contract Auditor |
contract_terminator | 1.00 | Dark Pattern Contract & Subscription Exit Lawyer |
cover_claim | 5.00 | DeFi Cover Claim Adjudicator |
diff_gatekeeper | 0.50 | PR / Dependency Breaking-Change & Exploit Gatekeeper |
dispute_ev | 0.50 | UMA Dispute EV Desk |
foreignResearchScout | 1.50 | Cross-Lingual Dark Science Arbitrage Scout |
lead_enrichment | 0.50 | Autonomous Lead Enrichment |
market_predictor | 0.10 | Prediction Market Analyzer |
medical_bill_auditor | 3.00 | Medical Bill Upcoding & Overcharge Slasher |
milestone_verifier | 2.00 | Grant Milestone Verifier with Signed Release Attestation |
patent_design_around | 2.00 | Patent Design-Around & Freedom-to-Operate Architect |
prior_art_invalidator | 2.50 | Global Prior-Art Patent Invalidator |
replication_auditor | 0.75 | Scientific Consensus & Replication Failure Auditor |
arbitrage_lawyer | 0.75 | Cross-Platform Arbitrage & Resolution Rules Lawyer |
heal_scraper | 0.40 | Self-Healing Scraper & DOM-to-JSON Compiler |
tariff_engineer | 1.50 | Global Customs & Tariff Engineering Optimizer |
vault_exit_lawyer | 0.25 | Vault Exit Lawyer |
Also always available, and free:
| Tool | Description |
|---|---|
verify_provenance | POSTs to /api/v1/verify-provenance to check the _provenance record on a paid result. |
A paid result is the hub's JSON response, returned unchanged as text content.
402, it sends a base64 PAYMENT-REQUIRED header (x402 v2) listing an exact scheme requirement: network eip155:8453, USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913, an atomic amount (6 decimals), payTo, and the token's EIP-712 name and version.AGENT_PRIVATE_KEY is set and amount is at most MAX_USDC_PER_CALL, the client signs an EIP-3009 TransferWithAuthorization (EIP-712, USDC domain on chain 8453) for exactly that amount to payTo, valid for the requirement's timeout, with a random nonce.PAYMENT-SIGNATURE header. The hub's facilitator submits the transfer and pays the gas.If no key is configured, or the price is over the cap, the tool returns an error that states the price, network, asset and payTo, and no signature is produced.
Paid results carry a _provenance record next to data. Pass the whole {data, _provenance} object to verify_provenance to check it against the hub. The request body is forwarded as given.
AGENT_PRIVATE_KEY is read once from the environment, used only to sign typed data, and never logged or sent anywhere. Authorizations are signatures; the client never broadcasts a transaction.MAX_USDC_PER_CALL each time. Fund the wallet with only what you are willing to lose, and lower the cap to the most expensive tool you actually want to allow.eip155:84532) USDC is also accepted for testing.payTo only.npm install
npm run build npm test
Tests run against a local mock hub and verify the EIP-3009 signature by recovering the signer, the cap at limit-1, limit and limit+1, and an end-to-end stdio session against dist/index.js. No network access or funds are involved.
Apache-2.0. Copyright 2026 WritersLogic.