Docs

Documentation

Everything you need to choose a door, set up the right runtime, and connect APIClaw to your agent stack.

Install

Local MCP setup for Claude Desktop, Cursor, and other local clients. The full OS-specific install flow lives on the install page.

Auto-install to Claude Desktop

Or run the MCP server directly

Bare npx @nordsym/apiclaw (no subcommand) does the same thing.

OS-specific commands for macOS, Windows, and Linux live in the install guide. Use this page as the hub, not the full manual.

Auth

One command, every door. Opens your browser, one-tap sign-in via Clerk (Google or passwordless email), writes ~/.apiclaw.toml with mode 0600. The same file is read by the local MCP server, CLI, and HTTP gateway. Remote MCP uses its own OAuth 2.1 + DCR flow.

Canonical flow

If you are already signed into Clerk in your browser there is no inbox round-trip, no key copy-paste, no dashboard visit.

Switch accounts

Show current identity

Headless server or SSH

Run npx @nordsym/apiclaw auth login on the server, then open the printed sign-in URL on your own device. Finish sign-in and return to the same terminal. Your session stays in ~/.apiclaw.toml; never paste it into chat.

For MCP clients: agent_auth_required action

When the APIClaw MCP server has no local session, every tool returns a JSON payload with action: "agent_auth_required" and the exact CLI command to run. Show the sign-in URL to the human, wait for authorization, then run auth whoami before calling an API.

CLI

Terminal-native use for Codex, scripts, and CI/CD. Codex is one example, not the whole category. Run npx @nordsym/apiclaw auth login first (see Auth above), then use the direct commands below.

Buzz and other ACP (Agent Client Protocol) clients spawn npx @nordsym/apiclaw acp over stdio instead.

Direct tool parity

npx @nordsym/apiclaw call nasa/apod --params '{}'
npx @nordsym/apiclaw call frankfurter/latest --params '{"path":"/latest"}'

Install APIClaw into Codex / Cursor / Windsurf

Check status

Shows CLI path, auth status, connection health, and all client configurations.

HTTP

Sign in once with npx @nordsym/apiclaw auth login. Every execution uses POST https://api.apiclaw.cloud/v1/execute, the X-APIClaw-Session header, and a JSON body with provider, action, and params.

Read your session locally

After login, run this in your own terminal. Keep the session private.

npx @nordsym/apiclaw auth whoami || exit 1
SESSION=$(node -e 'const fs=require("fs"),os=require("os"),p=require("path");const t=p.join(os.homedir(),".apiclaw.toml");const m=fs.existsSync(t)&&fs.readFileSync(t,"utf8").match(/session_token\s*=\s*"([^"]+)"/);if(!m||!m[1].trim())process.exit(1);process.stdout.write(m[1])')
if [ -z "$SESSION" ]; then echo "Sign in first: npx @nordsym/apiclaw auth login"; exit 1; fi

Make your first free call

curl -sS --fail-with-body --max-time 30 https://api.apiclaw.cloud/v1/execute \
  -H "Content-Type: application/json" \
  -H "X-APIClaw-Session: $SESSION" \
  -H "Idempotency-Key: docs-nasa-$(date +%s)" \
  -d '{"provider":"nasa","action":"apod","params":{}}'

An HTTP 200 with an APOD title means it worked. No card needed. If NASA is temporarily unavailable, use the Frankfurter example below.

Legacy sk-claw-... workspace keys are for existing integrations. New integrations use the session flow above.

Remote MCP

Connected clients go through your workspace. Sign in first, then open Integrations to add or edit a connector. Grok, ChatGPT, Cursor, and other OAuth-capable clients fit here.

  1. Step 1

    Free email signup

    Required for every door.

  2. Step 2

    Workspace

    Same auth, same logs, same gateway.

  3. Step 3

    Integrations

    Generate a connector for your client.

Bring your own key

You do not need your own keys. APIClaw's point is one sign-in, no key collecting. If your workspace already has its own OpenRouter key, you can add it in Workspace, Settings, Your keys, and route calls through it for free: no card, no markup, OpenRouter bills your workspace directly instead of going through the built-in rail. Today this covers an OpenRouter key for POST /v1/chat/completions, not every provider.

Your APIClaw session authenticates your client. A provider key is different: it is the workspace's own credential for an upstream provider, kept encrypted server-side and never returned decrypted.

Examples

NASA Astronomy Picture of the Day

curl -sS --fail-with-body --max-time 30 https://api.apiclaw.cloud/v1/execute \
  -H "Content-Type: application/json" \
  -H "X-APIClaw-Session: $SESSION" \
  -H "Idempotency-Key: docs-nasa-$(date +%s)" \
  -d '{"provider":"nasa","action":"apod","params":{}}'

Use the same nonempty $SESSION from the HTTP setup above.

Latest EUR exchange rates

curl -sS --fail-with-body --max-time 30 https://api.apiclaw.cloud/v1/execute \
  -H "Content-Type: application/json" \
  -H "X-APIClaw-Session: $SESSION" \
  -H "Idempotency-Key: docs-frankfurter-$(date +%s)" \
  -d '{"provider":"frankfurter","action":"latest","params":{"path":"/latest"}}'

Use the same nonempty $SESSION from the HTTP setup above.

Tools Reference

apiclaw_help

Get help and see all available commands. Start here if you're new.

apiclaw_help()

discover_apis

Search 27,483 indexed API definitions and approved community listings using natural language.

discover_apis({
  query: "send alerts to Sweden",
  max_results: 5
})

Parameters

  • query: Natural language description
  • category: Filter: communication, search, ai
  • max_results: Number of results (default: 5)
  • region: Filter by region (e.g., "sweden")

get_api_details

Get detailed information about a specific API.

get_api_details({
  api_id: "nasa"
})

get_connected_providers

List all built-in providers (no API key needed).

get_connected_providers()

Currently available

  • nasa: Astronomy Picture of the Day, free
  • github: Public GitHub data, free
  • openrouter: Approved managed models

Verified open APIs such as Frankfurter use the same execute endpoint. Discovery entries are not execution promises.

call_api

Execute an API call through a built-in provider.

call_api({
  "provider": "nasa",
  "action": "apod",
  "params": {}
})

list_categories

Browse all API categories (30 main categories).

list_categories()

Catalog numbers

Source verification is not execution: a source-verified entry passed a reachability check, not a customer call.

  • 27,483 indexed API definitionsDiscoverable by agents via the catalog.
  • 1,087 callable nowWhat a workspace can execute today, including 3 managed providers. Keyless public origins are Free; managed providers use the bounded trial and then PAYG where resale is supported.
  • 689 source-verifiedPassed a live reachability check against the source. Not a claim of execution.

Support

Need help? Reach out.

List your API on APIClaw

APIClaw indexes 27,483 API definitions, plus approved community listings, and 689 have source-verified definitions. Callable readiness is shown separately. Adding yours takes one OpenAPI spec and a free email signup.

  1. 01

    Use the same workspace

    Sign in at apiclaw.cloud/workspace. The same workspace covers your discoverable listing and any agent calls you make.

  2. 02

    Submit your spec

    Open Workspace → Catalog → My APIs → Add API. Paste a public HTTPS OpenAPI URL or upload a JSON/YAML file. OpenAPI 3.0/3.1 and Swagger 2.0 are supported, up to 1 MB and 200 operations. External references must be bundled.

  3. 03

    Save and submit for review

    Check the imported name, description, URLs, operations, authentication, and provider pricing. Save the draft, then select Submit for review. Submitting notifies the APIClaw review team. We review the metadata and your right to represent the API. Pending drafts stay private.

  4. 04

    Live and discoverable

    After approval, find the listing under Catalog → All APIs or use discover_apis({ query: "your API name", callable_only: false }). Callable-only results exclude discovery listings. Check review status in My APIs; corrections require a new review.

  5. 05

    Keep control of your API

    A discovery listing does not enable gateway execution, store API credentials, or activate APIClaw billing. Users follow your documentation and use their own provider account. You can unpublish from My APIs.

Always free

Discovery listings are free. No API key or payment method is needed to submit one.

List your API