Skip to main content
Alchemist’s MCP server supports OAuth 2.0. In Claude Code you add the server with no credential at all and sign in with your Alchemist account — the same way you’d connect Sentry or any other OAuth MCP server.
You need an Alchemist account first. OAuth signs you in as an existing Alchemist user. If you’ve never signed in at app.askalchemist.com, do that once before connecting — otherwise the server returns 401 even after a successful sign-in.

Claude Code

1. Add the server

No API key, no header. Alchemist advertises its authorization server via WWW-Authenticate, so Claude Code discovers it and registers itself automatically.

2. Sign in

Inside Claude Code:
Pick alchemist, choose Authenticate, and complete the sign-in in your browser. Alchemist then shows as connected. You can also do this from your shell without opening a session:
Add --no-browser when you’re on a remote box with no display — it prints the URL and prompts you to paste the redirect back.

Share it with your team

Use --scope project to write the server into a .mcp.json that you check into version control. Each teammate still signs in individually with their own Alchemist account:
.mcp.json

API key instead of OAuth

OAuth needs an interactive browser step, so it can’t run in CI or in a non-interactive claude -p job. For those, pass an API key as a header instead:
These two are mutually exclusive. If you set an Authorization header, Claude Code will not fall back to OAuth when the server rejects it — the server just shows as failed. If you added the header and want the OAuth flow instead, remove the server and re-add it without --header.
In a checked-in .mcp.json, reference the key through an environment variable rather than hardcoding it — Claude Code expands ${VAR} inside headers:
.mcp.json
Get a key at app.askalchemist.com/settings/api-keys.

Claude.ai

Remote MCP servers are added as custom connectors, not in a config file.
  1. Go to claude.ai/customize/connectors (Team and Enterprise: Admin settings → Connectors, owners only).
  2. Click Add custom connector.
  3. Enter the URL: https://api.askalchemist.com/mcp/
  4. Click Add, then Connect and sign in with your Alchemist account.
Leave Advanced settings alone. The OAuth Client ID and Client Secret fields there are optional — Alchemist supports Dynamic Client Registration, so Claude registers itself. Only fill them in if you’ve been issued dedicated credentials.
Connectors you add on claude.ai also appear in Claude Code automatically — but only when Claude Code is authenticated with that same claude.ai subscription login. They are not loaded when ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN, apiKeyHelper, or a provider like Bedrock or Vertex is the active auth method. Run /status to check which one is active.

API key instead of OAuth

If you’d rather use a shared API key than have each person sign in, open Request headers in the Add custom connector dialog and add: Include the literal Bearer prefix — Claude sends the value exactly as entered and adds no scheme of its own.
Request-header auth is a beta feature on Claude.ai and is still rolling out; if you don’t see the section, use OAuth. Authorization also can’t be combined with an OAuth connection — OAuth owns that header.

Claude Desktop

Claude Desktop uses the same connector system as Claude.ai: Settings → Connectors → Add custom connector, then the URL https://api.askalchemist.com/mcp/. Follow the Claude.ai steps above.
claude_desktop_config.json is for local stdio servers only — it does not accept a remote url with headers. If you’ve been given a config-file snippet for a remote MCP server, it won’t work. Use the Connectors UI, or run the server locally over stdio (see Generic MCP).
claude mcp add-from-claude-desktop imports servers from that config file into Claude Code (macOS and WSL only). Since Alchemist is a connector rather than a config-file entry, it isn’t part of that import — use the claude mcp add command above.

Add the Alchemist skill

Copy and Paste in Claude Code

Once the MCP server is connected, paste this into Claude Code to create a research skill that drives it well.

Claude API (function calling)

If you’re calling the Claude API directly, define search_insights as a tool and handle the tool-use loop yourself. This path uses the REST API and its X-API-Key header, not MCP: