MCP server

Connect Claude Code, Codex, Cursor, ChatGPT and any MCP client to Wabi.

The MCP server is at https://getwabi.dev/api/mcp over streamable HTTP. It exposes one tool per op, with the op's description and input schema, and marks read-only and destructive tools so clients can auto-approve reads and confirm the rest. A coding agent connected to it can do anything your team does in the dashboard, within the role and scopes of its credential.

Authentication

  • OAuth (recommended): clients that support MCP authorization connect without a key. The server answers 401 with a pointer to its protected resource metadata; the client signs you in through the browser and asks which organization to use if you belong to several.
  • API key: send Authorization: Bearer wabi_…. Create keys in Integrations, with npx @meterapp/wabi login, or with the create_api_key op. A key acts with its creator's role, narrowed to its scopes.

No account yet? The catalog server at https://getwabi.dev/api/mcp/catalog needs no credential and serves only get_pricing and create_checkout_link, so an agent can quote prices and hand a person a checkout link before signup.

Setup

Claude Code

claude mcp add --transport http wabi https://getwabi.dev/api/mcp

Then type /mcp, pick the server and authenticate in your browser. With a key instead:

claude mcp add --transport http wabi https://getwabi.dev/api/mcp \  --header "Authorization: Bearer wabi_…"

Codex

~/.codex/config.toml
# ~/.codex/config.toml
[mcp_servers.wabi]
url = "https://getwabi.dev/api/mcp"
bearer_token_env_var = "WABI_API_KEY"

Export WABI_API_KEY in the environment Codex runs in.

Cursor

.cursor/mcp.json
{  "mcpServers": {    "wabi": {      "url": "https://getwabi.dev/api/mcp",      "headers": {        "Authorization": "Bearer wabi_…"      }    }  }}

ChatGPT and other clients

Add a custom connector with the URL https://getwabi.dev/api/mcp; it signs in with OAuth. Any client that speaks streamable HTTP works with the URL and an Authorization header:

{  "mcpServers": {    "wabi": {      "type": "http",      "url": "https://getwabi.dev/api/mcp",      "headers": {        "Authorization": "Bearer wabi_…"      }    }  }}

For hosts that only speak stdio, the CLI bridges to the hosted server:

{  "mcpServers": {    "wabi": {      "command": "npx",      "args": [        "-y",        "@meterapp/wabi",        "mcp"      ],      "env": {        "WABI_API_KEY": "wabi_…"      }    }  }}

Things to ask

  • “What is left to set up in Wabi? Do the next step.” (the agent reads get_onboarding)
  • “Show me the sandbox and make a test customer ask where their order is.”
  • “Which conversations are waiting for a reply, and whose window closes in the next two hours?”
  • “Draft a booking confirmation template in English, Spanish and French and submit it.”
  • “How many messages and AI replies have we used this month, and what will Meta charge us?”

Some of these depend on ops that are still being built; the API reference lists what is live, and the server's tool list always matches it. Agents should read agents.md for the rules, such as never buying a plan without a person's approval.