{"apiVersion":"v1","directorySlug":"codepic-mcp-3f07f5e1ec","title":"CodePic","description":"Free online whiteboard with an infinite canvas — sketch, plan, and explain anything. Draw flowcharts, ER diagrams, wireframes, and system architecture in a hand-drawn style. No sign-up, AI-friendly via MCP. Built for developers and designers.","pageUrl":"https://www.mcpbundles.com/skills/codepic-mcp-3f07f5e1ec","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://codepic.cc/api/mcp/mcp","hostedMcpUrl":null,"toolCount":7,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"cc.codepic/codepic-mcp-3f07f5e1ec","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"get_shape_docs","description":"Return the full CodePic shape reference — all element types, their fields, data payloads, and JSON examples. Call get_shape_catalog first for concise shape selection and container capabilities; use this tool when you need complete fields or type-specific data (e.g. select options, triangle direction, callout tail). No authentication required.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"title":"Get Shape Docs","logicalName":"get_shape_docs","displayName":"Get Shape Docs","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_shape_catalog","description":"Return compact machine-readable shape metadata for planning a diagram: semantic tags, geometry family, container support, recommended padding, default size, and MCP availability. Use this before create_diagram when choosing shapes or containers. Unlike get_shape_docs, this tool is concise and filterable.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"tag":{"type":"string"},"category":{"enum":["basic","flow","container","ui","architecture","misc"],"type":"string"},"containerMode":{"enum":["native","adaptive","none"],"type":"string"}},"additionalProperties":false},"title":"Get Shape Catalog","logicalName":"get_shape_catalog","displayName":"Get Shape Catalog","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_templates","description":"List all available CodePic diagram templates. Use this ONLY when the user has explicitly asked to browse, list, or pick from templates (e.g. \"show me templates\", \"列出模板\"). Do NOT call this as a preparatory step when the user just described a diagram they want — in that case go straight to `create_diagram`. Discovering slugs here is only meaningful before a user-confirmed `create_from_template` call.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"category":{"enum":["planning","design","flowchart","collaboration","engineering"],"type":"string"}},"additionalProperties":false},"title":"List Templates","logicalName":"list_templates","displayName":"List Templates","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"create_from_template","description":"Create a new CodePic diagram from a predefined template. Requires API Key authentication. Returns a public view URL and edit URL.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["slug"],"properties":{"name":{"type":"string"},"slug":{"type":"string"},"locale":{"enum":["en","zh"],"type":"string"}},"additionalProperties":false},"title":"Create from Template","logicalName":"create_from_template","displayName":"Create from Template","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"create_diagram","description":"Create a custom CodePic hand-drawn style diagram by specifying nodes and edges. Requires API Key authentication. Returns a public view URL.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","nodes"],"properties":{"name":{"type":"string"},"edges":{"type":"array","items":{"type":"object","required":["id","sourceId","targetId"],"properties":{"id":{"type":"string"},"label":{"type":"string"},"sourceId":{"type":"string"},"targetId":{"type":"string"}},"additionalProperties":false}},"nodes":{"type":"array","items":{"type":"object","required":["id","text","x","y"],"properties":{"x":{"type":"number"},"y":{"type":"number"},"id":{"type":"string"},"data":{"type":"object","additionalProperties":{}},"name":{"type":"string","maxLength":80},"tags":{"type":"array","items":{"type":"string","maxLength":48,"minLength":1},"maxItems":12},"text":{"anyOf":[{"type":"object","required":["kind","version","blocks"],"properties":{"kind":{"type":"string","const":"rich-text"},"blocks":{"type":"array","items":{"anyOf":[{"type":"object","required":["type","runs"],"properties":{"runs":{"type":"array","items":{"type":"object","required":["text"],"properties":{"href":{"type":"string","format":"uri"},"text":{"type":"string"},"style":{"type":"object","properties":{"fontSize":{"type":"number","exclusiveMinimum":0},"fontColor":{"type":"string","minLength":1},"fontStyle":{"type":"string","minLength":1},"fontFamily":{"type":"string","minLength":1},"fontWeight":{"type":"string","minLength":1},"textDecoration":{"enum":["none","underline","line-through"],"type":"string"}},"additionalProperties":false}},"additionalProperties":false},"minItems":1},"type":{"type":"string","const":"paragraph"},"textAlign":{"enum":["left","center","right"],"type":"string"}},"additionalProperties":false},{"type":"object","required":["type","listType","runs"],"properties":{"runs":{"type":"array","items":{"$ref":"#/properties/nodes/items/properties/text/anyOf/0/properties/blocks/items/anyOf/0/properties/runs/items"},"minItems":1},"type":{"type":"string","const":"list-item"},"level":{"type":"integer","maximum":5,"minimum":0},"listType":{"enum":["ordered","unordered"],"type":"string"},"textAlign":{"enum":["left","center","right"],"type":"string"}},"additionalProperties":false}]},"minItems":1},"version":{"type":"number","const":1}},"additionalProperties":false},{"type":"string"}]},"type":{"enum":["rect","ellipse","circle","diamond","parallelogram","document","cylinder","hexagon","triangle","callout","cloud","terminator","cross","off-page-connector","actor","note","component","end-node","start-node","fork-bar","predefined-process","delay","manual-input","stored-data","text","textarea","link","icon","image","frame","package","swimlane","rounded-rect","table","button","button-primary","button-secondary","button-destructive","button-ghost","input","select","checkbox","radio","switch","slider","progress","server","load-balancer","firewall","container","msg-queue","queue","router","lambda","cache","pod","browser-frame","mobile-frame","code"],"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"corners":{"type":"array","items":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"maxItems":4,"minItems":4},"opacity":{"type":"number","maximum":1,"minimum":0},"fontSize":{"type":"number"},"parentId":{"type":"string"},"rotation":{"type":"number"},"fillColor":{"type":"string"},"fillStyle":{"enum":["none","solid","hachure","cross-hatch"],"type":"string"},"fontColor":{"type":"string"},"fontStyle":{"enum":["normal","italic"],"type":"string"},"roughness":{"type":"number","maximum":3,"minimum":0},"textAlign":{"enum":["left","center","right"],"type":"string"},"fontFamily":{"type":"string"},"fontWeight":{"enum":["normal","bold"],"type":"string"},"lineHeight":{"type":"number"},"strokeColor":{"type":"string"},"strokeWidth":{"type":"number"},"verticalAlign":{"enum":["top","center","bottom"],"type":"string"}},"additionalProperties":false}},"backgroundColor":{"type":"string"}},"additionalProperties":false},"title":"Create Diagram","logicalName":"create_diagram","displayName":"Create Diagram","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_diagram","description":"Fetch the current state of an existing CodePic diagram. Returns a compact summary of all elements with their IDs, types, positions, and parent-child relationships. Use this before update_diagram when you need to: add nested children to existing containers, make targeted edits to specific elements, or understand the current structure. Requires API Key authentication.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["documentId"],"properties":{"documentId":{"type":"string"}},"additionalProperties":false},"title":"Get Diagram","logicalName":"get_diagram","displayName":"Get Diagram","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"update_diagram","description":"Update an existing CodePic diagram. You can rename it, replace all nodes/edges, or add/remove individual nodes and edges. Requires API Key authentication.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["documentId"],"properties":{"name":{"type":"string"},"edges":{"type":"array","items":{"type":"object","required":["id","sourceId","targetId"],"properties":{"id":{"type":"string"},"label":{"type":"string"},"sourceId":{"type":"string"},"targetId":{"type":"string"}},"additionalProperties":false}},"nodes":{"type":"array","items":{"type":"object","required":["id","text","x","y"],"properties":{"x":{"type":"number"},"y":{"type":"number"},"id":{"type":"string"},"data":{"type":"object","additionalProperties":{}},"name":{"type":"string","maxLength":80},"tags":{"type":"array","items":{"type":"string","maxLength":48,"minLength":1},"maxItems":12},"text":{"anyOf":[{"type":"object","required":["kind","version","blocks"],"properties":{"kind":{"type":"string","const":"rich-text"},"blocks":{"type":"array","items":{"anyOf":[{"type":"object","required":["type","runs"],"properties":{"runs":{"type":"array","items":{"type":"object","required":["text"],"properties":{"href":{"type":"string","format":"uri"},"text":{"type":"string"},"style":{"type":"object","properties":{"fontSize":{"type":"number","exclusiveMinimum":0},"fontColor":{"type":"string","minLength":1},"fontStyle":{"type":"string","minLength":1},"fontFamily":{"type":"string","minLength":1},"fontWeight":{"type":"string","minLength":1},"textDecoration":{"enum":["none","underline","line-through"],"type":"string"}},"additionalProperties":false}},"additionalProperties":false},"minItems":1},"type":{"type":"string","const":"paragraph"},"textAlign":{"enum":["left","center","right"],"type":"string"}},"additionalProperties":false},{"type":"object","required":["type","listType","runs"],"properties":{"runs":{"type":"array","items":{"$ref":"#/properties/nodes/items/properties/text/anyOf/0/properties/blocks/items/anyOf/0/properties/runs/items"},"minItems":1},"type":{"type":"string","const":"list-item"},"level":{"type":"integer","maximum":5,"minimum":0},"listType":{"enum":["ordered","unordered"],"type":"string"},"textAlign":{"enum":["left","center","right"],"type":"string"}},"additionalProperties":false}]},"minItems":1},"version":{"type":"number","const":1}},"additionalProperties":false},{"type":"string"}]},"type":{"enum":["rect","ellipse","circle","diamond","parallelogram","document","cylinder","hexagon","triangle","callout","cloud","terminator","cross","off-page-connector","actor","note","component","end-node","start-node","fork-bar","predefined-process","delay","manual-input","stored-data","text","textarea","link","icon","image","frame","package","swimlane","rounded-rect","table","button","button-primary","button-secondary","button-destructive","button-ghost","input","select","checkbox","radio","switch","slider","progress","server","load-balancer","firewall","container","msg-queue","queue","router","lambda","cache","pod","browser-frame","mobile-frame","code"],"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"corners":{"type":"array","items":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"maxItems":4,"minItems":4},"opacity":{"type":"number","maximum":1,"minimum":0},"fontSize":{"type":"number"},"parentId":{"type":"string"},"rotation":{"type":"number"},"fillColor":{"type":"string"},"fillStyle":{"enum":["none","solid","hachure","cross-hatch"],"type":"string"},"fontColor":{"type":"string"},"fontStyle":{"enum":["normal","italic"],"type":"string"},"roughness":{"type":"number","maximum":3,"minimum":0},"textAlign":{"enum":["left","center","right"],"type":"string"},"fontFamily":{"type":"string"},"fontWeight":{"enum":["normal","bold"],"type":"string"},"lineHeight":{"type":"number"},"strokeColor":{"type":"string"},"strokeWidth":{"type":"number"},"verticalAlign":{"enum":["top","center","bottom"],"type":"string"}},"additionalProperties":false}},"addEdges":{"type":"array","items":{"$ref":"#/properties/edges/items"}},"addNodes":{"type":"array","items":{"$ref":"#/properties/nodes/items"}},"documentId":{"type":"string"},"removeEdgeIds":{"type":"array","items":{"type":"string"}},"removeNodeIds":{"type":"array","items":{"type":"string"}},"backgroundColor":{"type":"string"}},"additionalProperties":false},"title":"Update Diagram","logicalName":"update_diagram","displayName":"Update Diagram","annotations":{"untrustedContentHint":true,"readOnlyHint":true}}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=CodePic&config=eyJ1cmwiOiAiaHR0cHM6Ly9jb2RlcGljLmNjL2FwaS9tY3AvbWNwIn0%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22CodePic%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fcodepic.cc%2Fapi%2Fmcp%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22CodePic%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fcodepic.cc%2Fapi%2Fmcp%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=CodePic&connectorUrl=https%3A%2F%2Fcodepic.cc%2Fapi%2Fmcp%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"CodePic\" --url \"https://codepic.cc/api/mcp/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/codepic-mcp-3f07f5e1ec","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/codepic-mcp-3f07f5e1ec/tools/{tool}","mcpServerUrl":"https://codepic.cc/api/mcp/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/codepic-mcp-3f07f5e1ec?live=1"}