AI agent draws editable hand-drawn diagrams (flowchart, ER, architecture) via MCP, not static images
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"codepic": {
"url": "https://codepic.cc/api/mcp/mcp",
"headers": {
"Authorization": "Bearer cpk_your_api_key_here"
}
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Let your AI coding agent draw editable diagrams — not another Mermaid snippet you have to paste.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in ai-ml / cloud
Persistent memory using a knowledge graph
Dynamic problem-solving through sequential thought chains
An autonomous agent that conducts deep research on any data using any LLM providers
Privacy-first. MCP is the protocol for tool access. We're the virtualization layer for context.
MCP Security Weekly
Get CVE alerts and security updates for io.github.abelce/codepic and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Let your AI coding agent draw editable diagrams — not another Mermaid snippet you have to paste.
Generate editable hand-drawn diagrams from Cursor, Claude Desktop, and other MCP clients.
CodePic MCP lets an AI coding agent create diagrams directly in CodePic instead of returning static images, Mermaid snippets, or JSON that you have to paste manually. The result opens in the CodePic editor, where you can still move shapes, edit labels, adjust connectors, share a read-only link, and export PNG or JSON.
It's a remote Streamable HTTP server — no local install. First create a free API key (the cpk_... token) at https://codepic.cc/settings/api-keys (sign in → New API key → copy), then add the config for your client and replace cpk_your_api_key_here.
Create .cursor/mcp.json in your project:
{
"mcpServers": {
"codepic": {
"url": "https://codepic.cc/api/mcp/mcp",
"headers": {
"Authorization": "Bearer cpk_your_api_key_here"
}
}
}
}
Add it with one command:
claude mcp add --transport http codepic https://codepic.cc/api/mcp/mcp \
--header "Authorization: Bearer cpk_your_api_key_here"
Add CodePic to your claude_desktop_config.json:
{
"mcpServers": {
"codepic": {
"type": "streamableHttp",
"url": "https://codepic.cc/api/mcp/mcp",
"headers": {
"Authorization": "Bearer cpk_your_api_key_here"
}
}
}
}
Add CodePic to .vscode/mcp.json:
{
"servers": {
"codepic": {
"type": "http",
"url": "https://codepic.cc/api/mcp/mcp",
"headers": {
"Authorization": "Bearer cpk_your_api_key_here"
}
}
}
}
Add CodePic to ~/.codex/config.toml:
[mcp_servers.codepic]
url = "https://codepic.cc/api/mcp/mcp"
[mcp_servers.codepic.headers]
Authorization = "Bearer cpk_your_api_key_here"
Add CodePic to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"codepic": {
"serverUrl": "https://codepic.cc/api/mcp/mcp",
"headers": {
"Authorization": "Bearer cpk_your_api_key_here"
}
}
}
}
Open Cline's MCP settings (cline_mcp_settings.json) and add:
{
"mcpServers": {
"codepic": {
"type": "streamableHttp",
"url": "https://codepic.cc/api/mcp/mcp",
"headers": {
"Authorization": "Bearer cpk_your_api_key_here"
}
}
}
}
Any MCP client that supports remote Streamable HTTP works — point it at the endpoint https://codepic.cc/api/mcp/mcp with header Authorization: Bearer cpk_....
list_templates - list available diagram templates.create_from_template - create a new diagram from a template.create_diagram - create a custom diagram with nodes and edges.get_diagram - fetch the current diagram structure by documentId before making targeted follow-up edits.update_diagram - update an existing diagram by replacing, adding, or removing nodes and edges.Use get_diagram when you already have a CodePic document and want the AI agent to inspect it before changing it. This keeps the workflow grounded in the current diagram instead of guessing from memory.
Example prompt:
Use get_diagram to inspect document <documentId>, then update the diagram by adding a Redis cache between the API server and Postgres database.
| Example | What It Generates | Prompt |
|---|---|---|
| System architecture | Next.js SaaS arc |