Hosted · Streamable HTTP · OAuth 2.1

pm-mcp

The canonical remote MCP endpoint for the pm ecosystem. Connect ChatGPT, coding agents, and IDEs to the same private projects available in pm-web and pm-gpt.

Endpointhttps://pm-mcp.unbrained.dev/mcp

How it works

Use the hosted endpoint directly. Do not install or launch the local pm-mcp shipped with pm CLI when you want hosted, synchronized data.

1. Add the server

Use https://pm-mcp.unbrained.dev/mcp with the client’s Streamable HTTP transport.

2. Sign in

Your client discovers OAuth metadata automatically. Complete Authorization Code + PKCE in the browser. GitHub is not required.

3. Choose a workspace

Ask the agent to list pm workspaces before reading or changing project items.

One live dataset. Changes flow between this endpoint, ChatGPT, Codex, and pm-web. Access is enforced per owner, direct share, and group share.

Copy & paste client configurations

These examples use each client’s native remote HTTP support. On first connection, follow its OAuth prompt. Never paste passwords, access tokens, or client secrets into configuration files.

Codex CLI / desktop / IDE

~/.codex/config.toml

[mcp_servers.pm_gpt]
url = "https://pm-mcp.unbrained.dev/mcp"
auth = "oauth"
oauth_resource = "https://pm-mcp.unbrained.dev"
scopes = ["openid", "profile", "pm.identity", "pm.workspace.read", "pm.workspace.write", "pm.items.read", "pm.items.write"]

[mcp_servers.pm_gpt.oauth]
client_id = "pm-gpt-openai"

Run codex mcp login pm_gpt after saving, then start a new session.

Claude Code

Run in a terminal

claude mcp add --transport http --scope user pm-gpt https://pm-mcp.unbrained.dev/mcp
# Then open Claude Code and run /mcp to sign in.

Open /mcp inside Claude Code and select pm-gpt to authenticate.

VS Code + GitHub Copilot

.vscode/mcp.json or user MCP configuration

{
  "servers": {
    "pm-gpt": {
      "type": "http",
      "url": "https://pm-mcp.unbrained.dev/mcp",
      "oauth": {
        "clientId": "pm-gpt-openai"
      }
    }
  }
}

VS Code opens the browser automatically and uses the predefined public OAuth client.

Cursor

.cursor/mcp.json or ~/.cursor/mcp.json

{
  "mcpServers": {
    "pm-gpt": {
      "url": "https://pm-mcp.unbrained.dev/mcp"
    }
  }
}

Cursor supports remote Streamable HTTP and launches its OAuth flow when required.

Windsurf / Cascade

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "pm-gpt": {
      "serverUrl": "https://pm-mcp.unbrained.dev/mcp"
    }
  }
}

Refresh MCP servers in Windsurf Settings, then complete OAuth when prompted.

Zed Agent

Zed settings.json

{
  "context_servers": {
    "pm-gpt": {
      "url": "https://pm-mcp.unbrained.dev/mcp"
    }
  }
}

With no Authorization header, Zed automatically starts the standard MCP OAuth flow.

ChatGPT app

Enable Developer mode under Settings → Security and login. In Settings → Plugins, create a developer app using https://pm-mcp.unbrained.dev/mcp. Select OAuth with static credentials, use public client ID pm-gpt-openai, and leave the client secret empty.

Compatibility notes

The endpoint implements MCP Streamable HTTP and requires clients to accept JSON and server-sent events. OAuth discovery is published at the protected-resource metadata endpoint. Clients without documented native remote HTTP plus OAuth support are not listed because a static bearer token would weaken account security. JetBrains AI Assistant documents remote Streamable HTTP, but its current MCP guide does not document standard MCP OAuth, so it is intentionally omitted.