Introduction
This guide is for people who use Claude Code, Claude Desktop or GitHub Copilot in Visual Studio Code. It shows you how to connect them to ComplyFlow so they can answer questions about your data. They can also make changes for you, once write access has been turned on for your organisation. Write access is available on request.
To use ComplyFlow in the ChatGPT desktop app, refer to Connect ComplyFlow to ChatGPT. To connect Claude on the web or your phone by signing in, refer to Connect ComplyFlow to Claude.
Before you start
You need the MCP / API token access permission, or Edit Organisation Details. If API Tokens is not in your profile menu (top right), ask your ComplyFlow administrator. Refer to Giving Staff Access to AI Assistants.
Create a Personal API Token with the scopes you need. Refer to Creating and managing Personal API Tokens. It starts with
cf_pat_.Treat the token like a password. Don't paste it into a chat, an email or a shared file.
There are two ways to connect. Pick one.
Option | What you need | Best for |
A. Local | Node.js 20 or later on your computer | When you'd rather run the server yourself, or your network blocks the hosted server |
B. Hosted | The server address and your token, or sign in. Nothing to install | Most people |
Option A: Run the server on your computer
This option runs the ComplyFlow MCP server package (@complyflow/mcp-server) on your computer. You need Node.js 20 or later; type node --version in a terminal to check.
The ComplyFlow address for this option is:
https://app.complyflow.com.au/app/public/index.php/api/v2
Copy it exactly. The /app/public/index.php part is needed, and there is no slash at the end.
Check your token and address first
Run the command below. It confirms your organisation, your name, your scopes and how many sites you can see. It never shows the token.
COMPLYFLOW_API_URL="https://app.complyflow.com.au/app/public/index.php/api/v2" \
COMPLYFLOW_API_TOKEN="cf_pat_your_token_here" \
npx -y @complyflow/mcp-server --check
On Windows PowerShell, set each value on its own line first, with $env:COMPLYFLOW_API_URL = "..." and $env:COMPLYFLOW_API_TOKEN = "...", then run npx -y @complyflow/mcp-server --check.
The check may warn that the address doesn't look like the environment the server reports ("The URL looks like … but the server reports …"). For the production address above, you can ignore this warning if the organisation and name it shows are correct.
Claude Code
claude mcp add complyflow \
--env COMPLYFLOW_API_URL="https://app.complyflow.com.au/app/public/index.php/api/v2" \
--env COMPLYFLOW_API_TOKEN="cf_pat_your_token_here" \
-- npx -y @complyflow/mcp-server
Start Claude Code and type /mcp to confirm Complyflow is connected. The first start can take up to a minute while the package downloads. If it shows Failed to connect, restart Claude Code once.
Then ask a first question: "Using ComplyFlow, who am I and what can I access?" If you have access to every site, it may say you have 0 allowed sites. That's expected: the number only counts sites you've been assigned to.
To share the setup with your team without sharing your token, add a .mcp.json file to your project:
{
"mcpServers": {
"complyflow": {
"command": "npx",
"args": ["-y", "@complyflow/mcp-server"],
"env": {
"COMPLYFLOW_API_URL": "https://app.complyflow.com.au/app/public/index.php/api/v2",
"COMPLYFLOW_API_TOKEN": "${COMPLYFLOW_API_TOKEN}"
}
}
}
}
Each person then sets their own COMPLYFLOW_API_TOKEN where Claude Code can see it. On macOS, add export COMPLYFLOW_API_TOKEN="cf_pat_..." to ~/.zshenv; a line in ~/.zshrc is not enough. Then fully quit and reopen Claude Code.
Claude Desktop
Open Settings > Developer > Edit Config and add:
{
"mcpServers": {
"complyflow": {
"command": "npx",
"args": ["-y", "@complyflow/mcp-server"],
"env": {
"COMPLYFLOW_API_URL": "https://app.complyflow.com.au/app/public/index.php/api/v2",
"COMPLYFLOW_API_TOKEN": "cf_pat_your_token_here"
}
}
}
}
Fully quit and reopen Claude Desktop. On Windows, if the server doesn't start, change "command" to "cmd" and add "/c", "npx" to the start of "args".
GitHub Copilot in Visual Studio Code
1. In your project folder, create .vscode/mcp.json with:
{
"inputs": [
{
"type": "promptString",
"id": "complyflow-token",
"description": "ComplyFlow Personal API Token",
"password": true
}
],
"servers": {
"complyflow": {
"command": "npx",
"args": ["-y", "@complyflow/mcp-server"],
"env": {
"COMPLYFLOW_API_URL": "https://app.complyflow.com.au/app/public/index.php/api/v2",
"COMPLYFLOW_API_TOKEN": "${input:complyflow-token}"
}
}
}
}
2. Open Copilot Chat and switch to Agent mode.
3. Select the Tools icon and check the ComplyFlow tools are ticked.
4. When VS Code asks for your token, paste it. VS Code stores it securely and does not save it in the file.
5. Ask a first question: "Using the ComplyFlow tools, list incidents reported this month."
Option B: Connect to the hosted server
The server address is:
https://mcp.complyflow.com.au/mcp
Claude Code
1. Open a terminal and run the command below, replacing cf_pat_your_token_here with your token:
claude mcp add --transport http complyflow https://mcp.complyflow.com.au/mcp \
--header "Authorization: Bearer cf_pat_your_token_here"
2. Start Claude Code and type /mcp. complyflow should show as connected.
3. Ask a first question: "Using ComplyFlow, who am I and what can I access?"
Sign in instead of a token. You can leave out the --header part of the command.
Then type /mcp, select complyflow and choose Authenticate. Your browser opens the ComplyFlow sign-in, and you approve the connection on Connect Claude Code to ComplyFlow. Refer to Signing in with an AI app or using a Personal API Token.
Claude Desktop
The easiest way is to add ComplyFlow as a connector in Claude. Connectors you add on Claude also appear in Claude Desktop. Refer to Connect ComplyFlow to Claude.
If your organisation can't add custom connectors, use the configuration file instead:
1. In Claude Desktop, open Settings > Developer > Edit Config. This opens claude_desktop_config.json.
2. Add the entry below, replacing cf_pat_your_token_here with your token:
{
"mcpServers": {
"complyflow": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://mcp.complyflow.com.au/mcp",
"--header", "Authorization:${AUTH_HEADER}"
],
"env": { "AUTH_HEADER": "Bearer cf_pat_your_token_here" }
}
}
}
3. Save the file, then fully quit and reopen Claude Desktop.
Copy the header line exactly. Write Authorization:${AUTH_HEADER} with no space after the colon. Claude Desktop can't take a web address directly in this file. mcp-remote is a small helper that connects it to the hosted server, and it needs Node.js 20 or later.
GitHub Copilot in Visual Studio Code
Follow the steps in Option A, using this .vscode/mcp.json instead:
{
"inputs": [
{
"type": "promptString",
"id": "complyflow-token",
"description": "ComplyFlow Personal API Token",
"password": true
}
],
"servers": {
"complyflow": {
"type": "http",
"url": "https://mcp.complyflow.com.au/mcp",
"headers": {
"Authorization": "Bearer ${input:complyflow-token}"
}
}
}
}
What to do next
Refer to Prompting Tips: Reports and Finding Information for questions that work well.
Refer to Making Changes in ComplyFlow with an AI Assistant before you give a token write scopes.
If something doesn't work, refer to AI Assistants: Troubleshooting, Limits and FAQ