WHITEBOARD
Whiteboard MCP
Whiteboard exposes an MCP server through Harbor at:
https://app.peisongxiao.com/whiteboard/mcp
Whiteboard MCP is Harbor-routed and Harbor-authenticated.
Before configuring a client:
- Sign in to Harbor.
- Open
Myself. - Create a Harbor API key in
API Keys. - Keep that key available for the MCP client you want to configure.
Whiteboard MCP does not use guest access. Use a Harbor API key in an
Authorization: Bearer ... header or the client’s equivalent bearer-token
setting.
Endpoint and auth
- MCP endpoint:
https://app.peisongxiao.com/whiteboard/mcp
- Transport:
- streamable HTTP
- Auth:
- Harbor API key as
Authorization: Bearer <token>
- Harbor API key as
- Harbor route:
- Whiteboard is Harbor-docked only
- there is no standalone MCP endpoint
Codex GUI
Codex GUI and Codex CLI share the same MCP configuration, so one user-level setup works for both.
- Create a Harbor API key.
- Set
HARBOR_API_KEYin the environment before starting Codex. - Add this to
~/.codex/config.toml:
[mcp_servers.whiteboard]
url = "https://app.peisongxiao.com/whiteboard/mcp"
bearer_token_env_var = "HARBOR_API_KEY"
- Restart Codex GUI.
Verify:
- open Codex and confirm that
whiteboardappears in the MCP server list
Codex CLI
- Create a Harbor API key.
- Export it in the shell you use for Codex:
export HARBOR_API_KEY="your_harbor_api_key"
- Add the server:
codex mcp add whiteboard \
--url https://app.peisongxiao.com/whiteboard/mcp \
--bearer-token-env-var HARBOR_API_KEY
- Verify:
codex mcp list
Claude Desktop
Claude Desktop can use a direct HTTP MCP server entry in
claude_desktop_config.json.
Typical config locations:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\\Claude\\claude_desktop_config.json
Add:
{
"mcpServers": {
"whiteboard": {
"type": "http",
"url": "https://app.peisongxiao.com/whiteboard/mcp",
"headers": {
"Authorization": "Bearer YOUR_HARBOR_API_KEY"
}
}
}
}
Then restart Claude Desktop.
Verify:
- confirm that
whiteboardappears in Claude Desktop’s MCP tool list
Claude CLI
Claude Code supports remote HTTP MCP servers with authentication headers.
- Create a Harbor API key.
- Add the server:
claude mcp add --transport http --scope user \
--header "Authorization: Bearer YOUR_HARBOR_API_KEY" \
whiteboard https://app.peisongxiao.com/whiteboard/mcp
- Verify:
claude mcp list
Cursor
Cursor editor and cursor-agent use the same MCP configuration.
Use either:
- global config:
~/.cursor/mcp.json
- project config:
.cursor/mcp.json
Add:
{
"mcpServers": {
"whiteboard": {
"url": "https://app.peisongxiao.com/whiteboard/mcp",
"headers": {
"Authorization": "Bearer YOUR_HARBOR_API_KEY"
}
}
}
}
Restart Cursor.
Verify:
cursor-agent mcp list
What Whiteboard MCP provides
Whiteboard MCP is intended to expose the same core document operations as the Harbor-docked GUI.
Current tools:
whiteboard.list_documentswhiteboard.create_documentwhiteboard.get_documentwhiteboard.apply_operationswhiteboard.delete_documentwhiteboard.export_documentwhiteboard.validate_documentwhiteboard.get_historywhiteboard.select_history_node
Troubleshooting
401 or unauthenticated errors
- make sure you are using a Harbor API key, not your Harbor password
- make sure the request includes:
Authorization: Bearer <your_api_key>
The server is listed but tools do not appear
- verify the URL is exactly:
https://app.peisongxiao.com/whiteboard/mcp
- verify the client is configured for HTTP MCP, not SSE
Desktop or editor changes do not take effect
- restart the client after changing the MCP configuration
Unsure whether auth is working
- first verify the same Harbor API key works in the Whiteboard web app
- then confirm the MCP client is sending the same key as a bearer token