Documentation

Zernyx Flow MCP

Connect Zernyx Flow to the AI apps you already use. They work as you, with your permissions, across every workspace you belong to. Nothing can be deleted.

Quickstart

  1. Copy the server URL above. It is the same for every AI app.

  2. Add it to your AI app. Pick yours under Connect your AI app; most take one command or one paste.

  3. Approve it on Zernyx Flow. Your app opens a Zernyx Flow page. Check the account and what the app will be able to do, then click Allow access.

  4. Ask. Try "What's due for me this week?" or "Create a task to review the Q4 roadmap, due Friday."

How sign-in works

Zernyx Flow uses OAuth 2.1, the same standard as "Sign in with Google". Your AI app never sees your password.

  1. Your AI app registers itself with Zernyx Flow and opens the Zernyx Flow sign-in page.

  2. You sign in (if you are not already) and see which app is asking, which account it will use and what it will be able to do.

  3. When you click Allow access, the app receives a token that lets it act as you. Click Cancel and it receives nothing.

Technical details for client developers: Streamable HTTP transport, OAuth 2.1 with PKCE and dynamic client registration, discovered from /.well-known/oauth-protected-resource.

Connect your AI app

Choose your app. Every one uses the same server URL and the same Zernyx Flow sign-in.

AI apps redesign their settings often, and some show new menus to only part of their users. If a menu looks different from these steps, use the app's official guide linked in each section: the server URL and the Zernyx Flow sign-in stay the same. Still stuck? Email admin@zernyxflow.com with a screenshot.

ChatGPT

chatgpt.com and desktop app

Plus, Pro, Business, Enterprise and Edu. Not available on Free or Go. Web and desktop only; the mobile app can't add it yet.OpenAI: connect a custom MCP server ↗ · Checked Oct 2026

  1. Open Settings → Plugins (or go to chatgpt.com/plugins).

  2. Click the + button next to Browse directory and choose Create MCP App. In some accounts it is called Add custom MCP server or Create custom MCP server; don't pick Plugin Creator.

  3. Name it Zernyx Flow and paste the server URL. Set Authentication to OAuth and leave any client ID and secret fields empty:

    https://mcp.zernyxflow.com/mcp
  4. Tick I understand and want to continue and click Create. A Zernyx Flow window opens: sign in to Zernyx Flow if asked, check the account and click Allow access.

  5. ChatGPT lists the Zernyx Flow tools. In a new chat, type @ and choose Zernyx Flow, then ask: "What's due for me this week?"

Older layout: if you see Apps & Connectors instead of Plugins, open Advanced settings, turn on Developer mode, then choose Create and continue from step 3.
Business, Enterprise and Edu: only workspace owners and admins can add it. Ask them to add Zernyx Flow for the workspace; you then just connect and allow access.

Claude

claude.ai and desktop app

Every plan. Free includes one custom connector. On Team and Enterprise an owner adds it for the organization. Works in the mobile apps once added on the web.Claude: custom connectors ↗ · Checked Oct 2026

  1. Open Customize → Connectors (or go to claude.ai/customize/connectors).

  2. Click + Add and choose Add custom connector. Name it Zernyx Flow and paste the URL:

    https://mcp.zernyxflow.com/mcp
  3. If you're asked how to sign in, choose Sign in now and, for the OAuth client, Register automatically. If you see a single short form instead, leave Advanced settings empty.

  4. Click Add, then Connect: sign in to Zernyx Flow if asked, check the account and click Allow access.

  5. In a chat, click + at the bottom left of the message box, open Connectors and switch on Zernyx Flow.

Team and Enterprise: members can't add custom connectors. An owner opens Organization settings → Connectors → Add → Custom → Web, pastes the URL and clicks Add. Everyone then finds Zernyx Flow under Customize → Connectors and clicks Connect.
Claude can't pass images to tools; to attach a screenshot, ask for an upload link.

Claude Code

Terminal

Any Claude Code install, version 2.x or later.Claude Code: MCP ↗ · Checked Oct 2026

  1. Add the server in your terminal:

    claude mcp add --transport http zernyxflow https://mcp.zernyxflow.com/mcp
  2. Sign in:

    claude mcp login zernyxflow

    Or start claude, type /mcp, choose zernyxflow (it shows needs authentication) and follow the browser sign-in.

  3. In the browser, sign in to Zernyx Flow if asked, check the account and click Allow access.

The server is added for the current project by default. Add --scope user to use it in every project, or --scope project to share it with your team through .mcp.json.

Codex

CLI, IDE extension and app

Any Codex sign-in.Codex: MCP ↗ · Checked Oct 2026

  1. Add the server:

    codex mcp add zernyxflow --url https://mcp.zernyxflow.com/mcp
  2. Sign in:

    codex mcp login zernyxflow
  3. In the browser, sign in to Zernyx Flow if asked, check the account and click Allow access. Check it with codex mcp list.

The Codex IDE extension (gear menu → MCP servers) and the Codex app (Settings → MCP servers) share the same configuration: a server added in the terminal shows up there, with a sign-in button if needed.

Cursor

Editor

Any Cursor plan.Cursor: MCP ↗ · Checked Oct 2026

Add to Cursor

Or add it by hand to ~/.cursor/mcp.json (every project) or .cursor/mcp.json (one project):

{
  "mcpServers": {
    "zernyxflow": {
      "url": "https://mcp.zernyxflow.com/mcp"
    }
  }
}

Then open Customize in the sidebar → MCP and click Needs login next to zernyxflow. In the browser, sign in to Zernyx Flow if asked, check the account and click Allow access.

VS Code

GitHub Copilot

VS Code with GitHub Copilot, any Copilot plan.VS Code: MCP servers ↗ · Checked Oct 2026

Add to VS Code

Or from a terminal on macOS or Linux:

code --add-mcp '{"name":"zernyxflow","type":"http","url":"https://mcp.zernyxflow.com/mcp"}'

On Windows, in Command Prompt:

code --add-mcp "{\"name\":\"zernyxflow\",\"type\":\"http\",\"url\":\"https://mcp.zernyxflow.com/mcp\"}"

Or run MCP: Add Server from the command palette, choose HTTP and paste the server URL.

The first time Copilot uses a Zernyx Flow tool, VS Code opens the browser: sign in to Zernyx Flow if asked, check the account and click Allow access.

Gemini CLI

Terminal

Any Gemini CLI sign-in.Gemini CLI: MCP servers ↗ · Checked Oct 2026

  1. Add the server:

    gemini mcp add --transport http zernyxflow https://mcp.zernyxflow.com/mcp

    Or add it to ~/.gemini/settings.json yourself:

    {
      "mcpServers": {
        "zernyxflow": {
          "httpUrl": "https://mcp.zernyxflow.com/mcp"
        }
      }
    }
  2. Start gemini and sign in:

    /mcp auth zernyxflow
  3. In the browser, sign in to Zernyx Flow if asked, check the account and click Allow access.

Devin Desktop (Windsurf)

Editor

Any Devin Desktop or Windsurf plan.Devin Desktop: MCP ↗ · Checked Oct 2026

In the Cascade panel, open the … menu (top right) and, under MCPs, open the MCP config file. Add:

{
  "mcpServers": {
    "zernyxflow": {
      "serverUrl": "https://mcp.zernyxflow.com/mcp"
    }
  }
}

The file is ~/.config/devin/mcp_config.json on macOS and Linux, %APPDATA%\devin\mcp_config.json on Windows. Refresh the MCP servers; the first time it connects, your browser opens: sign in to Zernyx Flow if asked, check the account and click Allow access.

Zed

Editor

Any Zed install with the agent panel.Zed: MCP ↗ · Checked Oct 2026

Add this to your Zed settings.json:

{
  "context_servers": {
    "zernyxflow": {
      "url": "https://mcp.zernyxflow.com/mcp"
    }
  }
}

Zed asks you to sign in the first time it connects. In the browser, sign in to Zernyx Flow if asked, check the account and click Allow access.

Cline

VS Code extension

Any Cline install.Cline: remote MCP servers ↗ · Checked Oct 2026

Add this to cline_mcp_settings.json (MCP Servers → Configure). Keep type; without it Cline uses an older transport:

{
  "mcpServers": {
    "zernyxflow": {
      "type": "streamableHttp",
      "url": "https://mcp.zernyxflow.com/mcp"
    }
  }
}

Then choose Authorize OAuth next to zernyxflow. In the browser, sign in to Zernyx Flow if asked, check the account and click Allow access.

Other clients

Any MCP client

Any client that supports remote MCP servers with OAuth.MCP: connect to remote servers ↗ · Checked Oct 2026

Any client that supports remote MCP over Streamable HTTP with OAuth works:

Server URL
https://mcp.zernyxflow.com/mcp
Transport
Streamable HTTP
Authentication
OAuth 2.1 with PKCE and dynamic client registration; discovered automatically from the server

Tools

All 30 tools your AI app can use. Tools marked Makes changes create or update something; the rest only read. Each one acts in your active workspace unless you name another.

Workspace

whoami Reads Who am I

Your Zernyx Flow profile: name, email, role, and the active workspace every other tool uses by default, plus all workspaces you belong to. Call this first when unsure which workspace you are in.

No arguments.

list_workspaces Reads List workspaces

Workspaces (organizations) you are an active member of, with your role in each.

No arguments.

switch_workspace Makes changes Switch active workspace

Make another of your workspaces the active one. This is the same switch as in the web app, so the app will also open in that workspace.

ArgumentTypeRequiredDetails
workspacestringYesWorkspace name or slug (from list_workspaces).

Tasks

list_tasks Reads List tasks

List tasks you can see, newest-due first. scope: 'mine' (assigned to you, default), 'assigned_by_me', 'person' (needs person), 'project' (needs project), 'all' (everything visible to you). Filter by status, overdue, due within N days, or title text.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
scopeone ofNoOne of: mine, assigned_by_me, person, project, all. Default: "mine".
personstringNoName, email or uid — for scope 'person'.
projectstringNoProject name or id — for scope 'project', or to narrow any scope.
statuslist of valuesNoOnly these statuses. PENDING=To do, ONGOING=In progress, REVIEW=In review, DONE=Done. One of: PENDING, ONGOING, REVIEW, DONE.
include_donetrue / falseNoInclude DONE tasks when no status filter is given. Default: false.
overduetrue / falseNoOnly tasks past their due date and not done.
due_within_dayswhole numberNoOnly tasks due between now and N days from now.
querystringNoText the title must contain.
limitwhole numberNoDefault: 25.
offsetwhole numberNoDefault: 0.
get_task Reads Get task details

One task in full: description, people, latest updates, questions and answers, and attached files.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
taskstringYesTask id, or (part of) its title.
create_task Makes changes Create task

Create a task. Assigned to you unless you name an assignee; the assignee (and any co-assignees) get the same notification the web app sends. To include a screenshot or file the user shared, pass it as `file` (or a public https link / data: URI as `file_url`); it lands in the task's Files tab. More files: call attach_file_to_task afterwards. If you cannot send the file itself — including when the app gives you only a placeholder such as "chat_upload" (ChatGPT mobile) — leave `file` out, create the task, then call get_upload_link. Never write a file path into the description: paths from your own sandbox (/mnt/data/…) are removed, since Zernyx Flow cannot open them.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
titlestringYes—
descriptionstringNoDefault: "".
assigneestringNoName, email or uid of the person doing it. Defaults to you.
co_assigneeslist of stringNoOther people who co-own the task.
projectstringNoProject name or id.
due_datestringNoYYYY-MM-DD, or an ISO 8601 timestamp.
priorityone ofNoOne of: LOW, MEDIUM, HIGH. Default: "MEDIUM".
statusone ofNoOne of: PENDING, ONGOING, DONE. Default: "PENDING".
fileobjectNoA screenshot or file the user shared in the conversation, as provided by the client. Attached to the new task.
file_urlstringNoA public https link to a file, or a data: URI, to attach to the new task.
update_task Makes changes Update task

Change a task's status, progress, priority, due date, title, description, project or assignee. Only fields you pass change. Status changes are limited to the assignor, assignees, project owner and admins; other field edits to task editors — the same rules as the web app.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
taskstringYesTask id, or (part of) its title.
statusone ofNoPENDING=To do, ONGOING=In progress, REVIEW=In review, DONE=Done. One of: PENDING, ONGOING, REVIEW, DONE.
percent_completenumberNo0–100. Decides the status unless status is REVIEW.
priorityone ofNoOne of: LOW, MEDIUM, HIGH.
due_datestringNoYYYY-MM-DD or ISO timestamp; null clears it.
titlestringNo—
descriptionstringNo—
projectstringNoProject name or id; null removes the task from its project.
assigneestringNoReassign to this person (name, email or uid).
add_task_update Makes changes Post task update

Post a progress update on a task (the Updates tab). Moves a To-do task to In progress, or sets percent_complete if given. Notifies the assignee and assignor. Attach files with attach_file_to_task, not as paths in the text.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
taskstringYesTask id, or (part of) its title.
textstringYes—
percent_completenumberNo—
attach_file_to_task Makes changes Attach file to task

Attach a file — a screenshot, image, PDF or document — to a task, so it shows in the task's Files tab (images as pictures). Pass the file the user shared as `file`, or a public https link or data: URI as `url`, or the bytes as `content_base64`. A path inside your own sandbox (/mnt/data/…) or on the user's computer is not enough. If you cannot send the file itself — including when the app gives you only a placeholder such as "chat_upload" instead of a file object (ChatGPT mobile) — do not pass it: call get_upload_link instead. Up to 25MB; programs and scripts are refused.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
taskstringYesTask id, or (part of) its title.
fileobjectNoA file the user shared in the conversation, as provided by the client.
urlstringNoA public https link to the file, or a data: URI.
content_base64stringNoThe file's bytes, base64 (a data: URL is fine). Up to 8MB; for bigger files send a link or use get_upload_link.
filenamestringNoName to show, e.g. bulk-delete-stuck.png.
mime_typestringNoe.g. image/png. Worked out from the file when left out.
visibilityone ofNoPRIVATE: the task's people only. PUBLIC: anyone who can see the task. One of: PRIVATE, PUBLIC. Default: "PRIVATE".
ask_task_question Makes changes Ask a question on a task

Ask a question on a task (the Q&A tab). The person who assigned the task is notified.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
taskstringYesTask id, or (part of) its title.
questionstringYes—
answer_task_question Makes changes Answer a task question

Answer an open question on a task (get_task lists questions with their ids). The first answer wins; the asker is notified.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
taskstringYesTask id, or (part of) its title.
question_idstringYes—
answerstringYes—

Projects

list_projects Reads List projects

Projects you can see in the workspace, optionally filtered by status or name. Includes subprojects (see parent_id).

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
statuslist of valuesNoOne of: PLANNING, IN_PROGRESS, REVIEW, DONE, ON_HOLD.
querystringNoText the project name must contain.
limitwhole numberNoDefault: 50.
offsetwhole numberNoDefault: 0.
get_project Reads Get project details

A project's details: members, goals, this week's deliverables, subprojects, and task counts by status.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
projectstringYesProject name or id.
create_project Makes changes Create project

Create a project (you become its owner). Private by default; WORKSPACE makes it visible to the whole workspace. Pass parent to create a subproject.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
namestringYes—
descriptionstringNoDefault: "".
visibilityone ofNoOne of: PRIVATE, WORKSPACE, PUBLIC. Default: "PRIVATE".
parentstringNoParent project name or id, for a subproject.
colorstringNoDefault: "#0d9d6e".

People and teams

search_people Reads Search people

Find people in the workspace by name, email or designation. Use the uid or email in other tools (e.g. as a task assignee).

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
querystringNoText to match; omit to list everyone.
limitwhole numberNoDefault: 50.
list_teams Reads List teams

Teams in the workspace with their manager and members.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).

Inbox and chat

list_notifications Reads List notifications

Your inbox notifications (task assignments, updates, questions, mentions, leave, chat…), newest first.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
unread_onlytrue / falseNoDefault: true.
limitwhole numberNoDefault: 30.
mark_notifications_read Makes changes Mark notifications read

Mark specific notifications read (by id), or all your unread notifications in the workspace when no ids are given.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
idslist of stringNo—
list_chat_channels Reads List chat channels

Team chat channels and direct messages you belong to, most recently active first.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
read_chat Reads Read chat messages

Recent messages in a channel or direct message you belong to, oldest first.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
channelstringYesChannel name, 'DM: <person>' / person name, or channel id.
limitwhole numberNoDefault: 30.
send_chat_message Makes changes Send chat message

Post a message to a team channel or direct message you belong to. Members are notified as in the web app.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
channelstringYesChannel name, 'DM: <person>' / person name, or channel id.
textstringYes—

Leave

list_leave_requests Reads List leave requests

scope 'mine' (your requests, default), 'to_approve' (pending requests you can approve), or 'all' (every request visible to you).

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
scopeone ofNoOne of: mine, to_approve, all. Default: "mine".
statuslist of valuesNoOne of: PENDING, APPROVED, REJECTED, CANCELLED.
limitwhole numberNoDefault: 30.
request_leave Makes changes Request leave

Apply for leave in your ACTIVE workspace. Your team manager (and project owners) are notified. A half day must be a single date. You must belong to a team.

ArgumentTypeRequiredDetails
start_datestringYesYYYY-MM-DD
end_datestringNoYYYY-MM-DD; defaults to start_date.
leave_typeone ofNoOne of: ANNUAL, SICK, UNPAID, OTHER. Default: "ANNUAL".
half_dayone ofNoFIRST or SECOND half of a single day. One of: FIRST, SECOND.
reasonstringYes—
teamstringNoTeam name or id, if you are on more than one.
decide_leave Makes changes Approve or reject leave

Approve or reject a PENDING leave request you are allowed to decide (admins, the requester's team manager, or their project owner — never your own). The requester is notified.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
requeststringYesLeave request id, or the requester's name.
decisionone ofYesOne of: APPROVE, REJECT.
notestringNo—

Meetings

list_meetings Reads List meetings

Meetings visible to you that start in a time range (default: now to 7 days ahead). Recurring meetings are listed once, with their recurrence.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
fromstringNoISO date-time or YYYY-MM-DD; default now.
tostringNoISO date-time or YYYY-MM-DD; default 7 days after from.
include_recurringtrue / falseNoAlso list recurring meetings that started before the range. Default: true.
schedule_meeting Makes changes Schedule meeting

Add a one-off meeting to the workspace calendar. Times without a zone are read in the workspace's timezone.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
titlestringYes—
starts_atstringYesISO date-time, e.g. 2026-10-02T15:00
ends_atstringNoISO date-time; default 30 minutes after start.
linkstringNoVideo call link.
visibilityone ofNoOne of: PUBLIC, PRIVATE. Default: "PUBLIC".

Ideas

list_ideas Reads List ideas

Ideas posted in the workspace, most voted first, optionally filtered by status or text.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
statuslist of valuesNoOne of: New, Exploring, Planned, Shipped.
querystringNo—
limitwhole numberNoDefault: 25.
create_idea Makes changes Post an idea

Post a new idea to the workspace's Ideas board (with your own vote, as in the app).

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
titlestringYes—
descriptionstringNoDefault: "".
tagslist of stringNoDefault: [].
projectstringNoLink to a project (name or id).
comment_idea Makes changes Comment on an idea

Comment on an idea. Its author is notified.

ArgumentTypeRequiredDetails
workspacestringNoWorkspace name or slug. Defaults to your active workspace (see whoami).
ideastringYesIdea id or title.
textstringYes—

Images and files

Screenshots, images, PDFs and documents can be attached to tasks. They appear in the task's Files tab, images as pictures, exactly like a file you upload in Zernyx Flow. Up to 25MB each (8MB when an app sends the file inline); programs and scripts are refused.

ChatGPT (web and desktop)

Add the image to your message, mention @Zernyx Flow and ask: "Create a task for this bug and attach the screenshot." ChatGPT passes the file to Zernyx Flow directly.

Claude Code, Codex, Cursor, Gemini CLI

Ask it to attach a file from your computer: "Attach ./screenshots/login-error.png to the login task." It asks Zernyx Flow for a private upload link and uploads the file with one command:

curl -F "file=@./screenshots/login-error.png" "<upload link>"

Claude, the ChatGPT mobile app and other chat apps

These apps can't hand files to tools yet. Ask the assistant for an upload link: "Give me a link to add the screenshot to that task." Open the link and drop the files on the page. Links last 15 minutes and only work for that task.

Links

If the file is already online (a public https link), the assistant can attach it from the link.

Only people who can work on the task can attach to it: the assignor, assignees, the project owner and admins. Files are private to the task's people unless made public.

Names and ids

Refer to people, projects, tasks, chat channels and ideas by name: "assign it to Ravi", "in the Apollo project". Ids work too.

If a name could mean more than one thing, the tool lists the matches and asks which one you meant. It never guesses, so it will not act on the wrong task.

Workspaces

If you belong to several workspaces, tools use your active workspace, the same one the web app opens in. Ask for another by name ("in the Acme workspace") or ask it to switch. Switching changes your active workspace in the web app too.

Rate limits

Each person can make about 2 requests a second (120 a minute). If an app goes over, it is asked to slow down and can try again a minute later.

Permissions

Every request runs as the signed-in person, under the same access rules as the Zernyx Flow app. An AI app can only see and change what you can, in the workspaces you belong to.

Each app is approved by you on a Zernyx Flow page that lists what it can do. Only tokens issued that way are accepted.

Actions notify people exactly as they would in the app, so nobody is surprised by work that happened in an AI tool.

What it can't do

  • Delete anything: tasks, projects, messages or files.
  • See or change anything you can't already see or change in Zernyx Flow.
  • Use admin, billing, platform or CRM features.
  • Attach programs or scripts. Images, PDFs and documents up to 25MB only.

Disconnecting an app

Remove Zernyx Flow from the app's connector or MCP settings (in Claude Code: claude mcp remove zernyxflow). If you think an app should not have access, tell your workspace admin.

Troubleshooting

ChatGPT doesn't show Create MCP App

Custom apps need ChatGPT Plus, Pro, Business, Enterprise or Edu, on the web or desktop app. On Business, Enterprise and Edu only workspace owners and admins can add one: ask them to add Zernyx Flow for the workspace. If your settings show Apps & Connectors instead of Plugins, turn on Developer mode under Advanced settings first. See ChatGPT setup.

Claude says I've reached the custom connector limit

The Free plan includes one custom connector. Remove one you no longer use under Customize → Connectors, or use a paid plan.

My company workspace won't let me add it

On ChatGPT Business or Enterprise and Claude Team or Enterprise, an owner or admin adds connectors for everyone. Send them this page; once added, Zernyx Flow appears in your connectors and you just click Connect.

The sign-in page says the request expired

Sign-in links last a few minutes. Start connecting again from your AI app to get a fresh one.

It connected to the wrong account

On the Zernyx Flow approval page, use Switch account before allowing. To change an existing connection, remove it in your AI app and connect again.

It can't find tasks from another workspace

Tools use your active workspace by default. Name the workspace in your request, or ask it to switch.

My AI app says "unauthorized" after it was working

The session ended. Reconnect: in Claude Code run /mcp and choose Authenticate; in other apps, disconnect and connect again.

"Too many requests"

Each person can make about 2 requests a second (120 a minute). Wait a minute and try again.

FAQ

Does it cost extra?

No. It uses your existing Zernyx Flow account and permissions.

Can the AI app see my whole workspace?

Only what you can see yourself. Private projects and other people's private tasks stay private.

Will my teammates know a change came from an AI app?

Changes appear under your name, exactly as if you made them in Zernyx Flow, and send the usual notifications.

Which AI apps are supported?

Any app that supports remote MCP servers with OAuth, including ChatGPT, Claude, Claude Code, Codex, Cursor, VS Code, Gemini CLI, Devin Desktop (Windsurf), Zed and Cline.