Stacklink

Connect your agent

Add Stacklink to Cursor, VS Code, Claude, Codex, or another remote MCP client.

Use this path when your AI app supports remote MCP. You do not create a Stacklink session or API key before connecting.

Stable project connector URL
→ Stacklink OAuth
→ authenticated initialize
→ tools/list
→ Connected

The connector URL identifies one Stacklink project and one client type. It is safe to place in an installation link because it contains no API key and no runtime session ID. It also contains no OAuth token or provider secret.

  1. Open the project Overview.
  2. Select Connect an app.
  3. Choose Cursor, VS Code, Claude, or Codex.
  4. Approve adding Stacklink in the client.
  5. Sign in to Stacklink and approve the project.
  6. Wait until the client completes initialize and tools/list.

Overview shows Connected only after Stacklink receives the real authenticated protocol events. Opening an app or completing a browser redirect is not treated as proof of connection.

Client behavior

Cursor

Choose Add to Cursor in Overview. The installation link contains only the stable Stacklink resource URL. Cursor displays its own server review screen, discovers Stacklink OAuth, and opens the Stacklink consent page.

If the installation link is blocked, choose Manual setup in Overview and copy the generated HTTP MCP configuration.

Choose Install in VS Code in Overview. VS Code reviews the Streamable HTTP server definition before saving it. Authentication then uses the same Stacklink OAuth flow.

If VS Code is not installed, install it first and retry the Overview action. Stacklink does not treat opening the vscode: URI as connection proof.

Claude

Choose Open Claude Connectors. Overview copies the stable URL and opens Claude's Connectors settings. Add a custom web connector, paste the URL, and choose Connect.

Claude connects from Anthropic's cloud, so the Stacklink endpoint must use public HTTPS. It cannot connect to a localhost-only server. Team and Enterprise workspaces may require an owner to add the connector before individual members authenticate.

Codex

Choose Copy Codex MCP URL. In Codex Settings, add a Streamable HTTP MCP server named stacklink, paste the URL, save it, and choose Authenticate. Restart the client if Codex asks you to reload MCP configuration.

The desktop app, CLI, and IDE extension share Codex MCP configuration. Keep terminal commands under advanced setup; the primary Overview action remains app-oriented.

Choose Other MCP client under advanced setup and copy the stable resource URL. The client must support Streamable HTTP and the MCP OAuth discovery flow.

Stacklink calls a client certified only after its exact installation, OAuth, initialize, tools/list, harmless tool call, revocation, and reconnect flow has passed on staging.

Authentication and sessions

The client first contacts Stacklink without a token. Stacklink returns 401 Unauthorized with protected-resource metadata. The client discovers the authorization server, uses authorization code plus PKCE, and receives a project-scoped OAuth token after consent.

The token is stored by the MCP client. Stacklink creates or resumes the internal runtime session only after the authenticated initialize request arrives. The session ID remains backend plumbing and never appears in the installed client configuration or tool schemas.

Provider accounts are separate

Connecting the AI app proves that the client can see Stacklink tools. It does not automatically connect Gmail, Slack, Linear, or other provider accounts.

When a tool needs a provider account that is not connected, Stacklink returns a connection-required result. Complete that provider's authorization flow, then retry the tool. See Connect an account.

Revoke or reconnect

Revoke an installation from Stacklink project settings. Revocation invalidates the exact client grant and closes its bound runtime session. The client must authenticate again before it can list or call tools.

If setup is cancelled before authenticated initialize, Stacklink leaves no unused runtime session. An abandoned launch intent expires automatically.

Troubleshooting

SymptomCheck
Client never asks to authenticateConfirm it supports remote Streamable HTTP MCP and that the resource URL is public HTTPS
OAuth page rejects the requestConfirm the client redirect URI and requested resource match exactly
Overview stays on waitingThe client has not completed authenticated initialize and tools/list
Tools appear but a provider call failsConnect the required provider account or request the needed approval
Revoked client still appears locallyRemove or reconnect the saved MCP server in the client; the old token remains invalid server-side

For protocol details, continue to MCP server.

On this page