Sail

Set up the Sail MCP server

Sail’s docs run on ReadMe, which gives every project a Model Context Protocol (MCP) server for free. Once your AI assistant is connected, it can search and inspect every endpoint in the Sail API straight from the OpenAPI spec, and — if you choose to allow it — call the live Sail API on your behalf. No separate account or sign-up needed.

Scoped to the API reference

The MCP server searches Sail’s API endpoints (everything generated from the OpenAPI spec — Users, Connections, Accounts, Expenses, Webhooks, and so on). It doesn’t search prose pages like the Guides or Concepts group — for those, point your assistant at the page directly or keep using the site’s regular search.

What you get

Find the right endpoint

Ask a question in plain language and get pointed to the exact Sail endpoint that answers it, pulled from the live OpenAPI spec, not a stale training-data guess.

Look up endpoints

List and inspect any Sail endpoint, including parameters, request/response schemas, and required scopes.

Call the live API

Optionally let your assistant execute a real request against the Sail API using your own credentials.

Quick setup

The Sail MCP server lives at:

https://docs.savewithsail.com/mcp

Docs hosted somewhere else?

If your Sail docs are served from a different domain, or ReadMe’s default *.readme.io subdomain, use that instead — the path is always /mcp.

Pick your tool below. No authentication is required for search and lookup — you’ll only need to add credentials if you want the execute-request tool to make real API calls.

Run:

claude mcp add --transport http sail https://docs.savewithsail.com/mcp

Go to Settings → Connectors → Add custom connector, then enter:

  • Name: Sail
  • URL: https://docs.savewithsail.com/mcp

Add to your project’s or global mcp.json:

{
  "mcpServers": {
    "sail": {
      "url": "https://docs.savewithsail.com/mcp"
    }
  }
}

Add to .vscode/mcp.json:

{
  "servers": {
    "sail": {
      "type": "http",
      "url": "https://docs.savewithsail.com/mcp"
    }
  }
}

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "sail": {
      "serverUrl": "https://docs.savewithsail.com/mcp"
    }
  }
}

Restart your editor or start a new chat, then confirm the connection by asking something only Sail’s API reference would know, like “What scope does Get Account & Routing Numbers need?”

Available tools

ToolWhat it does
search-endpointsFinds the Sail API endpoints relevant to a natural-language question, so your assistant doesn’t have to guess which one answers it.
list-endpointsLists every endpoint in the Sail API, straight from the OpenAPI spec.
get-endpointReturns full detail for one endpoint: parameters, request/response schema, required scopes, and examples.
get-server-variablesLooks up server and environment variables defined in the spec, like Sail’s live base URL.
execute-requestExecutes a real request against the Sail API using the credentials you provide. See Executing live requests.

Executing live requests

execute-request lets your assistant make real calls against https://live.savewithsail.com/api/v1, not just read about them. To enable it, add your Sail API key as a header when you configure the server:

{
  "mcpServers": {
    "sail": {
      "url": "https://docs.savewithsail.com/mcp",
      "headers": {
        "Authorization": "Bearer sk_live_..."
      }
    }
  }
}

Treat this like any other API key

Anything wired into your MCP config can be read by your assistant and any tool it calls. Use a key scoped to only what you need — see Scoped API Keys — and never paste a key into a shared or public config file.

If you’d rather keep your assistant read-only, most clients let you disable individual tools. Turn off execute-request and it can still search and read the API reference, but it will never call the live API.

Troubleshooting

The server doesn't show up in my tool list #

Confirm your config’s JSON is valid — no trailing commas, every brace closed — then restart your editor or start a new session.

Answers seem out of date #

Start a new conversation. MCP results reflect the latest published docs, but a long-running chat may still be reasoning from what it read earlier.

execute-request calls are failing #

Check that the header carrying your API key is set correctly, and that the key has the scope the endpoint needs. See Authentication.

My docs are private and the server won't connect #

Private ReadMe projects need an additional auth header carrying your site password or ReadMe API key, separate from your Sail API key.

Get better answers

Ask specific, endpoint-shaped questions instead of broad ones:

  • Weaker: “How does Sail work?”
  • Stronger: “What parameters does Create Hosted Session require?”

Next steps