Overview
The connector is a Model Context Protocol server that lets an AI tool read your Zenflow organization — the brand kit, the projects, their status, activity and creative direction — from inside the conversation. Ask Claude “what's the status of the winter campaign?” and it answers from your actual project, not a guess.
- A Zenflow account with the Manage connector tokens permission.
- A connector token — mint one in your dashboard (next section).
- An MCP-capable client: Claude, ChatGPT, or the Messages API.
Point your client at the www URL exactly as written. The bare zenflow.media redirects to it, and some MCP clients handle a redirect on a POST poorly — so skip the redirect and use https://www.zenflow.media/api/mcp.
Quickstart
Three steps from zero to asking your AI about a live project.
Sign in, open Dashboard → Settings, and mint one under Connector access. It's shown once — copy it then.
Register the endpoint with your client and pass the token as a Bearer credential — the fastest path, in Claude Code:
claude mcp add --transport http zenflow \ https://www.zenflow.media/api/mcp \ --header "Authorization: Bearer zmcp_YOUR_TOKEN"“List my Zenflow projects,” or “what's left before the winter campaign ships?” — the AI calls the tools and answers from your data.
Connect a client
Everywhere, the shape is the same: the endpoint above, your token as a Bearer credential. Pick your client.
claude mcp add --transport http zenflow \ https://www.zenflow.media/api/mcp \ --header "Authorization: Bearer zmcp_YOUR_TOKEN"The Claude Code command lands your token in ~/.zsh_history. On a shared machine, export it first — export ZMCP=zmcp_… — and pass "Authorization: Bearer $ZMCP", or revoke it when you're done.
The Messages API also needs the beta header anthropic-beta: mcp-client-2025-04-04.
Tool reference
Five read tools. The tag by each name is what your role must carry — read means any valid token works; a named capability means that one tool stays quiet without it while the rest keep working.
get_brand_contextView brand kitA compiled, timestamped snapshot of a brand workspace. Optionally focus on one project.
workspaceIdrequiredThe workspace to snapshot.projectIdoptionalNarrow the snapshot to a single project.asOfoptionalISO timestamp — reconstruct context as of a past moment.list_projectsreadEvery project you can read in the organization, including ones with no workspace. Optionally filter to one workspace.
workspaceIdoptionalRestrict the list to a single workspace.get_project_statusreadThe current state of one project.
projectIdrequiredThe project to read.get_activity_timelinereadRecent activity on a project.
projectIdrequiredThe project to read.limitoptionalHow many events to return (1–50, default 25).get_direction_docreadThe creative direction for a project — the latest doc unless you name one.
projectIdrequiredThe project to read.directionDocIdoptionalA specific direction doc; defaults to the latest.Every id you pass is checked against your own access before a row is read, and every denial returns the same “not found or not accessible” — so a token can never be used to probe which projects exist in an org you can't see.
Scope & security
What a token can and cannot reach — worth reading before you hand one to an AI.
get_brand_context needs the View brand kit capability; without it that one tool returns nothing while the other four still work.
