Convyy MCP
Enables AI agents to create and manage Convyy boards, including diagrams, kanban boards, journey maps, and more, through MCP tools like convyy_run_prompt.
README
Convyy MCP
Convyy MCP is a standalone stdio MCP server that lets an AI client operate on an already open Convyy board.
By default, the packaged server starts in relay mode:
- the MCP client talks to
convyy-mcpover stdio; convyy-mcpexposes tools immediately throughtools/list;- the opened Convyy board connects to the local relay at
http://127.0.0.1:4318; - tool calls are forwarded into the live board runtime and committed on the canvas.
--local is a fallback debugging mode only. Normal installation should use the default relay mode.
Typical usage:
- the user opens Convyy in the browser;
- the user connects
Convyy MCPin Codex, Claude, Cursor, Cline, or another MCP client; - the agent receives MCP tools;
- the agent calls those tools;
- the result appears on the board.
Hosted board note:
- the hosted board at
https://whiteboard-sepia.vercel.app/now shows an MCP relay diagnostics panel in the shell; - use that panel to distinguish
disabled,connecting,healthy, andfailingrelay states; - if the AI client exposes tools but nothing appears on the board, trust the diagnostics panel before guessing about MCP transport internals.
Critical Rules
These rules are not optional.
Convyy MCPexposes MCP tools, not slash commands.- Do not try to run
/convyy_list_pagesor any other/convyy_*command in the MCP client input. - The correct protocol is
initialize->tools/list->tools/call. - Convyy board interaction must happen through MCP tools only.
- Do not render or mount an agent conversation UI inside the board.
- The user talks to Codex/Claude; the board is only the result surface.
sessionIdis a technical runtime/session identifier for batch ownership and rollback. It is not a signal to build an in-board conversation experience.Unknown commandfrom a slash-command attempt does not prove that the MCP server is broken.ToolSearchfailing to surface tools does not by itself prove that the MCP server is broken.
What It Is For
Convyy MCP exists so an agent can work with an actual Convyy board instead of only producing text.
Through this MCP server, an agent can:
- read page context;
- understand which page the runtime session is bound to;
- create new AI-owned board content;
- commit each AI response as a separate batch;
- replace or revert only the latest AI batch for the current runtime session;
- choose a follow-up action such as
append,replace-last-batch,undo-last-batch,new-page, orbind-page.
Current Capabilities
The current MCP server includes:
- runtime state for session-to-page bindings;
- a one-active-generation gate per board runtime;
- follow-up action resolution;
- stdio MCP transport with
initialize,ping,tools/list, andtools/call; - an orchestration entrypoint for normal prompt workflows;
- direct tools for diagrams, kanban boards, template fill, journey maps, vision summaries, and generic board summaries.
MVP Constraints
The current MVP is intentionally constrained:
- the agent does not edit existing user-created objects;
- the agent only adds new AI-owned content;
- every AI response becomes a separate batch;
- undo and replace only work for the latest AI batch of the current runtime session;
- board-specific side effects go through the controlled Convyy runtime layer.
Main Tools
convyy_run_prompt
The main orchestration tool.
It:
- resolves the follow-up action from the prompt;
- picks the correct tool path;
- works with page binding;
- commits the final batch to the board.
Use this by default unless you specifically need to call a specialized tool directly.
convyy_bind_session
Explicitly binds the current runtime session to a page.
Use it when the agent should continue working on a specific page.
convyy_list_pages
Returns the list of pages in the board.
Use it when the client needs to choose a page first.
convyy_revert_last_batch
Reverts the latest AI batch for a runtime session.
convyy_get_runtime_state
Returns the current MCP runtime state for the board.
Useful for diagnostic or system scenarios.
Direct Tools
These tools are available separately, but in most cases convyy_run_prompt is enough.
convyy_create_diagram
Builds a flow or diagram payload.
Good for:
- auth flows;
- onboarding flows;
- architecture diagrams;
- process flows.
convyy_create_kanban_board
Builds a kanban payload.
Good for:
- backlog boards;
- launch boards;
- task boards;
- work-stage boards.
convyy_fill_board_template
Prepares a payload for a built-in template.
Good for:
- SWOT;
- Business Model Canvas;
- roadmap-like template scenarios.
convyy_create_journey_map
Builds a journey map payload.
Good for:
- onboarding journeys;
- customer journeys;
- service flows;
- service-blueprint-style scenarios.
convyy_analyze_page_images
Prepares a vision-oriented payload from images found on the current page.
convyy_create_board_summary
Generic fallback tool for summary, structure, and draft-style scenarios.
Installation
Install Convyy MCP from its standalone Git repository:
git clone https://github.com/divulture/convyy-mcp.git
cd convyy-mcp
npm install
npm run build
Verification:
npm run typecheck
npm run smoke
npm run test
npm run smoke is a stdio boot/handshake check. It does not prove that the live browser relay is already attached to an open board.
Agent Install Contract
This section is for agents. Follow it exactly.
Allowed install flow
- run
npm install - run
npm run build - run
npm run smoke - register the server in the MCP client config
- reconnect or restart the MCP client
- verify
tools/list
Stop conditions
Stop and report the exact failing step if any of these fail:
npm installnpm run buildnpm run smoke- MCP client reconnect
tools/list
Do not continue to later steps after an earlier step fails.
Required evidence before claiming success
An agent may only claim that Convyy MCP is installed correctly if all of these are true:
npm run buildsucceedednpm run smokesucceeded- the MCP client was configured to launch
node ./dist/server.jsorconvyy-mcp - an open Convyy board is running in the browser and can reach
http://127.0.0.1:4318 - after reconnect,
tools/listexposesconvyy_*tools - the hosted board diagnostics panel reports
healthy, or an equivalent successful relay state is directly confirmed
Forbidden behavior for agents
Do not do any of the following:
- do not use slash commands such as
/convyy_list_pages - do not use
ToolSearchas the primary proof that installation worked - do not wait and retry blindly for long periods
- do not rewrite transport framing based on a failed ad hoc handshake test
- do not modify server code before
npm run smokefails with a reproducible error - do not diagnose MCP transport by guessing protocol details from memory
- do not treat missing Claude/Codex CLI binaries as proof that the MCP server is broken
- do not mix server build/debug work with client registration work in the same conclusion
Correct diagnostic order
If installation does not work, diagnose in this order only:
npm run buildnpm run smoke- check MCP client config
- reconnect MCP client
- verify
tools/list
If npm run smoke passes, do not claim that stdioTransport is broken without a new direct reproduction.
Correct conclusion templates
Use only one of these conclusion shapes:
Build failed at step X with error Y. MCP is not ready to register yet.Smoke failed at step X with error Y. MCP server starts incorrectly.Build and smoke passed, but MCP client still does not expose tools. The remaining problem is client registration or reconnect state.Build, smoke, reconnect, and tools/list passed. MCP is installed correctly.
Connect It To An MCP Client
After building, Convyy MCP can be connected like any other stdio MCP server.
Important:
Convyy MCPis distributed as a separate repository and installed separately by the developer;- Convyy itself is opened separately at its hosted domain;
- the MCP server does not embed the board inside the AI client;
- the MCP server does not create a board-local conversation UI;
- it gives the agent tools to work with an already opened Convyy runtime.
Example:
{
"mcpServers": {
"convyy": {
"command": "node",
"args": ["./dist/server.js"]
}
}
}
If you prefer the package binary:
{
"mcpServers": {
"convyy": {
"command": "convyy-mcp",
"args": []
}
}
}
The build is considered healthy only if all of the following work without manual fixes:
npm run buildnpm run smokenode dist/server.js- MCP client config pointing at
dist/server.jsorconvyy-mcp
Recommended Usage Flow
- establish a normal MCP session with
initialize - call
tools/list - confirm that
convyy_*tools are actually present - call
convyy_list_pages - call
convyy_bind_sessionif a specific page should be targeted - call
convyy_run_prompt - call
convyy_revert_last_batchif the latest AI result should be rolled back
Example requests:
Create a kanban board for launch prepBuild an onboarding journey mapCreate an auth flow diagramFill a SWOT template for our productAnalyze this screenshot and build a board summary
What Not To Do
Do not do any of the following:
- do not call
/convyy_list_pages - do not treat MCP tool names as slash commands
- do not conclude "server is broken" only because a slash command failed
- do not conclude "server is broken" only because search did not surface tools yet
- do not build or show a board-local conversation panel
- do not route user interaction through a board-side input box
- do not use the board as the conversation surface
Minimal Verification
If you need to verify that the MCP server is healthy, use this order:
- start the stdio server process
- send
initialize - send
tools/list - verify that
convyy_run_prompt,convyy_list_pages,convyy_bind_session,convyy_revert_last_batch, andconvyy_get_runtime_stateare present - only then start normal tool calls
If tools/list returns Convyy tools, the server is up. At that point, a failed slash command is irrelevant.
Troubleshooting
Symptom: Unknown command: /convyy_list_pages
This is a caller error, not evidence of MCP failure.
Reason:
/convyy_list_pagesis not a supported slash command;convyy_list_pagesis an MCP tool name and must be called throughtools/call.
Symptom: search does not show any convyy tools
This is inconclusive on its own.
Possible causes:
- the MCP client has not finished initialization;
- the client is searching the wrong registry/path;
- the session has not completed
initializeortools/list; - the tool-discovery UI is delayed or filtered.
Correct action:
- verify the server process starts;
- verify
initializesucceeds; - verify
tools/listreturnsconvyy_*tools; - only then diagnose client-specific discovery issues.
Symptom: tools/list works, but nothing appears on whiteboard-sepia.vercel.app
This usually means MCP registration is fine and the remaining problem is the board-to-relay path.
Check in this order:
- confirm the board shell diagnostics panel is not
disabled; - confirm it reaches
healthyrather than stayingconnectingorfailing; - confirm the local relay is actually listening on
127.0.0.1:4318; - confirm the server was not launched with
--local; - only after that inspect prompt or tool behavior.
Symptom: the agent creates a conversation panel inside the board
This is an integration bug.
Correct model:
- user interaction belongs in Codex/Claude;
- Convyy is a visual output surface;
- MCP writes results to the board, but the board is not the conversation UI.
What Is Required For Real Usage
To actually work with a board, both parts are required:
- Convyy must be open in the browser at its hosted domain;
Convyy MCPmust be connected in the AI client.
Typical flow:
- the user opens Convyy;
- the user opens an AI conversation in the MCP client;
- the agent calls MCP tools;
- the result appears in the active Convyy board runtime.
For the hosted board flow, also confirm the diagnostics panel state:
disabled: relay polling is turned off for this board session, so MCP output will never reach the board;connecting: the board is polling but has not yet established a healthy relay cycle;healthy: the board is attached to the local relay and ready to receive tool output;failing: the board cannot currently complete relay requests; restart the local relay or reconnect the MCP client before blaming the tool layer.
Hosted Board Quick Check
Use this exact order when the target is https://whiteboard-sepia.vercel.app/:
- open the hosted board in the browser;
- verify the shell diagnostics panel is present;
- start
Convyy MCPnormally, without--local; - reconnect Claude/Codex so
tools/listexposesconvyy_*tools; - confirm the diagnostics panel becomes
healthy; - only then call
convyy_run_promptor a directconvyy_*tool.
If step 4 works but step 5 does not, the remaining problem is board-to-relay connectivity, not MCP tool registration.
Repository Structure
src/
application/
contracts/
orchestration/
runtime/
server/
tools/
tests/
Commands
npm install
npm run build
npm run smoke
npm run typecheck
npm run test
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.