SaaSFlow
DevelopersMCP

Connect a client

Add the SaaSFlow MCP server to Claude, ChatGPT, Cursor, or your own client.

Every client talks to the same endpoint over HTTPS:

https://api.saasflow.com/mcp

Most clients only need that URL. They discover the auth flow from the endpoint itself (RFC 9728 metadata at /.well-known/oauth-protected-resource/mcp), register themselves, and send you to app.saasflow.com to sign in and approve.

By client

ClientSetup
Claude (web, desktop, mobile)Settings → Connectors → Add custom connector, paste the URL.
ChatGPTAdd it as a connector. Same URL, same OAuth flow.
Claude Codeclaude mcp add --transport http saasflow https://api.saasflow.com/mcp
Cursor{ "mcpServers": { "saasflow": { "url": "https://api.saasflow.com/mcp" } } } in .cursor/mcp.json
Your own clientStreamable HTTP transport, bearer auth. See OAuth for apps.

A client that speaks only stdio can bridge to the endpoint:

{
    "mcpServers": {
        "saasflow": {
            "command": "npx",
            "args": ["-y", "mcp-remote", "https://api.saasflow.com/mcp"]
        }
    }
}

mcp-remote is a third-party bridge, not a SaaSFlow package.

OAuth

FieldValue
Authorization endpointhttps://api.saasflow.com/auth/oauth2/authorize
Token endpointhttps://api.saasflow.com/auth/oauth2/token
Resourcehttps://api.saasflow.com/mcp
Scopessaasflow:read, saasflow:write

Issued tokens have audience https://api.saasflow.com/mcp. SaaSFlow stores the consent grant; revocation from Settings → API keys invalidates the token in real time.

ScopeGrants
saasflow:readAll :read permissions, intersected with your user permissions.
saasflow:writeReads + :write permissions. Admin (:manage) is never granted via OAuth.

saasflow:read is enough for questions and analysis. Write tools are registered only when the token carries saasflow:write.

API keys

For scripts, CI, and clients that would rather send a fixed header than run a browser flow, pass an API key as the bearer token:

Authorization: Bearer sf_live_...

A key belongs to one company, so tool calls can omit companyId. Write tools are registered, bounded by the key's permission set.

Get a token for testing

The saasflow CLI can mint an OAuth bearer:

saasflow login
# Then to print a fresh access token:
saasflow whoami --json | jq -r '.oauth.accessToken'

Useful when wiring up a custom MCP client.

Revoke

Open Settings → API keys in the SaaSFlow app. OAuth consent grants are listed alongside API keys, and revoking is immediate.

On this page