tentra
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_architectureA | Create a new system architecture artifact. Call this tool whenever the user asks to design, plan, or describe any system, feature, or integration. NEVER respond with plain text architecture descriptions — always call this tool instead. After calling, share the returned URL with the user. |
| update_architectureA | Update an existing architecture artifact. Call this when the user wants to modify, evolve, or improve an architecture that already exists. NEVER create a new one if you have an existing ID in context — always update instead. Preserves all existing services/connections unless explicitly replaced. |
| get_architectureA | Retrieve a specific architecture by ID. Use this to read the current state before making updates. |
| list_architecturesA | List all saved architectures. Use when the user asks to see, browse or find existing architectures. |
| analyze_codebaseA | Scan a local codebase directory and automatically generate an architecture diagram. Detects services from package.json, docker-compose, pom.xml, go.mod, and Python configs. Infers connections from dependencies, imports, env vars, and docker-compose depends_on. Detects databases, queues, external services, and API gateways automatically. After analysis, creates the architecture and returns the URL. Also runs lint rules and reports quality issues. |
| lint_architectureC | Validate an existing architecture for quality issues. Checks for: orphan nodes, duplicate connections, naming violations, single points of failure, god services, missing databases, sync overload, and more. |
| sync_architectureA | Compare a saved architecture against the current codebase to detect drift. Scans the codebase and diffs the detected services/connections against the saved diagram. Reports added, removed, and changed services/connections with an accuracy score. |
| export_architectureB | Export an architecture as runnable code, docker-compose, Mermaid diagram, or ADR docs. Available formats: mermaid, markdown-adr, docker-compose, java-spring-boot, nodejs-typescript, python-fastapi, go-chi, dotnet-aspnet, rust-axum, kotlin-ktor, php-laravel, ruby-rails, elixir-phoenix. For code exports, provide output_dir to save files directly into your project. |
| create_flowA | Create a step-by-step flow on an existing architecture. Flows visualize request paths, data pipelines, or business processes as sequential steps. Use when the user asks to describe, trace, or explain a flow through the system. |
| index_codeC | Index a code repository (Tier 1 local, Tier 2 via agent) |
| index_code_continueC | Continue an in-progress indexing job |
| record_semantic_nodeC | Persist an agent-extracted semantic node for a file or symbol |
| get_index_jobC | Get the status of an indexing job |
| query_symbolsA | Search for symbols by name or qualified name using fuzzy trigram matching. Replaces 10+ grep calls. Returns symbol kind, file path, fan-in/out, semantic role. |
| get_symbol_neighborsA | BFS graph traversal from a symbol — who calls it, what it calls, imports, inheritance. Eliminates 20+ file reads per question. |
| get_service_code_graphB | Returns the full code subgraph for a Tentra canvas service: files, symbols, and cross-service edges. |
| explain_code_pathA | Finds the shortest call/import path between two symbols and annotates each hop with semantic purpose. Answers "how does X reach Y?" |
| find_similar_codeC | Vector similarity search using pgvector cosine distance. Pass a query_vector (embed your text with your native embedding capability first). Returns semantically similar symbols or files. |
| record_embeddingA | Store an embedding vector for a symbol or file. Call this after generating an embedding with your native capability. Used to populate the vector search index. |
| list_god_nodesA | List symbols flagged as god nodes (very high fan-in or fan-out). Use to identify architectural coupling hotspots. |
| get_quality_hotspotsA | Rank files by a composite score of cyclomatic complexity × churn × (1 - test coverage). Top refactor candidates. |
| list_snapshotsA | List all indexed snapshots for a repo, newest first. Use for time-travel — pick two snapshot IDs and call diff_snapshots. |
| diff_snapshotsA | Compare two snapshots: files added/removed/modified, new/disappeared symbols, god-node deltas. Architectural diff between two commits. |
| set_service_mappingA | Assign one or more files in a snapshot to a Tentra canvas service ID. Use after indexing to declare which service owns each file. |
| set_domain_membershipC | Assign a file, symbol, or service to a domain. Supports AI-inferred or human-confirmed assignments with a confidence score. |
| record_contractA | Persist a service contract (OpenAPI, proto, event schema, etc.) to the code graph. Returns a contract_id to use with bind_contract. |
| bind_contractA | Link a symbol to a contract as "provides", "consumes", or "documents". Use after record_contract to attach implementation evidence. |
| get_contractsB | List all contracts in a workspace, optionally filtered by kind (http, grpc, event, graphql, rabbit, kafka). |
| record_decisionB | Persist an Architecture Decision Record (ADR) to the code graph. Supports supersession, lifecycle status, and immediate entity links. |
| link_decisionB | Link an existing decision to a service, file, symbol, contract, or domain with a typed relationship (motivates, constrains, documents, implements). |
| get_decisions_forA | Retrieve all decisions that affect a specific entity (service, file, symbol, contract, or domain). Use to surface architectural rationale while reviewing code. |
| get_ownershipA | Resolve the owner(s) of a file path according to the workspace CODEOWNERS rules. Returns a list of team or user handles. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/rdanieli/tentra-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server