goodnight000 / api-anything
git clone https://github.com/goodnight000/api-anything.git
Turn any website into an API your agent can call. Learns from the site's own frontend, heals itself when the site changes.
+19
stars, 24h · #759
+~133
stars, 7 days · #927
+1.3k
stars, 30 days · #420
1.3k
★ total · +12% this week
138
forks · 2 open issues
Star history (as recorded here)
LanguageTypeScript
LicenseMIT
Created2026-09-27 (25d ago)
Last push2d ago
Watchers5
OwnerUser
Links
README excerpt
# API Anything **Teach your agent a website once. After that, it calls the site like an API instead of driving a browser.** API Anything watches a site's own page make a request and learns which parts of it are your inputs. It saves the result as an operation. Your agent calls that operation with new inputs over MCP, the CLI or TypeScript, and gets JSON back over plain HTTP. Same agent (Claude Opus 5.5), same prompt, started together. Left: it drives headless Chrome through Playwright MCP. Right: it calls API Anything's Google Flights operation. Shown at 3× speed with no cuts; the timers show real elapsed time. Recorded 2026-09-28. MP4 · how it was recorded Across 5 runs of each task, the agent using API Anything answered 1.5 to 2× sooner, read about half as many tokens, and cost the same or less. All 20 answers were correct. Method, raw numbers and limits. ## Install Paste this into Claude Code, Codex or another coding agent: [code] The agent checks Node 22.13+, builds and installs the `api-anything` command, confirms that a call works, then connects the MCP server and the skill to itself. Restart the agent, then ask it something like "What does Goodreads rate Piranesi?" Install by hand The package isn't on npm yet. Don't use `npm install -g github:...`, because it fails under npm 11. [code] [code] `tier: 1` means plain HTTP with no browser. A failure returns `ok: false` with a `class`, a `reason` and a `next` step. Connect an agent with `codex mcp add api-anything -- api-anything mcp`, `claude mcp add --scope user api-anything -- api-anything mcp`, or this MCP entry: [code] Over MCP an agent **calls** operations, using four tools: `list_sites`, `list_operations`, `call_operation` and `login`. To **create** operations, an agent needs a shell and the skill. A Chromium browser is needed only for creating operations and for the browser tier — Google Chrome by default, or Brave, Edge, Chromium, Vivaldi, Arc; any Chromium executable works via `API_ANYTHING_BROWSER`. Setup details. ## Teach it a new site Give it the page URL with a placeholder, and two example inputs: [code] The headless browser loads the page once for each example. The part of the request that changed with the input becomes a parameter, and the rest is stored as a template. The agent (or you) picks the request and the fields. API Anything builds the template without an LLM. Recorded demos. ## Map a site from an intent Tell an agent what you need from a site. The skill makes it do this, in order: 1. Ask about whatever the request leaves unclear. 2. Propose operations and wait for your approval. 3. Scout each page with `capture --outline`. This is a summary of what each request returns, so the agent doesn't have to read full responses. 4. Build each operation and check it with an input that wasn't an example. Goodreads has had no public API since 2020. One run took 6.3 minutes and $1.19. It produced search, book details, an author's books and reviews: [code] - **Tested