██╗ ██╗████████╗███╗ ███╗ ██████╗██████╗
██║ ██╔╝╚══██╔══╝████╗ ████║██╔════╝██╔══██╗
█████╔╝ ██║ ██╔████╔██║██║ ██████╔╝
██╔═██╗ ██║ ██║╚██╔╝██║██║ ██╔═══╝
██║ ██╗ ██║ ██║ ╚═╝ ██║╚██████╗██║
╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝╚═╝
Kill The MCP. Use CLIs.
MCPs should've just been CLIs with good docs so your AI could easily connect to any 3rd party API. We're fixing that.
Six months ago, everyone was talking about MCPs. And I was like, screw MCPs. Every MCP would be better as a CLI.
How to use
So you've decided MCPs are unnecessary BS. We're with you. Here's what you need to get started.
Add KTMCP to your agent
Copy this into your agent's SKILL.md, system prompt, or ~/.claude/CLAUDE.md:
# KTMCP — CLI tools for APIs (no MCP servers needed) You have access to ktmcp CLIs — lightweight command-line tools for popular APIs. Instead of spinning up MCP servers, use these CLIs directly via bash. ## Finding CLIs Browse: https://killthemcp.com/llms.txt npm: https://npmjs.com/org/ktmcp-cli GitHub: https://github.com/ktmcp-cli ## Using a CLI npm install -g @ktmcp-cli/{name} # install once {name} --help # list commands {name} {resource} list # always returns JSON ## Example npm install -g @ktmcp-cli/stripe stripe payments list stripe customers get --id cus_abc123
Reference the full catalog
Point your agent at killthemcp.com/llms.txt — a machine-readable index of every available CLI, updated automatically as new ones ship:
https://killthemcp.com/llms.txt
Works with any LLM that supports URL context — Claude Projects, ChatGPT file uploads, Cursor rules, etc.
Find a CLI for any API
# Search npm directly npm search @ktmcp-cli # Or ask your agent "Check killthemcp.com/llms.txt — is there a CLI for [service]?" # Or browse GitHub https://github.com/ktmcp-cli
New CLIs ship every hour. If yours isn't here yet, open an issue.
Available CLIs
Finance APIs to start — Xero, Stripe, QuickBooks, and more. Growing daily.
$ xero invoices list --status AUTHORISED ✓ Found 18 invoices ┌──────────┬──────────────┬────────────┬────────────┐ │ InvNum │ Contact │ AmtDue │ DueDate │ ├──────────┼──────────────┼────────────┼────────────┤ │ INV-0042 │ Acme Corp │ 2,150.00 │ 2026-03-01 │ │ INV-0041 │ Tech Ltd │ 890.00 │ 2026-02-28 │ └──────────┴──────────────┴────────────┴────────────┘
$ taxjar rates get --zip 90210 --state CA
✓ Tax rates for 90210
{
"combined_rate": 0.1025,
"state_rate": 0.0725,
"county_rate": 0.01,
"city_rate": 0.02
} $ bunq accounts list ✓ Your bunq accounts (2) Personal (EUR) └─ Balance: €4,231.50 Savings Goal: Vacation └─ Balance: €1,750.00 / €3,000.00
$ stripe payments list --limit 5 ✓ Recent payments ┌──────────────┬──────────┬──────────┬───────────┐ │ ID │ Amount │ Currency │ Status │ ├──────────────┼──────────┼──────────┼───────────┤ │ pi_3Ox...abc │ 4,999 │ usd │ succeeded │ │ pi_3Ox...def │ 1,200 │ eur │ succeeded │ └──────────────┴──────────┴──────────┴───────────┘
$ quickbooks invoices create \
--customer-id 1 --amount 1500
✓ Invoice created
{
"Id": "103",
"DocNumber": "INV-1003",
"TotalAmt": 1500.00,
"Balance": 1500.00
} $ billingo invoices list --limit 5 ✓ Found 23 invoices ┌───────┬──────────────┬────────────┬──────────┐ │ ID │ Client │ Amount │ Status │ ├───────┼──────────────┼────────────┼──────────┤ │ 12345 │ Acme Corp │ 1,250 EUR │ paid │ │ 12344 │ Tech Ltd │ 890 EUR │ pending │ └───────┴──────────────┴────────────┴──────────┘
$ nowpayments payment create \
--amount 100 --currency BTC
✓ Payment created successfully
{
"payment_id": "5234523482",
"amount": 0.00234 BTC,
"address": "bc1q...xyz"
} $ nordigen accounts list ✓ Connected accounts (3) HSBC UK | €12,456.78 └─ **** **** **** 1234 Revolut | €8,932.45 └─ **** **** **** 5678
$ klarna order create \ --amount 12999 \ --currency SEK ✓ Order created Session ID: a1b2c3d4-e5f6 Redirect: https://klarna.com/...
$ codat companies list --platform xero ✓ Found 12 companies Acme Corp (UK) ├─ Platform: Xero ├─ Status: Linked └─ Last sync: 2 hours ago
$ ably --help ✓ ably CLI v1.0.0 Usage: ably [command] Commands: auth Authenticate with API list List resources get Get a resource
$ adyen --help ✓ adyen CLI v1.0.0 Usage: adyen [command] Commands: auth Authenticate with API list List resources get Get a resource
$ adyenpayout --help ✓ adyenpayout CLI v1.0.0 Usage: adyenpayout [command] Commands: auth Authenticate with API list List resources get Get a resource
$ amadeus flights search \ --origin JFK --dest LHR ✓ Found 12 flights BA 117 JFK→LHR $542 08:30 AA 101 JFK→LHR $618 22:15
$ apideck --help ✓ apideck CLI v1.0.0 Usage: apideck [command] Commands: auth Authenticate with API list List resources get Get a resource
$ apivideo videos list ✓ Found 8 videos intro.mp4 HD 2:34 public demo.mp4 4K 5:12 private
$ callfire campaigns list ✓ Found 3 campaigns Summer Sale SMS sent 4,521 Follow-up Voice active 1,200
$ chaingateway --help ✓ chaingateway CLI v1.0.0 Usage: chaingateway [command] Commands: auth Authenticate with API list List resources get Get a resource
$ clicksend sms send \ --to +1555000123 \ --message "Hello!" ✓ Message sent (ID: msg_abc123)
$ clickup tasks list --space "Engineering" ✓ Found 14 tasks [TODO] Design new dashboard [DONE] Fix login bug [WIP] Write API docs
$ climatecom --help ✓ climatecom CLI v1.0.0 Usage: climatecom [command] Commands: auth Authenticate with API list List resources get Get a resource
$ elmahio errors list --limit 5 ✓ Recent errors (5) NullRefException 5m ago api/users TimeoutException 12m ago db/query 404 NotFound 1h ago /old-page
$ exchangerate convert \ --from USD --to EUR --amount 100 ✓ 100 USD = 91.45 EUR Rate: 0.9145 (updated 2m ago)
$ faretrotter --help ✓ faretrotter CLI v1.0.0 Usage: faretrotter [command] Commands: auth Authenticate with API list List resources get Get a resource
$ filescom files list /reports ✓ 6 files found Q4-report.pdf 2.1MB 2026-01-15 Q3-report.pdf 1.8MB 2025-10-12
$ firecom accounts list ✓ Business accounts (2) GBP Current £14,320.00 active EUR Current €8,750.00 active
$ fraudlabs order validate \ --ip 1.2.3.4 --email user@test.com ✓ Risk score: 12/100 (LOW) Status: APPROVE
$ govukpay payments list ✓ Found 8 payments pay_abc123 £50.00 success council-tax pay_def456 £25.00 created parking-permit
$ heretracking devices list ✓ Tracking 5 devices truck-01 lat:51.5 lng:-0.1 online truck-02 lat:48.8 lng:2.35 offline
$ hetras --help ✓ hetras CLI v1.0.0 Usage: hetras [command] Commands: auth Authenticate with API list List resources get Get a resource
$ hubspot contacts list --limit 5 ✓ Found 1,240 contacts John Smith Acme Corp john@acme.com Jane Doe Tech Ltd jane@tech.com
$ impalahotels hotels search \ --location London --checkin 2026-03-01 ✓ Found 24 hotels The Grand ★★★★★ £220/night City Inn ★★★ £89/night
$ iotvas --help ✓ iotvas CLI v1.0.0 Usage: iotvas [command] Commands: auth Authenticate with API list List resources get Get a resource
$ mastercardob --help ✓ mastercardob CLI v1.0.0 Usage: mastercardob [command] Commands: auth Authenticate with API list List resources get Get a resource
$ ntropy transactions enrich \ --id txn_abc123 ✓ Enriched transaction Merchant: Starbucks Category: Food & Beverage
$ plaid accounts list ✓ Linked accounts (3) Chase Checking $5,420.00 depository Citi Savings $12,100.00 depository Amex Gold -$430.00 credit
$ pocketsmith --help ✓ pocketsmith CLI v1.0.0 Usage: pocketsmith [command] Commands: auth Authenticate with API list List resources get Get a resource
$ sendgrid email send \ --to user@example.com \ --subject "Hello" \ --template welcome_v1 ✓ Email queued (ID: msg_xyz789)
$ shipengine rates get \ --from 10001 --to 90210 --weight 2lb ✓ 4 rates found UPS Ground $8.42 3-5 days USPS Flat $9.50 2-3 days
$ shotstack render create \ --template intro --format mp4 ✓ Render queued ID: render_abc123 ETA: ~45 seconds
$ smartme devices list ✓ 3 smart meters online Office Meter 42.3 kWh today Server Room 18.7 kWh today
$ spectrocoin --help ✓ spectrocoin CLI v1.0.0 Usage: spectrocoin [command] Commands: auth Authenticate with API list List resources get Get a resource
$ taxamo --help ✓ taxamo CLI v1.0.0 Usage: taxamo [command] Commands: auth Authenticate with API list List resources get Get a resource
$ telnyx sms send \ --from +15550001234 \ --to +15559876543 \ --text "Hello from Telnyx!" ✓ SMS sent (ID: msg_abc123)
$ tisane analyze \ --text "Sample text to analyze" ✓ Analysis complete Language: en Sentiment: positive (0.82)
$ twilio messages send \ --to +15550001234 \ --from +15559998765 \ --body "Hello World!" ✓ Message sent SM abc123xyz
$ upbank accounts list ✓ Up accounts (2) Spending AU$2,150.00 transaction Savers AU$8,400.00 saver
$ vatapi validate --number GB123456789 ✓ VAT number valid Company: Acme Ltd Country: United Kingdom
$ velopay --help ✓ velopay CLI v1.0.0 Usage: velopay [command] Commands: auth Authenticate with API list List resources get Get a resource
$ viator experiences search \ --destination Paris --limit 5 ✓ Found 182 experiences Eiffel Tower Tour ★4.9 $42 Louvre Skip-Line ★4.8 $55
$ vonagesms message send \ --to 15550001234 \ --from 15559998765 \ --text "Hello from Vonage!" ✓ Message sent (status: 0)
$ vonagevoice calls create \ --to 15550001234 \ --from 15559998765 ✓ Call initiated ID: call_abc123 Status: ringing
$ yodlee accounts list ✓ Aggregated accounts (4) Chase Checking $5,200.00 Vanguard 401k $88,400.00 Amex Platinum -$1,240.00
Why CLI over MCP?
Direct API access beats abstraction layers.
Faster
Direct API calls. No server overhead. No protocol parsing.
Cheaper
Zero hosting. Zero per-request fees. Just your API bill.
Simpler
Standard Unix. Pipe, redirect, compose. You know this.
Deterministic
Same input, same output. Every time. No surprises.
Debuggable
See what's happening. Read the code. No black boxes.
Portable
Got Node.js? You're done. No containers. No setup.