Mock Anything Launch Sun 1 Nov

A working twin
of any API.

Your app and your agents use it like the real thing. No keys, no sign-up, no bill.

The twin's own dashboard, recorded while the stripe npm package talked to it.

Pick a card. The twin approves.

The same test values the provider documents, the same answers back. Switch the card and watch the response change.

POST /v1/payment_intents  amount=4200
→ 200  "status": "succeeded"

It remembers.

pi_ogVuWddfjgJP

$42.00

requires_payment_method

First your code creates the payment.

pi_ogVuWddfjgJP

$42.00

succeeded

customer · cus_kNucvv0HWDTS

Then the twin confirms it.

evt_payment_intent.succeeded

200

delivered · signed

Stripe-Signature t=…,v1=…

Then the webhook lands, signed.

pi_ogVuWddfjgJP

$30.00 left

refunded $12.00

charge.refunded · sent

Later you refund part of it.

See every request.

Each twin opens a local dashboard: requests and responses, webhook deliveries, stored state, and the switches for scenarios and chaos.

Any API, by name.

Seven hand-tuned packs, 54 APIs from the provider's own current spec, 2,528 from the public APIs.guru directory, your own OpenAPI file, or a recording of your traffic. Mock Anything reads it and builds the twin itself.

APIs you can run as a twin
APIWhat it coversSourceCommand
Built-in packs
StripePayments, refunds, Checkoutpack
PaystackTransactions, saved cardspack
TwilioSMS and status callbackspack
ResendEmail, bounces, schedulingpack
GitHubIssues, comments, pull requestspack
AnthropicMessages, streaming, tool use, canned repliespack
OpenAIChat, responses, streaming, canned repliespack
Any other API, by name
SlackSlack Web APIinferred
NotionNotion APIinferred
SpotifySpotify Web APIinferred
JiraJira Cloud platforminferred
AsanaAsana APIinferred
Your own
Your specOpenAPI 3 or Swagger 2file or URL
A recordingHAR from DevTools or a proxyfile
Just the docsYour agent writes the twinMCPtwin_from_docs(url)

Break it on purpose.

Turn on chaos and the twin misbehaves like a provider on a bad day. Flip a switch and watch what your app would get.

Your app → Stripe twin
    Simulated in your browser with the twin's own chaos modes. Flip a switch below and watch.

    Requests time out.

    Some requests hang until your client gives up.

    The provider has a bad day.

    500, 502 and 503, in the provider's own error shape.

    You hit the rate limit.

    429 with Retry-After, so your backoff gets tested.

    Webhooks arrive twice.

    The same event, delivered twice. Is your handler idempotent?

    Events come out of order.

    Shuffled deliveries, the way real queues behave.

    Same seed, same failures. 48 real requests to a Stripe twin at --chaos --seed 42. Orange is an error, grey a slow answer. We ran it twice and got this strip both times.

    Your agent runs it.

    Mock Anything ships as an MCP server. Claude Code, Cursor and other agents can start a twin mid-task, force a decline, turn on chaos and read back exactly what happened.

    “Start a Stripe twin, build the checkout, then force a declined card and make sure we handle it.”

    Eleven tools: start, read from docs, events, state, scenarios, chaos, webhooks, emit, clock, reset, stop.

    Checked with the official SDKs.

    2,528 of 2,528

    APIs in the public directory start a twin. 37,770 calls, no server errors. Measured 29 Oct 2026.

    Nothing real leaves your machine.

    Questions.

    Is Mock Anything affiliated with Stripe, Twilio or the other providers?

    No. Mock Anything is an independent, free, non-commercial project. Provider names are used only to say which API a twin is compatible with. Twins are built from public API facts, not from any provider's code or documentation text.

    Do I need an account or API key?

    No. Any placeholder key works, for example sk_test_mockanything. Live keys are refused.

    Does anything I send leave my machine?

    No. The twin runs locally and answers from memory. The only outbound traffic is the webhooks you point at your own app, fetching an API description when you ask for one by name or URL, and the sandbox calls verify makes when you run it with your own test key.

    Which APIs work?

    Anything with an OpenAPI or Swagger description, the 2,529 APIs listed by name in the public APIs.guru directory, the built-in packs, HAR recordings of your own traffic, and APIs your agent describes from their documentation.

    How close is a twin to the real API?

    Run npx @shipatmidnight/mockanything verify stripe --key sk_test_…. It makes the same calls to the twin and to the provider's sandbox and compares status codes, fields, types, id formats and error codes. Live keys are refused, and the report holds field names, never your data.

    Does a twin remember data after a restart?

    With --persist, yes. Objects, ids, the test clock and the webhook secret are saved to a file only you can read.

    Can I use it in CI?

    Yes. Start a twin before your tests and point your SDK's base URL at it. Use --seed to make chaos runs repeatable.

    How do I add a provider?

    Packs are plain YAML. The contributing guide in the repository explains the rules: facts only, no branding, and a test with the official SDK.

    Start a twin

    Copies npx @shipatmidnight/mockanything stripe. The package goes live at launch, Sunday 1 November, midnight.