Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.alexeibespalov/trident

REMOTE · MCP.TRIDENTCHART.COM · 2 COMPONENTS · SCANNED SEP 26

Create and edit collaborative architecture diagrams with any AI assistant using the Trident 2D DSL.

0 this week 69 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security46
Transport & Reachability100
Schema Quality & AI Usability68
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 5084 tokens (~221/item across 23 items; 23 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage99
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 97% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 4 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 24 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities20
  • Spec-recency check failed: implements MCP spec 2024-11-05; the latest is 2026-07-28. See how to fix → Fail
Install

How do I install the io.github.alexeibespalov/trident MCP server?

io.github.alexeibespalov/trident is a hosted endpoint at https://mcp.tridentchart.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · mcp.tridentchart.com

# add to Claude Code
claude mcp add --transport http alexeibespalov-trident 'https://mcp.tridentchart.com/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "alexeibespalov-trident": {
      "url": "https://mcp.tridentchart.com/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "alexeibespalov-trident": {
      "type": "http",
      "url": "https://mcp.tridentchart.com/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.alexeibespalov-trident]
url = "https://mcp.tridentchart.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "alexeibespalov-trident": {
      "type": "remote",
      "url": "https://mcp.tridentchart.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add alexeibespalov-trident --url 'https://mcp.tridentchart.com/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  alexeibespalov-trident:
    url: "https://mcp.tridentchart.com/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "alexeibespalov-trident": {
      "Transport": "http",
      "Url": "https://mcp.tridentchart.com/mcp"
    }
  }
}
# add to Vellum
assistant mcp add alexeibespalov-trident -t streamable-http -u 'https://mcp.tridentchart.com/mcp'
// mcp.json
{
  "mcpServers": {
    "alexeibespalov-trident": {
      "type": "http",
      "url": "https://mcp.tridentchart.com/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 25 Sept 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Aug 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 25 Aug 26 0
    • Stability: 0.97 → pass security
  • 11 Aug 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 31 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 27 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 0

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 25 Sept 2026 · Probed https://mcp.tridentchart.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=tridentchart.com CN=WE1,O=Google Trust Services,C=US 3 Aug 2026 1 Nov 2026 ECDSA 256 ECDSA-SHA256 2987c9ea3c1239480e34eb956566f3ec
SANs: tridentchart.com, *.tridentchart.com
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of mcp.tridentchart.com. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
tridentchart.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://mcp.tridentchart.com/mcp Verified 200
http (plaintext) http://mcp.tridentchart.com/mcp Inconclusive 405
MCP tools · 23 exposed · ~4,121 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
add_annotation ~239

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
annotationobjectyesAnnotation definition
tokenstringyesEditor access token for this document.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

add_connection ~205

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
connectionobjectyes–
tokenstringyesEditor access token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

add_container ~209

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
containerobjectyes–
tokenstringyesEditor access token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

add_node ~278

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. Orphaned nodes appear immediately to all live collaborators and create unnecessary visual churn.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
nodeobjectyesNode definition
tokenstringyesEditor access token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

delete_annotation ~193

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
annotationIdstringyesID of the annotation to delete
tokenstringyesEditor access token for this document.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

delete_connection ~260

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
connectionIdstring–ID of the connection to delete (preferred)
sourcestring–Source node ID (use with target if connectionId unknown)
targetstring–Target node ID (use with source if connectionId unknown)
tokenstringyesEditor access token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

delete_container ~253

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
containerIdstringyesID of the container to delete
deleteNodesboolean–If true, also delete all nodes inside the container (default false)
tokenstringyesEditor access token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

delete_node ~226

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
nodeIdstringyesID of the node to delete
tokenstringyesEditor access token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

explain ~266

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 explanation length) before returning, so the human has time to read. Do NOT add your own artificial delays between explain calls — the pacing is built in.

NameTypeReqDescription
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
entityIdstring–ID of the node or container being explained. Always provide this when explaining a specific element — it moves the AI cursor to that element so collaborators can follow along.
explanationstringyesThe explanation text to deliver to human collaborators (max 1000 chars).
tokenstringyesViewer or editor access token for this document.
userNamestringyesFirst name of the human you are assisting.

No output schema declared.

No examples provided.

get_comprehensive_example ~60

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_document_png ~87

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.

NameTypeReqDescription
tokenstringyesAccess token for this document. The document ID is embedded in the token.

No output schema declared.

No examples provided.

get_document_summary ~124

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.

NameTypeReqDescription
tokenstringyesAccess token for this document. The document ID is embedded in the token.

No output schema declared.

No examples provided.

get_generator_guide ~56

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_quick_start ~46

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_recent_changes ~121

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.

NameTypeReqDescription
limitnumber–Optional: Maximum number of entries to return (default 100, max 500)
sincenumber–Optional: Unix timestamp in milliseconds — only return changes after this time
tokenstringyesAccess token for this document. The document ID is embedded in the token.

No output schema declared.

No examples provided.

get_trident_spec ~53

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

make_suggestion ~248

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.

NameTypeReqDescription
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
entityIdstring–ID of the node or container this suggestion relates to. Always provide this when the suggestion concerns a specific element — it moves the AI cursor to that element so collaborators know exactly what…
suggestionstringyesThe suggestion text to show to human collaborators (max 500 chars). Be concise and actionable.
tokenstringyesViewer or editor access token for this document.
userNamestringyesFirst name of the human you are assisting.

No output schema declared.

No examples provided.

open_document ~220

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.

NameTypeReqDescription
agentIdstring–YOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
tokenstringyesAccess token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

update_annotation ~218

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
annotationIdstringyesID of the annotation to update
changesobjectyesFields to update. Only provided fields are changed.
tokenstringyesEditor access token for this document.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

update_canvas_graphic ~246

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation shown live to human collaborators (max 250 chars).
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot").
canvasGraphicIdstringyesID of the canvas graphic to update (from open_document output).
changesobjectyesGeometry fields to update. Only provided fields are changed; all others are preserved.
tokenstringyesEditor access token for this document.
userNamestring–First name of the human you are assisting.

No output schema declared.

No examples provided.

update_container ~217

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
changesobjectyes–
containerIdstringyesID of the container to update
tokenstringyesEditor access token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

update_node ~232

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.

NameTypeReqDescription
action_explanationstring–Optional: brief explanation of what this action does and why (max 250 chars). Shown live to human collaborators in the AI cursor tooltip.
agentIdstringyesYOUR AI assistant name (e.g. "Claude.ai", "GitHub Copilot"). Shown as "[agentId] working with [userName]" in the collaboration presence dot.
changesobjectyesFields to update. Only provided fields are changed.
nodeIdstringyesID of the node to update
tokenstringyesEditor access token for this document. The document ID is embedded in the token.
userNamestring–First name of the human you are assisting (ask them at session start if you do not know). Shown in the collaboration presence dot as "[agentId] working with [userName]".

No output schema declared.

No examples provided.

validate_trident ~64

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.

NameTypeReqDescription
diagramstring–Optional: The Trident diagram code to include context-specific validation tips

No output schema declared.

No examples provided.

Common questions

What is the io.github.alexeibespalov/trident MCP server?

io.github.alexeibespalov/trident is an MCP server listed in the public MCP registry as io.github.alexeibespalov/trident. Create and edit collaborative architecture diagrams with any AI assistant using the Trident 2D DSL. This page covers its hosted endpoint (https://mcp.tridentchart.com/mcp).

Is the io.github.alexeibespalov/trident MCP server safe to use?

io.github.alexeibespalov/trident scores 69 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.alexeibespalov/trident MCP server expose?

io.github.alexeibespalov/trident exposes 23 tools: get_trident_spec, get_generator_guide, get_comprehensive_example, validate_trident, get_quick_start, and 18 more. Their descriptions and schemas cost roughly 4,121 tokens of context every time the server is loaded.

Does the io.github.alexeibespalov/trident MCP server require authentication?

No. We connected to io.github.alexeibespalov/trident without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the io.github.alexeibespalov/trident MCP server still maintained?

io.github.alexeibespalov/trident is still listed as active in the MCP registry. We last reached this channel on 25 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.