Add Zyflow to Claude Code with one command
Zyflow’s MCP server is remote, so Claude Code needs only a name and a URL. Run this once in your terminal, not inside a claude session. It works the same in macOS and Linux shells, PowerShell and Command Prompt.
claude mcp add --transport http --scope user zyflow https://app.zyflowcrm.com/mcp What each part does:
- claude mcp add: registers a server with Claude Code.
- --transport http: tells Claude Code this is a remote HTTP server, reached at a URL (Zyflow uses Streamable HTTP).
- --scope user: adds Zyflow to every project on this machine. Without it, you get Claude Code’s default, local scope, which covers this project only.
- zyflow: a name you choose. It also names the tools, like mcp__zyflow__get_customer. Change it for another server.
- https://app.zyflowcrm.com/mcp: your Zyflow link, the same for everyone. Change it for another server.
There's nothing to install: no npm package and no local process. To check that Claude Code saved the server, run:
claude mcp list The list shows zyflow with “! Needs authentication”, which is expected until you sign in. Anthropic’s Claude Code MCP reference lists every flag.
It’s the same link for everyone. The first time, your AI app asks you to sign in and approve one workspace.
Sign in with /mcp
Zyflow uses a browser sign-in, like “Sign in with Google”, so you never paste a password or key into the terminal. There’s no app to register and no client secret to copy. Zyflow supports dynamic client registration and client ID metadata documents, with OAuth 2.1 and PKCE, so Claude Code finds the sign-in by itself.
-
Start claude, type /mcp, select zyflow and choose Authenticate.
-
Your browser opens Zyflow. Log in or create your free account, pick the one workspace Claude Code may use, and approve within 10 minutes.
-
Back in Claude Code, zyflow shows as connected, and Zyflow’s Connect page lists it under Connected apps.
No browser on this machine?
On a remote machine over SSH, sign in from your shell. Connect with ssh -t so the terminal accepts a paste, then run:
claude mcp login zyflow --no-browser Open the link it prints in a browser on your own computer and approve. Then copy the full address from that browser’s address bar and paste it back into the terminal.
One connection reaches one workspace. To switch, choose Clear authentication in /mcp and sign in again. Disconnect under Connected apps cuts off access from Zyflow’s side at once.
Local, project or user scope: which to pick
Pick user scope for Zyflow. Your customers aren’t tied to one repo, and user scope makes Zyflow available in every project on this machine. Claude Code’s default, local scope, works only in the folder where you ran the command, so in any other folder /mcp can say “No MCP servers configured”.
| Scope | Works in | Shared | Saved in | Use it when |
|---|---|---|---|---|
| user | Every project on this machine | No | ~/.claude.json, top-level mcpServers | Recommended for Zyflow |
| local (the default) | This project only | No | ~/.claude.json, under this project | You want Zyflow in one repo only |
| project | This project | Yes, through git | .mcp.json in the repo root | Your team shares a repo |
Share it with your team
Add it with --scope project, or commit this .mcp.json:
{
"mcpServers": {
"zyflow": { "type": "http", "url": "https://app.zyflowcrm.com/mcp" }
}
} The file holds only the URL, not your sign-in, so it’s safe to commit. Claude Code asks each teammate to approve the server once. Then each person signs in to their own Zyflow account, and History labels every change with their name.
- To change scope, run claude mcp remove zyflow --scope local, then add it again.
- On Windows, ~/.claude.json is %USERPROFILE%\.claude.json.
Use Zyflow from the terminal
Ask Claude Code in plain words. Claude Code chooses which Zyflow tools to call, and Zyflow keeps the record; Zyflow runs no AI of its own. A new workspace is empty, so start by adding a customer.
- Add Maya Chen at Northwind as a customer. Her email is maya@northwind.example.
- Had a call with Maya at Northwind. She wants the revised quote by Friday.
- What do we know about Northwind?
- File the notes in ./notes/northwind-call.md to Zyflow. Show me the list first.
- What’s on my plate today?
The fourth prompt works from your repo: Claude Code reads the file, shows you the list of what it will file, then saves it on the customer you already have. Zyflow sends each date back so Claude Code can confirm it with you: Fri, 9 Oct. When a name could mean two people, Zyflow sends Claude Code the candidates, and Claude Code asks you which one you mean.2 Each change is labeled with the app and comes with an Undo.1
Live labels and Undo buttons appear in any open Zyflow tab. Every change is also in History.
Let lookups run without asking
By default, Claude Code asks before it runs a Zyflow tool. To let lookups run without a prompt, add these allow rules in /permissions and save them to your user settings. Claude Code still asks before every write.
mcp__zyflow__get_*
mcp__zyflow__list_*
mcp__zyflow__search
mcp__zyflow__fetch
mcp__zyflow__describe_workspace Building on Zyflow: the REST API and API keys
For scripts, CI and machines where nobody can sign in, use a named API key from Zyflow’s Connect page. Pass it as a header on the same command:
claude mcp add --transport http --scope user zyflow https://app.zyflowcrm.com/mcp --header "Authorization: Bearer <your API key>" - Choose Read only for lookup jobs. Zyflow refuses a read-only key’s writes.
- History labels a key’s changes with the key’s name, like “Nightly report”.
- In a shared .mcp.json, reference the key from your environment so it never lands in git:
{
"mcpServers": {
"zyflow": {
"type": "http",
"url": "https://app.zyflowcrm.com/mcp",
"headers": { "Authorization": "Bearer ${ZYFLOW_API_KEY}" }
}
}
} Zyflow shows each key once. Keys don’t expire on their own, and you can revoke one on the Connect page. Any key, read-only included, can export the workspace, so keep keys out of repos and logs.
The REST API at /api/v1 has the same operations as the MCP server, and its OpenAPI reference is at /api/docs. There are no webhooks or SDKs.
Thinking of building your own CRM in Claude Code? Plenty of people start there. The Claude Code CRM guide compares building with connecting.
Troubleshooting Zyflow in Claude Code
Run claude mcp list in your shell, or /mcp inside Claude Code. The status next to zyflow tells you which fix you need.
| Symptom | Fix |
|---|---|
| “! Needs authentication” | Normal before you sign in. In Claude Code, run /mcp, choose zyflow, then Authenticate. Or run claude mcp login zyflow in your shell |
| /mcp says “No MCP servers configured” | You likely added Zyflow at local scope in another folder. Add it again with --scope user |
| The browser shows a log-in page and you have no account | Create an account from that page, or start from Get your Zyflow link, which signs you up first |
| “This connection request has expired” | The 10-minute approval window passed. Authenticate again |
| Claude Code sees the wrong business | Choose Clear authentication in /mcp, or Disconnect under Connected apps, then approve the right workspace |
| “MCP server zyflow already exists” | Run claude mcp remove zyflow, then add it again. If the name exists in more than one scope, add --scope with the one to remove |
| Writes refused with an API key | The key is read-only. Create a key with Read and write access |
| “✘ Failed to connect” | Run curl -I https://app.zyflowcrm.com/mcp (curl.exe in PowerShell). A 401 means the server is up and waiting for sign-in. If you passed a key with --header, check it hasn’t been revoked |
| “Too many requests” | Wait a moment and try again. Short burst limits stop runaway scripts |
Questions about Claude Code and Zyflow
Do I need an API key to connect Claude Code to Zyflow?
No. You sign in and approve in your browser. Use an API key only for scripts, CI or machines where nobody can sign in.
Can my whole team use the same setup?
Yes. Commit a project-scope .mcp.json. Each person signs in to their own Zyflow account, and History labels their changes with their name. Every member, and every member’s AI, can see and edit every customer. There are no per-person permissions yet.
Can I make Claude Code read-only?
Yes, with a read-only API key passed in --header. The sign-in screen has no read-only switch, so a browser sign-in gets read and write access.
Does connecting Claude Code cost extra?
Not on Zyflow’s side. The Free plan needs no card, and your AI’s calls to Zyflow are never billed on any plan.3 Claude Code’s own usage limits still apply.
Is my CRM data sent to Anthropic?
What Claude Code reads from Zyflow becomes part of your Claude Code session. Zyflow runs no AI model and doesn’t train one on your data. Zyflow receives only what your AI app sends in its tool calls, not the rest of your chat. What your AI app does with what it reads is covered by your AI provider’s terms.
One workspace per connection
You sign in and approve, like “Sign in with Google”. Your AI app never gets your password, and it can’t touch billing, members or keys.
Every AI change labeled
Export any time