skip to content
$cat connect/claude.md

Connect Claude.

Directory connector

Give Claude a live connection to your markdown workspace over the Model Context Protocol. Claude can then read your documents, use folder descriptions as context, and create, update, and organise notes — instead of you pasting the same background into every chat.

MDflow is listed in Claude's Connectors Directory, so connecting takes one click:

  • ›MDflow connector — the recommended path. Click Connect to Claude, sign in to MDflow, done. There is no URL to paste and no token to create, and one connection works in claude.ai, the desktop and mobile apps, and Claude Code.
  • ›Personal Access Token (legacy) — still supported for config files that send their own Authorization header, the local MCP server, and scripts. See Legacy setup.

Requires an MDflow Pro account — all API and MCP access is Pro-gated. The connector reaches your personal workspaces; MDflow Team workspaces connect with a Team access token instead (see the Team MCP server).

$which claude

Which Claude are you connecting?

FieldWhat to enter
claude.ai, desktop & mobile appsConnect the MDflow connector from the directory once — it follows your Claude account to every app. See Method A.
Claude Code (CLI)Signed in with your Claude account, it picks up the connector automatically; otherwise one command and a browser sign-in. See Method B.
Config files, local server, scriptsA claude_desktop_config.json entry, the local stdio server, or anything that sends a static header uses a Personal Access Token. See Legacy setup.
MDflow Team workspaceNot covered by the connector — use a Team access token (mdt_) with the Team MCP server.
$open claude.ai/directory/mdflow

Method A — Connect from Claude's directory

The MDflow connector is a Community connector in Claude's Connectors Directory. You click Connect and sign in to MDflow — Claude handles the OAuth 2.1 handshake, so there is nothing to copy. Connect it once and it is available in claude.ai, the Claude desktop and mobile apps, and Claude Code.

1Click Connect to Claude
2Client discovers MDflow & self-registers
3Sign in to MDflow
4Approve consent screen
5Connected — tools appear
1

Open the MDflow connector

Open MDflow in Claude's directory ↗

Opens the MDflow listing directly — sign in to Claude first if prompted. Prefer to browse? In claude.ai, open Customize → Connectors, choose Discover, and search for MDflow. In the desktop app's Code tab, the + menu's Add connectors opens the same directory.

claude.ai — Directory — MDflow
>_
MDflowCommunity

Give Claude your MDflow markdown workspace.

Connect to Claude
Illustration — the MDflow listing in the directory.
2

Click Connect to Claude

Claude sends you to MDflow. Sign in if you aren't already — if you're signed out you land on /login first and are returned to the consent screen automatically. On a Claude Team or Enterprise plan, an Owner first adds the connector for the organization; members then connect with their own MDflow account.

3

Approve the consent screen

MDflow shows exactly what Claude is asking for. Review it and click Approve.

mdflow.cz/oauth/consent
$

Authorize Claude

Claude wants to connect to your MDflow account.

This will allow Claude to:

  • •Confirm your identity
  • •See your email address
  • •See your name and avatar
  • •Full access to read and modify your MDflow documents (Pro plan required for API access).
DenyApprove
Illustration — MDflow's consent screen, the one step every sign-in passes through. Click Approve to finish connecting.
4

Use it in a conversation

MDflow shows as Connected under your connectors, with the full MDflow tool set. Turn it on for a chat from + → Connectors and ask. The first call to each tool asks for your approval — choose Always allow to stop the prompts for that tool.

>What does my workspace say about onboarding?
>Create a document called meeting-notes.md in my Projects folder.
Under the hood: The connector points at https://mdflow.cz/api/mcp. A tokenless request returns 401 with a WWW-Authenticate challenge pointing at /.well-known/oauth-protected-resource (RFC 9728). Claude discovers the authorization server, registers via Dynamic Client Registration, runs the OAuth 2.1 authorization-code + PKCE flow through MDflow's consent page, and calls the API with the issued JWT. Nothing is pasted by hand.

Can't use the directory? The same server works as a custom connector: in Customize → Connectors, add a custom connector with the URL https://mdflow.cz/api/mcp and leave the OAuth client ID and secret blank.

$claude mcp list

Method B — Claude Code (CLI)

Claude Code shares connectors with claude.ai, so in most cases there is nothing to set up.

1

Signed in with your Claude account? It's already there

When Claude Code is logged in with a Claude subscription (Pro, Max, Team, or Enterprise), connectors you added in claude.ai load automatically. Run /mcp — MDflow is listed as claude.ai MDflow. If you have never signed in to it, look under Show unused connectors.

2

Using an API key? Add it with one command

Claude Code skips claude.ai connectors when it authenticates with an API key or a cloud provider. Add the server yourself, then run /mcp and choose Authenticate for mdflow. Your browser opens the same MDflow consent screen as Method A — still no token.

Claude Code — OAuth sign-inrun in your project, then /mcp → Authenticate
$bash
claude mcp add --transport http mdflow https://mdflow.cz/api/mcp
$cat legacy/personal-access-token.md

Legacy setup — Personal Access Token

Before the directory connector, Claude connected with a Personal Access Token (PAT) in the client's config. That still works, and you need it for the local stdio server, scripts and the HTTP API, and the Anthropic API's mcp_servers connector. Create a token in Settings (it starts with mdf_). For claude.ai, the desktop app, and Claude Code, prefer the connector above.

Claude Code — Personal Access Tokenone command, applies to the current project
$bash
claude mcp add --transport http mdflow https://mdflow.cz/api/mcp \
  --header "Authorization: Bearer mdf_your_token_here"
Claude Desktop config — hosted server via mcp-remoteSettings → Developer → Edit Config · ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) · %APPDATA%\\Claude\\claude_desktop_config.json (Windows) · requires Node.js
$json
{
  "mcpServers": {
    "mdflow": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mdflow.cz/api/mcp",
        "--header",
        "Authorization:Bearer mdf_your_token_here"
      ]
    }
  }
}
Claude Desktop config — local stdio serverdownload the server first — see the MCP docs
$json
{
  "mcpServers": {
    "mdflow": {
      "command": "node",
      "args": ["/absolute/path/to/mdflow-mcp/server.mjs"],
      "env": { "MDFLOW_API_TOKEN": "mdf_your_token_here" }
    }
  }
}

The local server download and full setup live in the MCP documentation. Restart Claude Desktop after editing the config so it picks up the change.

Security: Keep the token in your client config, never in a chat prompt or tool argument — MDflow's server refuses to accept it as a tool parameter. Tokens grant workspace-level access, including write, delete, and sharing, and can be revoked anytime from Settings.
$man troubleshooting

Troubleshooting

Claude connection troubleshooting: symptoms and fixes
SymptomCause & fix
403 Pro plan required after connectingThe signed-in account is on the Free plan. Upgrade at Settings — the connection stays, calls start working.
No Connect button, only RequestYour Claude Team or Enterprise organization manages connectors. Ask an Owner to add MDflow under Organization settings → Connectors, then connect with your own account.
MDflow missing from /mcp in Claude CodeClaude Code is using an API key or a cloud provider, so it doesn't load claude.ai connectors. Log in with your Claude account, or add the server with the one command in Method B.
401 again after ~1 hour idleOAuth access tokens expire after about an hour. The connector refreshes silently; if it can't, disconnect MDflow in Customize → Connectors and connect again.
Consent screen sends you to /login firstExpected when you're not signed in to MDflow — sign in and you're returned to the consent screen automatically.
Want to revoke accessDisconnect MDflow in Customize → Connectors, or revoke the Personal Access Token from Settings.