{"ok":true,"site":{"host":"getundercut.sh","url":"https://getundercut.sh/developers","type":"live","desc":"Undercut has a read-only, unauthenticated public JSON API and MCP server over data it already publishes, described by an OpenAPI 3.1 spec and an MCP Server Card. No SDK or write endpoints yet.","tools":[{"name":"list_supported_clients","kind":"answer","impl":"imperative","description":"List every coding agent (client) Undercut has a verified install guide for: slug, display name, and guide URL. Read-only; reads /clients.json, the same list the site renders.","title":"List supported coding agents","annotations":{"readOnlyHint":true,"untrustedContentHint":false,"consequentialHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/developers","pages":["/developers","/setup","/"]},{"name":"get_client_install_instructions","kind":"answer","impl":"imperative","description":"Get the install options and exact shell commands for Undercut's free SKILL.md in one coding agent, taken from that agent's own install guide on this site. Accepts a slug or a display name (e.g. \"codex\", \"Claude Code\", \"Cursor\"). Read-only; nothing is installed.","title":"Get install instructions for one coding agent","annotations":{"readOnlyHint":true,"untrustedContentHint":false,"consequentialHint":false},"inputSchema":{"type":"object","properties":{"client":{"type":"string","description":"Client slug or name, e.g. \"claude-code\", \"Codex CLI\", \"cursor\". Call list_supported_clients for the full list."}},"required":["client"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/developers","pages":["/developers","/setup","/"]},{"name":"get_segment_recommendation","kind":"answer","impl":"imperative","description":"Given the coding agent someone uses and how they pay for model access, return the honest segment write-up the /setup page would show (what Undercut adds, the OpenRouter framing, and the caveat), or the 'not yet researched' answer when that tool has not been covered. Read-only; reads /segments.json.","title":"Which Undercut segment fits a setup","annotations":{"readOnlyHint":true,"untrustedContentHint":false,"consequentialHint":false},"inputSchema":{"type":"object","properties":{"client":{"type":"string","description":"Client slug or name, e.g. \"claude-code\", \"Cursor\", \"opencode\"."},"provider_setup":{"type":"string","enum":["subscription_only","subscription_plus_key","api_billing_only"],"description":"How they pay for model access today on that tool: subscription_only (just the tool's bundled subscription), subscription_plus_key (that subscription plus their own provider key such as OpenRouter), or api_billing_only (per-token API billing, no subscription)."}},"required":["client","provider_setup"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/developers","pages":["/developers","/setup","/"]},{"name":"get_pricing","kind":"answer","impl":"imperative","description":"Get Undercut pricing as published in /pricing.md: Pro, Teams, Enterprise, and Free, with status, guarantee, and what each includes. Optionally one tier. Read-only; this does not start a trial or checkout (those are on the page itself, by a person).","title":"Get Undercut pricing","annotations":{"readOnlyHint":true,"untrustedContentHint":false,"consequentialHint":false},"inputSchema":{"type":"object","properties":{"tier":{"type":"string","enum":["pro","teams","enterprise","free"],"description":"Optional: return just this tier."}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/developers","pages":["/developers","/setup","/"]},{"name":"get_policy_summary","kind":"answer","impl":"imperative","description":"Summarize Undercut's routing policy (a free, MIT-licensed SKILL.md a coding agent follows at dispatch time): what it is, when it fits and when it does not, how to install it, and where the full policy file lives. Read-only; reads /llms.txt.","title":"What Undercut is and when to use it","annotations":{"readOnlyHint":true,"untrustedContentHint":false,"consequentialHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/developers","pages":["/developers","/setup","/"]},{"name":"get_benchmark_summary","kind":"answer","impl":"imperative","description":"Return Undercut's published benchmark summary (cost change at equal-or-better pass rate on public benchmarks, per vendor) exactly as the site states it, with links to the methodology and raw results in the repo's testing/ directory. Read-only; reads /llms.txt.","title":"Get published benchmark results","annotations":{"readOnlyHint":true,"untrustedContentHint":false,"consequentialHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/developers","pages":["/developers","/setup","/"]},{"name":"find_your_setup_segment","kind":"answer","impl":"declarative","description":"Find the honest Undercut segment for one setup: pick the coding agent you use and how you pay for model access today, and the page shows what Undercut adds for that setup, read from segments.json. Read-only: nothing is sent or saved.","inputSchema":{"type":"object","properties":{"uc-editor":{"type":"boolean"},"uc-provider":{"type":"boolean"}},"required":["uc-editor","uc-provider"]},"__source":"spec","__declarative":true,"page":"/setup","pages":["/setup"]},{"name":"start_pro_trial","kind":"transact","impl":"declarative","description":"Start an Undercut Pro trial by submitting an email address. We follow up from there by email; nothing is charged during the trial.","inputSchema":{"type":"object","properties":{}},"__source":"spec","__declarative":true,"page":"/","pages":["/"]},{"name":"start_teams_onboarding","kind":"act","impl":"declarative","description":"Open the Undercut Teams onboarding flow: three intake fields, then request one of the founder's published onboarding windows, or a follow-up if none are open. Onboarding is run personally by the founder.","inputSchema":{"type":"object","properties":{}},"__source":"spec","__declarative":true,"page":"/","pages":["/"]},{"name":"contact_enterprise","kind":"transact","impl":"declarative","description":"Start an Undercut Enterprise conversation by submitting a work email address. Enterprise is scoped per contract; the founder replies by email.","inputSchema":{"type":"object","properties":{}},"__source":"spec","__declarative":true,"page":"/","pages":["/"]}],"category":"Developer Tools","favicon":"/favicons/getundercut.sh.png","apiSurface":"spec","toolCount":10}}