Skip to main content
Glama
thijs-hakkenberg

ArchiMate MCP Server

ArchiMate MCP Server

An MCP (Model Context Protocol) server that enables LLMs to work with ArchiMate models stored in coArchi2 repositories. The server design follows the ArchiMate 3.2 specification structure, making it intuitive for LLMs to select appropriate layers, elements, and relationships.

Features

  • Full ArchiMate 3.2 Support: All element types across Motivation, Strategy, Business, Application, Technology, and Implementation & Migration layers

  • Relationship Validation: Enforces valid ArchiMate relationships per the specification

  • LLM-Friendly Design: Layer-specific tools with enumerated element types guide correct usage

  • coArchi2 Compatible: Reads and writes model.archimate XML files

  • ArchiMate Exchange Format: Import/export using the standard ArchiMate Open Exchange Format

  • Multiple Export Formats: SVG, PNG, Mermaid diagrams, Markdown documentation, and interactive HTML decks

  • Audit Logging: Track all model operations with NDJSON audit logs

  • Impact Analysis: Analyze dependencies and impacts of architecture changes

Related MCP server: ArchiMate MCP Server

Installation

Prerequisites

  • Node.js 18+

  • npm

Build from Source

cd archimate-mcp-server
npm install
npm run build

Usage with Claude Code

Quick Install (npx, auto-updates)

claude mcp add archimate -- npx -y archimate-mcp-server@latest

Build from Source

Clone and build, then add to Claude Code:

git clone https://github.com/thijs-hakkenberg/archimate-mcp.git
cd archimate-mcp
npm install
npm run build
claude mcp add archimate -- node $(pwd)/dist/index.js

Verify it was added:

claude mcp list

Remove if needed:

claude mcp remove archimate

Usage with Claude Desktop

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "archimate": {
      "command": "node",
      "args": ["/path/to/archimate-mcp-server/dist/index.js"]
    }
  }
}

Available Tools (33 total)

Model Management

Tool

Description

archimate_open_model

Open a model from a coArchi repository

archimate_save_model

Save the current model

archimate_create_model

Create a new empty model

Navigation

Tool

Description

archimate_list_elements

List elements (optionally filtered by layer/type)

archimate_get_element

Get element details with relationships

archimate_find_elements

Search elements by name pattern

Element Creation (Layer-Specific)

Tool

Element Types

archimate_create_motivation_element

Stakeholder, Driver, Assessment, Goal, Outcome, Principle, Requirement, Constraint, Meaning, Value

archimate_create_strategy_element

Resource, Capability, ValueStream, CourseOfAction

archimate_create_business_element

BusinessActor, BusinessRole, BusinessCollaboration, BusinessInterface, BusinessProcess, BusinessFunction, BusinessInteraction, BusinessEvent, BusinessService, BusinessObject, Contract, Representation, Product

archimate_create_application_element

ApplicationComponent, ApplicationCollaboration, ApplicationInterface, ApplicationFunction, ApplicationInteraction, ApplicationProcess, ApplicationEvent, ApplicationService, DataObject

archimate_create_technology_element

Node, Device, SystemSoftware, TechnologyCollaboration, TechnologyInterface, Path, CommunicationNetwork, TechnologyFunction, TechnologyProcess, TechnologyInteraction, TechnologyEvent, TechnologyService, Artifact, Equipment, Facility, DistributionNetwork, Material

archimate_create_implementation_element

WorkPackage, Deliverable, ImplementationEvent, Plateau, Gap

archimate_create_composite_element

Grouping, Location

Relationships

Tool

Description

archimate_create_relationship

Create a relationship (validates against ArchiMate spec)

archimate_list_relationships

List relationships

archimate_get_valid_relationships

Get valid relationship types between element types

Supported Relationship Types: Composition, Aggregation, Assignment, Realization, Serving, Access, Influence, Association, Triggering, Flow, Specialization

Views/Diagrams

Tool

Description

archimate_list_views

List all diagram views

archimate_create_view

Create a new view

archimate_add_to_view

Add an element to a view; connections to on-canvas peers are auto-drawn (opt out with auto_connect: false)

archimate_add_connection_to_view

Manually add a connection — normally unnecessary since archimate_add_to_view auto-draws

Modification

Tool

Description

archimate_update_element

Update element name/documentation

archimate_delete_element

Delete element and its relationships

archimate_delete_relationship

Delete a relationship

Analysis

Tool

Description

archimate_layer_summary

Get element counts by layer

archimate_impact_analysis

Analyze element dependencies

Exchange Format (Import/Export)

Tool

Description

archimate_import_exchange

Import model from ArchiMate Open Exchange XML

archimate_export_exchange

Export model to ArchiMate Open Exchange XML

Export Tools

Tool

Description

archimate_export_mermaid

Generate Mermaid diagram syntax from model or view

archimate_export_diagram

Export view as SVG or PNG image

archimate_export_markdown

Export model as Markdown documentation

archimate_export_html_deck

Export model as interactive HTML deck

Audit Logging

Tool

Description

archimate_configure_audit

Enable/disable audit logging, set log path

archimate_get_audit_log

Read recent audit log entries

Available Resources

URI

Description

archimate://spec/elements

Catalog of all ArchiMate element types

archimate://spec/relationships

Catalog of relationship types

archimate://model/summary

Current model summary

Example Usage

Once connected, you can ask Claude to:

Open the ArchiMate model at /path/to/my-model

Create a new Business Actor called "Customer" with documentation "External customer"

Create an Application Component called "Order Service"

Create a Serving relationship from "Order Service" to "Customer"

Show me all elements in the Application layer

What relationships are valid between ApplicationComponent and BusinessProcess?

Do an impact analysis on the "Order Service" component

Export the model as Markdown documentation to /path/to/docs.md

Generate a Mermaid diagram for the Business layer

Export the main view as an SVG to /path/to/diagram.svg

Create an interactive HTML deck of the architecture

Export Formats

Mermaid Diagrams

Generate Mermaid flowchart syntax that can be rendered in Mermaid-compatible viewers:

flowchart TB
    subgraph Business["Business Layer"]
        BA1["Customer"]
        BP1["Order Process"]
    end
    subgraph Application["Application Layer"]
        AC1["Order Service"]
    end
    AC1 -->|Serving| BP1

SVG/PNG Diagrams

Export diagram views as scalable SVG or rasterized PNG images with:

  • Color-coded elements by layer

  • ArchiMate notation

  • Relationship lines with appropriate arrows

Markdown Documentation

Generate comprehensive documentation including:

  • Model overview with statistics

  • Elements grouped by layer

  • Relationship details

  • Embedded Mermaid diagrams for views

HTML Deck

Create an interactive single-file HTML presentation with:

  • Tab navigation by layer

  • Element cards with relationship details

  • Search functionality

  • Light/dark theme support

  • Embedded SVG diagrams

Audit Logging

All model operations can be logged to an NDJSON file for auditing:

{"timestamp":"2024-01-15T10:30:00.000Z","event":"archimate_create_business_element","action":"create","elementType":"BusinessActor","elementId":"id-123","elementName":"Customer","success":true,"durationMs":5}

Configure via environment variable:

export ARCHIMATE_AUDIT_LOG=/path/to/audit.ndjson  # Set log path
export ARCHIMATE_AUDIT_LOG=disabled               # Disable logging

Relationship Validation

The server validates relationships against the ArchiMate 3.2 specification. Invalid relationships are rejected with helpful error messages:

Error: Assignment is not a valid relationship between DataObject and BusinessActor
Suggestions: Realization, Serving, Association, Flow

Project Structure

archimate-mcp-server/
├── src/
│   ├── index.ts              # MCP server entry point
│   ├── model/
│   │   ├── types.ts          # ArchiMate type definitions
│   │   ├── parser.ts         # XML model parser
│   │   └── writer.ts         # XML model writer
│   ├── relationships/
│   │   └── validation.ts     # Relationship validation
│   ├── exporters/
│   │   ├── mermaid-exporter.ts    # Mermaid diagram generation
│   │   ├── svg-exporter.ts        # SVG/PNG diagram rendering
│   │   ├── markdown-exporter.ts   # Markdown documentation
│   │   └── html-deck-exporter.ts  # HTML presentation deck
│   ├── exchange/
│   │   ├── exchange-reader.ts     # ArchiMate Exchange import
│   │   └── exchange-writer.ts     # ArchiMate Exchange export
│   └── audit/
│       └── logger.ts              # Audit logging system
├── dist/                     # Compiled output
├── package.json
├── tsconfig.json
└── vitest.config.ts          # Test configuration

Testing

npm test              # Run tests
npm run test:watch    # Run tests in watch mode
npm run test:coverage # Run tests with coverage

License

MIT

Available Tools

33 tools
archimate_add_connection_to_viewA

Manually add a connection (line/arrow) between two diagram objects in a view. Normally unnecessary - archimate_add_to_view auto-draws connections for all relationships it finds between the new element and existing on-canvas elements. Use this tool only to: (a) restore a connection after calling archimate_add_to_view with auto_connect: false, or (b) add a connection that was not auto-drawn because one endpoint was not yet in the view. Both diagram objects must already be in the view.

ParametersJSON Schema
NameRequiredDescriptionDefault
view_idYesID of the view
relationship_idYesID of the relationship to visualize
source_diagram_object_idYesID of the source diagram object (from archimate_add_to_view response)
target_diagram_object_idYesID of the target diagram object (from archimate_add_to_view response)

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses the manual nature, the conditions for use, and the prerequisite. While it doesn't cover error handling or potential side effects (e.g., if connection already exists), it provides sufficient behavioral context for an add operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise—three sentences. The first sentence states the core action, followed by context on when it's needed. No wasted words, and information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's specificity and lack of output schema, the description is complete. It explains purpose, usage scenarios, prerequisites, and distinguishes from the main sibling tool. No critical information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining the relationship_id as 'the relationship to visualize' and noting that source and target IDs come from the archimate_add_to_view response. This enriches understanding beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action: 'Manually add a connection (line/arrow) between two diagram objects in a view.' It distinguishes itself from the sibling tool 'archimate_add_to_view' which auto-draws connections, making its purpose specific and non-overlapping.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use this tool: only when auto_connect is false or when a connection wasn't auto-drawn because one endpoint wasn't in the view. It also states a prerequisite: both diagram objects must already be in the view. This provides clear usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_add_to_viewA

Add an element to a diagram view. Connections for relationships between this element and any element already in the view are drawn automatically - you do not need to call archimate_add_connection_to_view for them. The response lists every connection that was auto-drawn in autoConnectedRelationships.

ParametersJSON Schema
NameRequiredDescriptionDefault
view_idYesID of the view
element_idYesID of the element to add
xNoX position (default: auto)
yNoY position (default: auto)
widthNoWidth (default: 120)
heightNoHeight (default: 55)
auto_connectNoAuto-draw diagram connections for relationships between this element and on-canvas peers (default: true). Set to false only if you want to place the element without any connections and add them manually.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description bears full burden. It discloses auto-connection behavior and response content (autoConnectedRelationships). It does not mention potential side effects like duplicate adds, but the behavior is adequately described for a view mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler. The action and key behavior are front-loaded. Every sentence serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, it mentions the response includes autoConnectedRelationships. It doesn't specify if the element must exist, but that's implied by element_id. Overall sufficient for a straightforward add-to-view operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds value by explaining auto_connect's purpose and stating that x/y default to auto, width=120, height=55, and that the response lists auto-drawn connections. This meaningfully extends the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it adds an element to a diagram view and distinguishes itself from the sibling tool 'archimate_add_connection_to_view' by explaining auto-connection behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says you do not need to call archimate_add_connection_to_view for relationships, and the auto_connect parameter provides guidance on when to set it to false. This gives clear when-to-use and when-not-to-use instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_configure_auditC

Configure audit logging for model operations

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledNoEnable or disable audit logging
log_pathNoPath to the audit log file

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It does not disclose whether this is a destructive operation, if it requires special permissions, or what the scope of the configuration change is.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no waste. Could be slightly more structured, but it is appropriately concise for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-param configuration tool with no output schema, the description is too minimal. It does not explain the effect of enabling/disabling or how the configuration persists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no additional meaning beyond the schema; both parameters are already described well in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Configure audit logging for model operations' clearly states the verb (configure) and resource (audit logging), and adds context with 'for model operations'. It distinguishes from the sibling tool 'archimate_get_audit_log' which retrieves logs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, no prerequisites, and no context about the effect of enabling/disabling audit logging.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_application_elementA

Create an Application layer element (Chapter 9). Use for application components, services, and data objects.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_typeYesType of application element: ApplicationComponent (software unit), ApplicationCollaboration (components working together), ApplicationInterface (access point), ApplicationFunction (automated behavior), ApplicationInteraction (collective behavior), ApplicationProcess (sequence of behaviors), ApplicationEvent (state change), ApplicationService (exposed behavior), DataObject (structured data)
nameYesName of the element
documentationNoOptional documentation/description

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as idempotency, prerequisites (e.g., model must be open), or side effects. For a creation tool, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words. Action verb is front-loaded. Efficient and to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is minimal but covers basic purpose. However, given the simplicity of the tool and high schema coverage, it adequately informs the agent. Missing guidelines and behavioral details prevent a higher score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not add meaning beyond the schema; it repeats concepts already covered by the enum descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Create an Application layer element' and specifies usage for application components, services, and data objects. It distinguishes from sibling tools (e.g., create_business_element) by explicitly naming the layer.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a clear context ('Use for application components, services, and data objects') but lacks explicit exclusions or references to alternatives. It implies usage but does not specify when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_business_elementB

Create a Business layer element (Chapter 8). Use for actors, processes, services, and business objects.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_typeYesType of business element: BusinessActor (entity performing behavior), BusinessRole (responsibility), BusinessCollaboration (working together), BusinessInterface (access point), BusinessProcess (sequence of behaviors), BusinessFunction (collection of behavior), BusinessInteraction (collective behavior), BusinessEvent (state change), BusinessService (exposed behavior), BusinessObject (concept/information), Contract (agreement), Representation (perceptible form), Product (collection of services)
nameYesName of the element
documentationNoOptional documentation/description

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It only says 'Create a Business layer element' without disclosing side effects, authorization needs, behavior on duplicates, or what is returned. This is minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the main purpose. It could be slightly more detailed but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 13 element types and no output schema, the description lacks completeness. It does not mention return values, error handling, or prerequisites, leaving significant gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and includes detailed enum descriptions. The description adds context like 'actors, processes, services' which complements the schema, but does not significantly enhance understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it creates a Business layer element and gives examples like actors, processes, services, and business objects. This distinguishes it from sibling tools for other layers, but the list of allowed types is extensive and not fully enumerated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides some guidance by saying 'Use for actors, processes, services, and business objects', implying when to use this tool. However, it lacks explicit exclusions or alternative suggestions for other layers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_composite_elementB

Create a composite element (Chapter 4). Use for grouping and locations.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_typeYesType of composite element: Grouping (aggregate concepts), Location (place where things are located)
nameYesName of the element
documentationNoOptional documentation/description

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states the tool creates an element, but does not describe side effects, required permissions, return behavior, or whether it modifies an existing model. This is insufficient for an agent to understand the tool's impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short, consisting of one sentence and a short clause. It front-loads the core action ('Create a composite element'). However, the parenthetical '(Chapter 4)' is cryptic and does not earn its place, slightly reducing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 3 parameters, no output schema, and no annotations. The description does not explain return values, whether the model must be open, or how to interpret the result. Given the complexity of creating an element and the many sibling tools, the description is too minimal to be fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage and includes detailed descriptions for each parameter (e.g., element_type explains 'Grouping (aggregate concepts), Location (place where things are located)'). The tool description reinforces this with 'Use for grouping and locations', adding context beyond the schema. According to guidelines, high schema coverage yields a baseline of 3, but the description adds meaningful value, justifying a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Create a composite element (Chapter 4). Use for grouping and locations.' It identifies the verb (Create) and resource (composite element) and mentions the two enum types (Grouping, Location). However, it does not clearly differentiate from sibling element creation tools (e.g., archimate_create_application_element) beyond the enum values, and the 'Chapter 4' reference is obscure.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Use for grouping and locations' gives some context for when to use this tool (creating Grouping or Location elements). However, it provides no explicit guidance on when not to use it or alternatives among the many sibling tools for creating other element types.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_implementation_elementA

Create an Implementation & Migration layer element (Chapter 12). Use for work packages, deliverables, and architecture plateaus.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_typeYesType of implementation element: WorkPackage (series of actions), Deliverable (result of work), ImplementationEvent (state change), Plateau (stable architecture state), Gap (difference between plateaus)
nameYesName of the element
documentationNoOptional documentation/description

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states the action (create) without mentioning side effects, permissions, or safety. For a creation operation, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that immediately conveys the purpose and intended use. Every word is valuable, and the key information (layer, element types) is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (3 parameters, no output schema), the description provides adequate context about the layer and element types. However, it lacks behavioral guidance, which slightly reduces completeness. No output schema means return values are not explained, but that is acceptable for a create tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with all three parameters described. The description adds a list of element types but does not provide additional semantic meaning beyond what the schema already offers for the enum values. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states creating an Implementation & Migration layer element, referencing Chapter 12 and listing element types (work packages, deliverables, plateaus). This distinguishes it from sibling tools like create_business_element or create_technology_element, which cover other layers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Use for work packages, deliverables, and architecture plateaus' provides clear guidance on when to use the tool. However, it does not explicitly state when not to use it or mention alternative tools, though the layer-specific naming implies exclusion of other layers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_modelA

Create a new empty ArchiMate model with standard folder structure

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the new model
pathYesPath where to save the model

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that the model is empty and includes a standard folder structure, but does not explain side effects (e.g., whether it saves automatically, overwrites existing files) or required application state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence with no unnecessary words. While concise, it could include additional brief context without becoming verbose. It is appropriately front-loaded but just a touch lean.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description does not mention return value (e.g., model ID or success indication). For a create tool with two simple parameters, the description is adequate but could be more complete by hinting at next steps (e.g., 'Use this before adding elements or views').

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions ('Name of the new model', 'Path where to save the model'), only incrementing the context of 'standard folder structure'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create a new empty ArchiMate model') and the resource ('with standard folder structure'), distinguishing it from sibling tools like archimate_create_view (creates a view within a model) and element creation tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when starting a new model but does not explicitly state when to use this tool versus alternatives like opening an existing model (archimate_open_model) or creating views/elements. No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_motivation_elementA

Create a Motivation layer element (Chapter 6). Use for stakeholders, goals, requirements, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_typeYesType of motivation element: Stakeholder (person/role with interests), Driver (motivation condition), Assessment (analysis result), Goal (desired end state), Outcome (end result), Principle (general intent), Requirement (specific need), Constraint (limitation), Meaning (interpretation), Value (worth/importance)
nameYesName of the element
documentationNoOptional documentation/description

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as side effects (e.g., auto-save), permission requirements, or constraints like duplicate checks, leaving the agent with limited insight.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loading the purpose and providing immediate clarity without unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple creation tool with three parameters and no output schema, the description covers the basic concept but lacks context about the Motivation layer's role or post-creation behavior (e.g., no return value mentioned).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with element_type enum annotated for each value. The description adds only a 'Chapter 6' reference, so it does not significantly enhance meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates a Motivation layer element and lists examples like stakeholders, goals, and requirements, which distinguishes it from sibling create tools targeting other layers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for Motivation layer elements but provides no explicit guidance on when to use this tool versus alternatives like archimate_create_business_element or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_relationshipB

Create a relationship between two elements. Validates against ArchiMate specification.

ParametersJSON Schema
NameRequiredDescriptionDefault
relationship_typeYesType of relationship: Composition (consists of), Aggregation (combines), Assignment (allocates responsibility), Realization (creates/implements), Serving (provides functionality), Access (reads/writes), Influence (affects), Association (unspecified link), Triggering (causes), Flow (transfers), Specialization (is a kind of)
source_idYesID of the source element
target_idYesID of the target element
nameNoOptional name/label for the relationship
access_typeNoFor Access relationships: type of access
influence_modifierNoFor Influence relationships: strength modifier

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description is expected to disclose behavioral traits. It mentions validation but does not clarify what happens on validation failure (error/rollback), whether the operation is reversible, or any side effects. The lack of detail about mutation behavior is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two sentences, no superfluous information, and effectively front-loads the core purpose. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description omits critical context: return value (e.g., the created relationship object), error handling, validation specifics (e.g., which relationship types are valid for which element pairs), and behavior for optional parameters. Given the complexity of relationship creation and the absence of an output schema, this lack of detail hinders correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers 100% of parameters with descriptions, so the tool description adds no additional meaning. The baseline score of 3 is appropriate as the schema does the heavy lifting, and the description fails to clarify parameter interdependencies (e.g., access_type only relevant for Access type).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Create' and the resource 'relationship between two elements', distinguishing it from sibling tools like archimate_list_relationships or archimate_delete_relationship. The additional note about validation against the ArchiMate specification adds specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives (e.g., archimate_add_connection_to_view). The description implies its use for creating relationships but does not mention prerequisites, exclusions, or scenarios where other tools are more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_strategy_elementA

Create a Strategy layer element (Chapter 7). Use for capabilities, resources, and strategic planning.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_typeYesType of strategy element: Resource (owned asset), Capability (ability to do something), ValueStream (sequence creating value), CourseOfAction (strategic approach/plan)
nameYesName of the element
documentationNoOptional documentation/description

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavioral traits. It indicates creation but does not disclose side effects, required context (e.g., open model), or limitations. Adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loaded with the main action and additional context. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple creation tool with 3 parameters and no output schema or annotations, the description is fairly complete. It could mention model context but is sufficient given sibling tool patterns.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the description adds no extra meaning beyond the schema. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it creates a Strategy layer element, specifying the layer and mentioning related concepts (capabilities, resources, strategic planning). This distinguishes it from sibling tools for other layers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says 'Use for capabilities, resources, and strategic planning,' implying when to use it. It does not explicitly exclude when not to use or mention alternatives, but sibling tool names provide context for layer-specific usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_technology_elementB

Create a Technology layer element (Chapter 10). Use for nodes, devices, infrastructure, and physical elements.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_typeYesType of technology element: Node (computational resource), Device (physical IT resource), SystemSoftware (infrastructure software), TechnologyCollaboration (working together), TechnologyInterface (access point), Path (link between elements), CommunicationNetwork (connects devices), TechnologyFunction (collection of behavior), TechnologyProcess (sequence of behaviors), TechnologyInteraction (collective behavior), TechnologyEvent (state change), TechnologyService (exposed behavior), Artifact (data/software file), Equipment (physical machines), Facility (physical structure), DistributionNetwork (transport network), Material (physical matter)
nameYesName of the element
documentationNoOptional documentation/description

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavior. It only states a creation action but does not mention side effects, persistence, or whether the created element is returned. Transparency is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the essential purpose without unnecessary words. It is concise and well-structured for quick comprehension.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a creation tool with no output schema, the description covers the basic purpose and scope but omits details about return values or post-creation behavior. It is minimally adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with each parameter having a description in the schema. The tool description adds no new meaning beyond the schema values, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create'), the resource ('Technology layer element'), and provides examples ('nodes, devices, infrastructure, and physical elements'). It distinguishes this tool from sibling tools by specifying the ArchiMate technology layer.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for technology infrastructure elements but lacks explicit guidance on when not to use it or comparisons with sibling tools like archimate_create_application_element.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_create_viewC

Create a new diagram view

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the view
viewpointNoOptional viewpoint type (e.g., Layered, Organization, Application)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description does not disclose behavioral traits like whether it overwrites existing views, requires permissions, or has side effects. The action 'create' implies mutation, but no further detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with clear subject and action. Front-loaded and free of extraneous information. Could be slightly more detailed but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's role in creating a view, missing details like whether a model must already exist, impact on existing views, or the structural context (e.g., view belongs to a model). No output schema, so description alone is insufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers both parameters (name, viewpoint) with descriptions. Description does not add new meaning beyond the schema, but schema itself provides adequate baseline for a simple create action.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description 'Create a new diagram view' clearly states the verb (Create) and resource (diagram view). While not explicitly distinguishing from siblings, it is distinct enough as other create tools target model elements, not views.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this vs alternatives such as archimate_create_model or other element creation tools. No context about prerequisites like an open model.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_delete_elementB

Delete an element and its associated relationships

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idYesID of the element to delete

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It mentions deletion cascades to relationships but lacks details on reversibility, side effects (e.g., removal from views), or error conditions. The burden is high and unmet.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no wasted words, frontloading the key action and resource. However, it could be slightly more informative without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (one param, no output schema, no annotations), the description should explain return value, success indication, or preconditions. It lacks these details, leaving the agent under-informed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the single parameter element_id, and the tool description adds no additional meaning beyond what the schema already provides. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Delete' and the target 'an element and its associated relationships', distinguishing it from sibling tools like archimate_delete_relationship which only deletes a single relationship.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., archimate_delete_relationship for deleting a relationship without the element). The description does not mention prerequisites or scenarios where deletion is not appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_delete_relationshipC

Delete a relationship

ParametersJSON Schema
NameRequiredDescriptionDefault
relationship_idYesID of the relationship to delete

TDQS

C2.2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but fails to disclose behavioral traits such as permanence, cascading effects, or required permissions. The single sentence adds no behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise (one short sentence), but it sacrifices substance. While not verbose, it is too minimal for a deletion tool, lacking important context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description provides no information about return values, side effects, or operation outcomes. For a destructive action, this is critically incomplete given no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a description for relationship_id. The tool description adds no additional meaning beyond what the schema already provides, meeting the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Delete a relationship' clearly identifies the action and resource, but it essentially restates the tool name and does not differentiate from sibling tools like archimate_delete_element. It is minimally adequate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., archimate_delete_element). There is no mention of prerequisites or context for deletion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_export_diagramC

Export a diagram view as SVG or PNG image

ParametersJSON Schema
NameRequiredDescriptionDefault
view_idYesID of the view to export
output_pathYesPath to save the image file (use .svg or .png extension)
formatNoOutput format (default: detected from file extension)
widthNoImage width in pixels (optional)
heightNoImage height in pixels (optional)
background_colorNoBackground color (default: #ffffff)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It only describes the action without disclosing behavioral traits such as side effects (e.g., file creation), permissions needed, or whether it modifies the model. Limited transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence is extremely concise and front-loaded with the key action. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite full parameter coverage in schema, the description lacks context about prerequisites (e.g., open model, view existence), output format behavior, or error handling. The tool has 6 parameters and no output schema, requiring more guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all parameters. The description adds no additional meaning beyond what the schema provides, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool exports a diagram view as SVG or PNG image, specifying the verb and resource. It distinguishes from other export tools by focusing on diagram views, but does not explicitly mention sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like export_exchange or export_mermaid. The description only states what it does without context of appropriate usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_export_exchangeB

Export the current model to ArchiMate Open Exchange Format XML

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesPath to save the exchange XML file

TDQS

B3.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description omits behavioral traits like file overwriting, validation, or required prior steps (e.g., model saving). The single sentence does not compensate for the lack of annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently conveys the tool's purpose with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple export with a single parameter, the description is minimally adequate but lacks details on output or error handling, and doesn't address the variety of sibling export tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a well-described path parameter. The tool description adds no additional meaning beyond the schema, so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Export) and the resource (current model to ArchiMate Open Exchange Format XML), distinguishing it from sibling export tools like archimate_export_diagram.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as archimate_export_diagram or archimate_export_markdown. No context or exclusions provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_export_html_deckA

Export the model as an interactive HTML deck with tabs and search

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesPath to save the HTML file
titleNoTitle for the HTML deck (default: model name)
themeNoColor theme (default: light)
include_searchNoInclude search functionality (default: true)
embed_diagramsNoEmbed SVG diagrams instead of Mermaid (default: true)

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden. It states the tool exports a model, suggesting a read-only operation, but doesn't disclose potential side effects, performance constraints, or prerequisites. The minimal disclosure limits transparency but doesn't mislead.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that conveys the core functionality without verbose or redundant content. Every word contributes to the purpose, achieving high conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and annotations, the description should cover prerequisites (e.g., model must be open) and output behavior (e.g., file size). It does not address these, leaving the agent with insufficient context for a 5-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no extra parameter meaning beyond what the schema already provides (e.g., 'output_path', 'theme'). It does not elaborate on parameter usage or formatting, so no added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Export' and the resource 'model as an interactive HTML deck with tabs and search'. This distinguishes it from sibling tools like 'archimate_export_diagram' (single diagram) and 'archimate_export_markdown' (text), making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: when an interactive HTML deck is needed. However, it doesn't explicitly contrast with siblings nor state when not to use. The sibling names provide implicit context, but direct guidance is missing, earning a 4 for clear but non-exclusive context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_export_markdownB

Export the model as Markdown documentation

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesPath to save the Markdown file
include_viewsNoInclude views section (default: true)
include_diagramsNoEmbed Mermaid diagrams in output (default: true)
include_relationshipsNoInclude relationship details for each element (default: true)
include_propertiesNoInclude element properties (default: false)

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosure. It only states the action (export) and format (Markdown) without mentioning side effects, safety behavior (read-only or mutation), file system implications, or output characteristics. Critical behavioral context is missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single 6-word sentence, which is highly concise and front-loaded. However, for a tool with 5 parameters and many siblings, it might be slightly too sparse, but it avoids any unnecessary text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (5 parameters, no output schema, no annotations) and the presence of multiple sibling export tools, the description is insufficient. It does not clarify the output structure, how it differs from other Markdown-like exports, or that it requires a file path. The tool's role in the workflow is underdescribed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not add any extra meaning beyond what the schema already provides for each parameter. It merely lists the action without enriching parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Export the model as Markdown documentation,' using a specific verb and resource. It distinguishes itself from sibling export tools (e.g., archimate_export_diagram, archimate_export_exchange, archimate_export_mermaid, archimate_export_html_deck) by specifying the output format.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus the many sibling export tools (e.g., archimate_export_mermaid, archimate_export_html_deck). No context about scenarios, prerequisites, or exclusions is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_export_mermaidA

Generate Mermaid diagram syntax from the model or a specific view

ParametersJSON Schema
NameRequiredDescriptionDefault
view_idNoOptional: ID of a specific view to export (exports full model if not specified)
directionNoDiagram direction (default: TB for top-to-bottom)
include_labelsNoInclude relationship labels in diagram (default: false)
layer_filterNoFilter to specific layers (e.g., ["Business", "Application"])

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states 'generate' but does not explicitly disclosed that the tool is non-destructive or read-only. It lacks behavioral details about side effects or safety.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, front-loaded with the main action, and contains no unnecessary words or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple export tool with 4 optional parameters and no output schema, the description is adequate. However, it could mention the output format (Mermaid string) and that it is non-destructive. Minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each parameter already has detailed descriptions. The tool description does not add new semantic information beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'generate' and the resource 'Mermaid diagram syntax', and distinguishes between two modes: full model or specific view. It is specific and not a tautology.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for generating Mermaid syntax, but does not explicitly compare it with sibling tools like archimate_export_diagram or archimate_export_markdown, nor states when to use this tool vs alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_find_elementsA

Search for elements by name pattern (case-insensitive regex)

ParametersJSON Schema
NameRequiredDescriptionDefault
patternYesName pattern to search for (regex supported)
layerNoOptional layer filter

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses the key behavioral detail of case-insensitive regex matching, which is valuable. However, it does not specify return format, pagination behavior, performance implications, or whether the search is confined to certain element types beyond the optional layer filter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence, avoiding unnecessary words. It is front-loaded with the core action. Minor improvement could be to separate the case-insensitive behavior more prominently, but current form is good.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 2 parameters and no output schema, the description covers the essential searching purpose. However, it lacks details about the return value (e.g., list of element IDs or names), error handling, or performance notes. A new user might need to experiment to understand the full behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description restates the parameter concepts but adds no additional detail beyond what the schema already provides (e.g., regex support is already in schema description). It does not explain regex syntax or layer enumeration values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Search') and resource ('elements'), specifies the search criterion ('name pattern') and key behavioral detail ('case-insensitive regex'). It distinguishes from sibling tools like 'archimate_list_elements' (which lists all without pattern filtering) and 'archimate_get_element' (which retrieves a single element by ID).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for pattern-based searching but does not explicitly state when to use this tool versus alternatives like 'archimate_list_elements' or 'archimate_get_element'. No exclusions, prerequisites, or comparison with siblings are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_get_audit_logB

Read recent entries from the audit log

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of entries to return (default: 50)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavior. It mentions 'recent entries' but does not clarify read-only nature, authentication needs, or whether the tool affects the audit log state. This is insufficient for a tool with no annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that is front-loaded with the verb and resource. It contains no extraneous words or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, the description should explain what fields the audit log entries contain (e.g., timestamp, user, action). It does not, making the tool's return value unclear for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the single parameter 'limit' is fully described in the schema. The description adds no additional meaning beyond the schema, thus baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Read recent entries from the audit log' clearly states the verb (Read) and resource (audit log), distinguishing it from sibling tools like archimate_configure_audit which focuses on configuration.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, such as when to use archimate_configure_audit or other read tools. Context for appropriate usage is missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_get_elementB

Get detailed information about a specific element including its relationships

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idYesThe ID of the element to retrieve

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; the description does not disclose behavioral traits such as read-only nature, side effects, or permissions. 'Detailed information' and 'relationships' are vague.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence conveying the core purpose with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple retrieval tool with one param and no output schema, the description covers basic purpose but lacks details like what 'detailed information' includes (e.g., properties, relationships) or any constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully describes the single parameter (element_id). The description adds nothing beyond the schema, meeting baseline for 100% coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves detailed information and relationships for a specific element, distinguishing it from siblings like archimate_list_elements or archimate_find_elements.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., list_elements, find_elements, impact_analysis) or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_get_valid_relationshipsB

Get valid relationship types between two element types (helps understand what connections are permitted)

ParametersJSON Schema
NameRequiredDescriptionDefault
source_typeYesSource element type
target_typeNoTarget element type (optional - shows all valid targets if omitted)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description only states what the tool returns without disclosing behavioral traits such as read-only nature, permissions needed, or side effects. The description does not add context beyond the basic function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is clear and front-loaded with the main action. No wasted words, though it could be structured with more detail in a second sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has low complexity with 2 simple parameters and no output schema. The description explains the purpose and mentions behavior when target_type is omitted. However, it lacks details about the return format or potential errors, relying on the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds no additional parameter information beyond the schema. The optionality of target_type is mentioned, which matches the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get', the resource 'valid relationship types', and the context 'between two element types'. It effectively distinguishes from sibling tools like archimate_list_relationships and archimate_create_relationship.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for understanding permitted connections but does not explicitly state when to use this tool versus alternatives like archimate_list_relationships or archimate_create_relationship. No exclusions or alternative mentions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_impact_analysisB

Analyze dependencies and impact of an element

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idYesID of the element to analyze
directionNoDirection of relationships to analyze
depthNoHow many levels deep to analyze (default: 2)

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It does not disclose whether the analysis is read-only, requires permissions, or what the output format is. Only states the basic action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single short sentence, no fluff, but it could be more informative without sacrificing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of impact analysis with direction and depth parameters and no output schema, the description is too brief. Does not explain return values or default behavior, leaving the agent underinformed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter descriptions. Tool description adds little beyond the schema; it does not clarify the meaning of direction or depth further. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool analyzes dependencies and impact of an element, using a specific verb and resource. It distinguishes well from sibling tools like create, delete, export, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as archimate_get_element or archimate_find_elements. Does not mention prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_import_exchangeB

Import an ArchiMate model from Open Exchange Format XML file

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesPath to the .xml exchange file

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral transparency. It fails to disclose important traits such as whether the import overwrites existing models, requires an open session, or handles duplicate IDs. The description is too brief for a potentially destructive operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 12 words, with no unnecessary information. It is perfectly concise and front-loaded with the action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has only one parameter and no annotations. The description adequately states the purpose but lacks details on import behavior (e.g., merge vs replace, error handling). For a simple tool, it is minimally complete but leaves gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with the parameter 'path' described as 'Path to the .xml exchange file'. The description adds 'Open Exchange Format XML file', which provides mild context beyond the schema but does not significantly enhance understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Import' and the resource 'ArchiMate model', and specifies the format 'Open Exchange Format XML file'. This distinguishes it from siblings like 'archimate_export_exchange' which performs the opposite operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as 'archimate_open_model' or other creation tools. No prerequisites or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_layer_summaryB

Get a summary of elements by layer

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description must carry full burden. It only states 'Get a summary of elements by layer' without disclosing behavior like read-only status, performance, or what 'summary' entails (e.g., counts, hierarchical structure).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with no wasted words. It could be more informative without violating conciseness, but it is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description does not explain the return value or structure of the summary, and with no output schema, the agent has insufficient context to know what to expect. Important for a no-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, and schema description coverage is 100%. The description adds no parameter details, but with no parameters, the baseline of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the verb 'Get' and the resource 'summary of elements by layer', clearly distinguishing it from sibling tools like 'archimate_list_elements' which provide raw lists. However, the lack of title and brevity reduces it from a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool over alternatives, such as 'archimate_list_elements' or 'archimate_find_elements'. The context of use is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_list_elementsA

List elements in the model, optionally filtered by layer or type

ParametersJSON Schema
NameRequiredDescriptionDefault
layerNoFilter by ArchiMate layer
element_typeNoFilter by specific element type (e.g., BusinessActor, ApplicationComponent)

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It indicates a read operation but lacks details on side effects, authorization, rate limits, return format, or pagination. Adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single concise sentence (13 words) that front-loads the action. Every word is meaningful with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the basic purpose and filters, but lacks details on return format, ordering, pagination, or the fact that no filters return all elements. Given no output schema, more context would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, giving baseline 3. The description adds no extra meaning beyond restating the optional filters; it does not explain the layer or element_type values further.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and resource ('elements in the model'), and mentions optional filters. It clearly distinguishes from siblings like archimate_get_element or archimate_find_elements.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for listing elements with optional filters, but does not explicitly state when to use this tool vs alternatives (e.g., archimate_find_elements for text search) or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_list_relationshipsA

List relationships, optionally filtered by element or type

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idNoFilter to relationships involving this element
relationship_typeNoFilter by relationship type
directionNoFor element_id filter: direction of relationships

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It does not disclose that this is a read-only operation or any behavioral traits like pagination, performance, or data limits. Minimal beyond the basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence with no wasted words. Efficiently conveys purpose and filtering capability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with no output schema, the description is mostly adequate. It covers the basic functionality and filters. Could mention return format or read-only nature given no annotations, but not critical.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear parameter descriptions. The description adds no additional meaning beyond 'optionally filtered by element or type', which is already implied by the schema. Meets baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List relationships' with optional filters, using a specific verb and resource. It distinguishes from sibling tools like archimate_create_relationship, archimate_delete_relationship, and archimate_list_elements.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance. The description implies usage for retrieving relationships with optional filters, but does not explain scenarios or differentiate from other list tools like archimate_list_elements.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_list_viewsB

List all diagram views in the model

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but description is minimal. It does not disclose any behavioral traits such as read-only nature or side effects beyond listing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded, no wasted words. Concise and to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Sufficient for a simple listing tool, but lacks details about output format, pagination, or any constraints. No output schema to compensate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters, so schema coverage is 100%. Description adds no parameter info, but baseline is 3 per high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'List all diagram views' with specific verb and resource. It distinguishes from siblings like archimate_list_elements and archimate_find_elements.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like archimate_list_elements or archimate_create_view. No mention of context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_open_modelB

Open an ArchiMate model from a coArchi repository directory. Returns model metadata including element counts by layer.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesPath to the model directory or model.archimate file

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It states the tool 'opens' a model and 'returns metadata', but does not clarify whether it modifies files (likely read-only), whether authentication is needed, or whether the model becomes the active context for other tools. It lacks disclosure of side effects or state changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that efficiently covers the action, source, and return value. Every phrase contributes meaning (action, source type, output). No unnecessary words or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one string parameter, no output schema), the description is moderately complete. It explains what the tool does and what it returns. However, it omits details about the return format (metadata structure), the fact that the model becomes the current working model for other tools, and the requirement that the directory be a coArchi repository. These gaps reduce completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already describes the 'path' parameter as 'Path to the model directory or model.archimate file' with 100% coverage. The tool description adds context by mentioning 'coArchi repository directory', but does not provide additional parameter constraints, examples, or formatting hints beyond what the schema offers. Hence, minimal added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Open an ArchiMate model'), the source ('from a coArchi repository directory'), and the return value ('model metadata including element counts by layer'). This distinguishes it from siblings like 'archimate_create_model' (creates a new model) and 'archimate_list_elements' (lists elements within a model).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not specify when to use this tool versus alternatives, nor does it mention prerequisites (e.g., that the directory must be a valid coArchi repository). There is no guidance on when not to use it or what to do after opening. For example, it does not state that subsequent operations like adding elements depend on a model being open.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_save_modelB

Save the current model to disk

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoOptional path to save to (uses original path if not specified)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description is minimal, only stating 'save to disk'. Does not disclose side effects, permissions required, or behavior when no path given (though schema covers that). Lacks behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no wasted words. Adequately sized for a simple operation, but could benefit from a bit more structure or context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It does not mention return value, whether it overwrites, or any locking behavior. More context is needed for safe use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already describes the parameter. Description adds no extra meaning beyond 'save to disk', so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states action ('Save'), resource ('current model'), and destination ('to disk'). Distinguishes from sibling tools like archimate_create_model and archimate_open_model.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage when user wants to persist changes, but no explicit guidance on when to use vs alternatives, prerequisites, or consequences (e.g., overwrite warnings).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archimate_update_elementC

Update an existing element

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idYesID of the element to update
nameNoNew name (optional)
documentationNoNew documentation (optional)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must carry the full burden. It only states 'update' without disclosing merge vs overwrite behavior, required permissions, or what happens if element_id is invalid.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, very concise. It could be slightly more informative without being verbose, but it is not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity and lack of output schema, the description does not explain return values, error handling, or side effects. This is insufficient for a mutation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds no further meaning beyond what is already in the schema for element_id, name, and documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool updates an existing element, which is a specific verb-resource pair. However, it does not differentiate from sibling tools like archimate_create_* or archimate_delete_element.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like create or delete tools. There is no context about prerequisites or typical use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 33 tool updatesv0.4.0
    • First observedarchimate_add_connection_to_view
    • First observedarchimate_add_to_view
    • First observedarchimate_configure_audit
    • First observedarchimate_create_application_element
    • First observedarchimate_create_business_element
    • First observedarchimate_create_composite_element
    • First observedarchimate_create_implementation_element
    • First observedarchimate_create_model
    • First observedarchimate_create_motivation_element
    • First observedarchimate_create_relationship
    • First observedarchimate_create_strategy_element
    • First observedarchimate_create_technology_element
    • First observedarchimate_create_view
    • First observedarchimate_delete_element
    • First observedarchimate_delete_relationship
    • First observedarchimate_export_diagram
    • First observedarchimate_export_exchange
    • First observedarchimate_export_html_deck
    • First observedarchimate_export_markdown
    • First observedarchimate_export_mermaid
    • First observedarchimate_find_elements
    • First observedarchimate_get_audit_log
    • First observedarchimate_get_element
    • First observedarchimate_get_valid_relationships
    • First observedarchimate_impact_analysis
    • First observedarchimate_import_exchange
    • First observedarchimate_layer_summary
    • First observedarchimate_list_elements
    • First observedarchimate_list_relationships
    • First observedarchimate_list_views
    • First observedarchimate_open_model
    • First observedarchimate_save_model
    • First observedarchimate_update_element

TDQS

B3.4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose. The only potential overlap is between archimate_add_to_view and archimate_add_connection_to_view, but their descriptions explicitly differentiate them, with the former auto-drawing connections and the latter for manual addition.

Naming Consistency5/5

All tools follow the 'archimate_verb_noun' pattern in snake_case, with verbs like create, delete, list, get, export, import, etc. The naming is highly consistent and predictable.

Tool Count4/5

33 tools is on the higher side but still reasonable given the breadth of ArchiMate modeling (multiple layers, relationships, views, exports, audit, impact analysis). Each tool serves a specific purpose, and the count is not excessive.

Completeness4/5

The tool set covers creation, reading, updating, and deletion for most elements and relationships, as well as views, exports, imports, and analysis. Minor gaps exist: no tool to delete a view, and no update for relationships, but these are not critical.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables generation of PlantUML ArchiMate enterprise architecture diagrams with full ArchiMate 3.2 specification support across all 7 layers, including automatic validation, multi-format export (PNG/SVG/XML), and instant diagram viewing through a built-in HTTP server.
    31
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables querying and modifying ArchiMate enterprise architecture models from XML or Archi Tool files via REST API and MCP server, supporting multiple simultaneous data sources.
    13
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Retrieves architectural information from ArchiMate models, enabling AI coding assistants to access architectural context during the software development lifecycle. Supports search and retrieval of views and elements in markdown, JSON, or YAML.
    9
    MIT

Appeared in Searches

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/thijs-hakkenberg/archimate-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server