{"apiVersion":"v1","directorySlug":"tridentchart-mcp-2ffd4eca11","title":"Trident Chart","description":"The only diagramming tool where AI joins your live session. Draw, write markup, or describe your architecture — human and AI edits appear in real time on the same canvas.","pageUrl":"https://www.mcpbundles.com/skills/tridentchart-mcp-2ffd4eca11","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.tridentchart.com/mcp","hostedMcpUrl":null,"toolCount":23,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"com.tridentchart/tridentchart-mcp-2ffd4eca11","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"get_trident_spec","description":"Returns the complete Trident 2D specification including grammar, syntax rules, coordinate system, containers, nodes, connections, shapes, and icon reference. Use this when you need deep understanding of the Trident DSL.","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_trident_spec","displayName":"get_trident_spec","title":"get_trident_spec"},{"name":"get_generator_guide","description":"Returns LLM-optimized instructions for generating Trident diagrams, including quick reference, critical rules (especially Y-axis!), spacing guidelines, common patterns, color conventions, and error prevention checklist. Use this before generating any Trident diagram.","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_generator_guide","displayName":"get_generator_guide","title":"get_generator_guide"},{"name":"get_comprehensive_example","description":"Returns a comprehensive Trident example demonstrating all syntax features including containers, nodes (traditional and bracket-style syntax), diamond/rectangle shapes, icons, connections with labels, routing modes, cards, and text annotations. Use this to see all features in action.","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_comprehensive_example","displayName":"get_comprehensive_example","title":"get_comprehensive_example"},{"name":"validate_trident","description":"Returns a comprehensive validation checklist for Trident diagrams covering syntax rules, semantic rules, best practices, and common mistakes to avoid. Use this after generating a diagram to verify correctness.","inputSchema":{"type":"object","properties":{"diagram":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"validate_trident","displayName":"validate_trident","title":"validate_trident"},{"name":"get_quick_start","description":"Returns a condensed 2-minute quick-start guide with minimal working examples, core syntax reference, and key concepts. Use this for rapid learning when you need to generate simple diagrams quickly.","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_quick_start","displayName":"get_quick_start","title":"get_quick_start"},{"name":"open_document","description":"Opens a live Trident document and returns its full contents as Trident markup DSL — the human-readable text format used to author diagrams. Use this to READ and UNDERSTAND the diagram: its structure, labels, connections, and layout. Do NOT rely on this to enumerate entity IDs for programmatic use — the DSL can be very large and the output may be truncated. To get a complete, structured list of all entity IDs and counts, use get_document_summary instead. Requires a valid access token.","inputSchema":{"type":"object","required":["token"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"open_document","displayName":"open_document","title":"open_document"},{"name":"get_document_summary","description":"Returns a complete structured summary of a Trident document as JSON: all node IDs, container IDs, connection IDs, annotation IDs, labels, and entity counts. Use this for PROGRAMMATIC OPERATIONS — it is never truncated regardless of diagram size, so you always get every entity ID. Use this before any bulk update, delete, or enumeration task. To read and understand the diagram as a human-readable diagram, use open_document instead. Requires a valid access token.","inputSchema":{"type":"object","required":["token"],"properties":{"token":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_document_summary","displayName":"get_document_summary","title":"get_document_summary"},{"name":"get_recent_changes","description":"Returns the recent change history for a live Trident document. Each entry shows who made the change, what was changed, and when. Useful for understanding what edits have been made by AI agents or human collaborators. Requires a valid access token.","inputSchema":{"type":"object","required":["token"],"properties":{"limit":{"type":"number"},"since":{"type":"number"},"token":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_recent_changes","displayName":"get_recent_changes","title":"get_recent_changes"},{"name":"add_node","description":"Adds a new node (entity) to a live Trident document. The node appears immediately for all collaborators. Requires a valid editor access token. Before adding nodes: call open_document to understand the diagram layout and pick sensible positions; call get_document_summary to get all existing entity IDs so you can avoid duplicates. IMPORTANT: if this node belongs inside a container, pass node.container on THIS call — do NOT create the node without a container and reparent it later via update_node.","inputSchema":{"type":"object","required":["token","agentId","node"],"properties":{"node":{"type":"object","required":["id","label"],"properties":{"x":{"type":"number"},"y":{"type":"number"},"id":{"type":"string"},"card":{"type":"string"},"icon":{"type":"string"},"color":{"type":"string"},"label":{"type":"string"},"container":{"type":"string"},"shapeType":{"type":"string"},"textColor":{"type":"string"},"outlineColor":{"type":"string"}}},"token":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"},"action_explanation":{"type":"string"}}},"logicalName":"add_node","displayName":"add_node","title":"add_node","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"update_node","description":"Updates properties of an existing node in a live Trident document. Only the fields you provide are changed; others are preserved. Use get_document_summary to get all node IDs before calling this. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","nodeId","changes"],"properties":{"token":{"type":"string"},"nodeId":{"type":"string"},"agentId":{"type":"string"},"changes":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"card":{"type":"string"},"icon":{"type":"string"},"color":{"type":"string"},"label":{"type":"string"},"container":{"type":"string"},"shapeType":{"type":"string"},"textColor":{"type":"string"},"outlineColor":{"type":"string"}}},"userName":{"type":"string"},"action_explanation":{"type":"string"}}},"logicalName":"update_node","displayName":"update_node","title":"update_node","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"delete_node","description":"Removes a node from a live Trident document. All connections to/from this node are also removed automatically. Use get_document_summary to get all node IDs before calling this. This action is reversible via Ctrl+Z in the Trident editor. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","nodeId"],"properties":{"token":{"type":"string"},"nodeId":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"},"action_explanation":{"type":"string"}}},"logicalName":"delete_node","displayName":"delete_node","title":"delete_node","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"add_container","description":"Adds a new container (group/swimlane) to a live Trident document. Containers visually group related nodes. Use get_document_summary to check existing container IDs before adding to avoid duplicates. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","container"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"},"container":{"type":"object","required":["id","label"],"properties":{"x":{"type":"number"},"y":{"type":"number"},"id":{"type":"string"},"color":{"type":"string"},"label":{"type":"string"},"outlineColor":{"type":"string"}}},"action_explanation":{"type":"string"}}},"logicalName":"add_container","displayName":"add_container","title":"add_container","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"update_container","description":"Updates properties of an existing container in a live Trident document. Only provided fields are changed. Use get_document_summary to get all container IDs before calling this. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","containerId","changes"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"changes":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"color":{"type":"string"},"label":{"type":"string"}}},"userName":{"type":"string"},"containerId":{"type":"string"},"action_explanation":{"type":"string"}}},"logicalName":"update_container","displayName":"update_container","title":"update_container","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"delete_container","description":"Removes a container from a live Trident document. By default, nodes inside are detached (kept on the diagram without a container). Pass deleteNodes: true to remove the container's nodes as well. Use get_document_summary to get all container IDs before calling this. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","containerId"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"},"containerId":{"type":"string"},"deleteNodes":{"type":"boolean"},"action_explanation":{"type":"string"}}},"logicalName":"delete_container","displayName":"delete_container","title":"delete_container","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"add_connection","description":"Adds a connection (arrow/edge) between two nodes in a live Trident document. Use get_document_summary to get valid source and target node IDs before calling this. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","connection"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"},"connection":{"type":"object","required":["source","target"],"properties":{"id":{"type":"string"},"type":{"type":"string"},"label":{"type":"string"},"source":{"type":"string"},"target":{"type":"string"},"routingMode":{"type":"string"}}},"action_explanation":{"type":"string"}}},"logicalName":"add_connection","displayName":"add_connection","title":"add_connection","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"delete_connection","description":"Removes a connection from a live Trident document. Provide either the connectionId, or both source and target node IDs to find and remove the matching connection. Use get_document_summary to get all connection IDs before calling this. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId"],"properties":{"token":{"type":"string"},"source":{"type":"string"},"target":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"},"connectionId":{"type":"string"},"action_explanation":{"type":"string"}}},"logicalName":"delete_connection","displayName":"delete_connection","title":"delete_connection","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_document_png","description":"Renders the current state of a live Trident document as a PNG image directly from the Yjs collaborative session — bypassing Firestore, which may be stale. Returns a base64-encoded PNG. Use this to visually verify that diagram edits look correct before or after making changes.","inputSchema":{"type":"object","required":["token"],"properties":{"token":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_document_png","displayName":"get_document_png","title":"get_document_png"},{"name":"add_annotation","description":"Adds a text annotation to a live Trident document. Two visual styles: style:stickyNote (default — post-it card with colored background, good for notes/callouts) or style:textBody (plain transparent text, good for diagram titles and section labels). Ideal for architectural notes, decision records, section labels, or TODO markers. Appears immediately for all collaborators. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","annotation"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"},"annotation":{"type":"object","required":["id","content","x","y"],"properties":{"x":{"type":"number"},"y":{"type":"number"},"id":{"type":"string"},"bold":{"type":"boolean"},"align":{"type":"string"},"color":{"type":"string"},"style":{"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"italic":{"type":"boolean"},"content":{"type":"string"},"fontSize":{"type":"number"},"textColor":{"type":"string"},"underline":{"type":"boolean"},"outlineColor":{"type":"string"},"strikethrough":{"type":"boolean"}}},"action_explanation":{"type":"string"}}},"logicalName":"add_annotation","displayName":"add_annotation","title":"add_annotation","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"update_annotation","description":"Updates an existing text annotation in a live Trident document. Only the fields you provide are changed. Use get_document_summary to get all annotation IDs before calling this. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","annotationId","changes"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"changes":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"bold":{"type":"boolean"},"align":{"type":"string"},"color":{"type":"string"},"style":{"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"italic":{"type":"boolean"},"content":{"type":"string"},"fontSize":{"type":"number"},"textColor":{"type":"string"},"underline":{"type":"boolean"},"outlineColor":{"type":"string"},"strikethrough":{"type":"boolean"}}},"userName":{"type":"string"},"annotationId":{"type":"string"},"action_explanation":{"type":"string"}}},"logicalName":"update_annotation","displayName":"update_annotation","title":"update_annotation","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"delete_annotation","description":"Removes a text annotation from a live Trident document. Use get_document_summary to get all annotation IDs before calling this. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","annotationId"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"userName":{"type":"string"},"annotationId":{"type":"string"},"action_explanation":{"type":"string"}}},"logicalName":"delete_annotation","displayName":"delete_annotation","title":"delete_annotation","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"update_canvas_graphic","description":"Repositions or resizes a background image (canvas graphic) in a live Trident document. Use open_document to get the canvas graphic ID and current dimensions — it appears as: image <id> \"<url>\" at (x, y) width:W height:H. The position at (x, y) is the TOP-LEFT corner. USE THIS BEFORE placing many geographically-positioned nodes: if the background map is small (e.g. width < 700), scale it up so nodes have room to breathe and do not overlap. Requires a valid editor access token.","inputSchema":{"type":"object","required":["token","agentId","canvasGraphicId","changes"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"changes":{"type":"object","required":[],"properties":{"x":{"type":"number"},"y":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"aspectLock":{"type":"boolean"}}},"userName":{"type":"string"},"canvasGraphicId":{"type":"string"},"action_explanation":{"type":"string"}}},"logicalName":"update_canvas_graphic","displayName":"update_canvas_graphic","title":"update_canvas_graphic","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"make_suggestion","description":"Posts a visible suggestion to human collaborators watching the document WITHOUT making any changes to the diagram. Use this when you observe something worth flagging — a potential mistake, an improvement, or a question — but want the human to decide. The suggestion appears as a bold \"SUGGESTION:\" callout in the UI with a radar pulse animation on your presence dot for 10 seconds. Does NOT mutate the diagram. Requires a valid viewer or editor access token.","inputSchema":{"type":"object","required":["token","agentId","userName","suggestion"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"entityId":{"type":"string"},"userName":{"type":"string"},"suggestion":{"type":"string"}}},"logicalName":"make_suggestion","displayName":"make_suggestion","title":"make_suggestion","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"explain","description":"Delivers an explanation payload to human collaborators watching the document, optionally anchored to a specific node or container. Use this when you want to explain what a diagram element represents, why it exists, or how it relates to other parts of the system — without suggesting a change. The explanation appears in the UI attributed to you. Does NOT mutate the diagram. Requires a valid viewer or editor access token. IMPORTANT: this tool automatically pauses (3–15 s, proportional to explanatio","inputSchema":{"type":"object","required":["token","agentId","userName","explanation"],"properties":{"token":{"type":"string"},"agentId":{"type":"string"},"entityId":{"type":"string"},"userName":{"type":"string"},"explanation":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"explain","displayName":"explain","title":"explain"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Trident-Chart&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3AudHJpZGVudGNoYXJ0LmNvbS9tY3AifQ%3D%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Trident-Chart%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.tridentchart.com%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Trident-Chart%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.tridentchart.com%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Trident+Chart&connectorUrl=https%3A%2F%2Fmcp.tridentchart.com%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Trident-Chart\" --url \"https://mcp.tridentchart.com/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/tridentchart-mcp-2ffd4eca11","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/tridentchart-mcp-2ffd4eca11/tools/{tool}","mcpServerUrl":"https://mcp.tridentchart.com/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/tridentchart-mcp-2ffd4eca11?live=1"}