All docs
2 min read Last updated:

Install for Claude Desktop

Claude Desktop's built-in Custom Connector picker (Settings → Connectors → Add custom connector) handles OAuth servers natively, but it has no UI for static bearer tokens. Formspring uses bearer tokens, so you wire it up through claude_desktop_config.json using the mcp-remote bridge.

You need Node.js 18+ installed (for npx).

1. Mint a token

Open API tokens, create a token, copy the value (shown once).

A safe starter set of abilities:

forms:read, submissions:read, submissions:write, webhooks:read, insights:read.

Add forms:write or webhooks:write only if the agent should mutate things.

2. Edit claude_desktop_config.json

Platform Path
macOS ~/Library/Application Support/Claude/claude_desktop_config.json
Windows %APPDATA%\Claude\claude_desktop_config.json

Don't edit it inside Claude Desktop - the file is locked while the app is running. Quit first, then open it in your editor.

json
{
  "mcpServers": {
    "formspring": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://formspring.io/mcp-server",
        "--header",
        "Authorization:${AUTH_HEADER}"
      ],
      "env": {
        "AUTH_HEADER": "Bearer your-api-token"
      }
    }
  }
}

Why the ${AUTH_HEADER} indirection: on Windows and inside Cursor's wrapper, spaces inside args aren't escaped reliably. Putting the token in an env var sidesteps that. There's also no space after the colon in Authorization: for the same reason.

3. Restart Claude Desktop

Quit fully (don't just close the window) and relaunch. The Formspring tools appear in the 🔧 tools panel.

Try a prompt

"List my forms."

"Show me the last 25 submissions from my contact form. Highlight anything unusual."

"Triage spam in my contact form."

More in Prompt examples →.

What's next