Archi MCP Server
UnclaimedEclipse PDE plugin for Archi that exposes ArchiMate models via MCP protocol, enabling LLMs to query, analyse, and modify Enterprise Architecture models
Install
claude mcp add --transport http archi http://127.0.0.1:18090/mcpSet up this server
More in AI & ML
Browse the full directoryUnclaimed listing
Is this your MCP server?
This listing was auto-indexed from the public record. Claim it to edit the page, set compatibility and unlock growth tools. Takes under two minutes.
Claim this serverSecurity profile
Claimed and verified servers get a weekly static scan that shows what the code can reach: external services, environment variables, shell commands, agent configuration folders, plus any dependencies with known advisories. Claim this listing to get one. How the security profile works
40 of 40 tools
Documented tools (40)
From project documentation. A server handshake does not verify each tool’s description or behavior.
add-connection-to-view
Add a visual connection representing an existing model relationship, with optional styling, label suppression, and label positioning
add-group-to-view
Add a visual grouping rectangle (pure visual container, no model representation). Optional imagePath, imagePosition, showIcon for custom icon overlays, and recede: false to suppress the auto-backdrop when nesting inside an unauthored-fill container
add-image-to-view
Add a standalone image as a first-class diagram node (sibling to notes, groups, and view-references). Requires viewId and an imagePath returned by add-image-to-model or list-model-images. Default size is the image's natural dimensions; typo'd paths are rejected with IMAGENOTFOUND. Distinct from upda
add-note-to-view
Add a text note annotation (pure visual, no model representation). Optional imagePath, imagePosition, showIcon, and note-specific borderType
add-to-view
Place a model element onto a view diagram (same element can appear on multiple views). Optional imagePath, imagePosition, showIcon for custom icon overlays, labelExpression for a per-view-object dynamic label template (e.g. "${name}", "${property:Owner}"), and recede: false to suppress the auto-back
add-view-reference-to-view
Embed another ArchiMate view as a clickable thumbnail (the agent-driven equivalent of Archi GUI's drag-view-onto-view). Requires viewId (target) and referencedViewId (source). The referenced view's name is not stored on the visual — renaming the referenced view auto-updates every embedding
apply-positions
Apply a complete visual layout atomically (up to 10,000 entries per call)
arrange-groups
Position top-level groups relative to each other in grid, row, or column layout. Density-aware default: when spacing is omitted on a view with inter-group connections, the tool derives a connection-count-aware default (≤ 15 → 80 px, 16–30 → 100 px, > 30 → 120 px). Pass an explicit spacing to suppres
auto-layout-and-route
Two modes: auto (default) uses ELK Layered to compute positions AND routes in one operation; grouped orchestrates the full grouped-view workflow (layout-within-group + arrange-groups + optimize-group-order + auto-route-connections) atomically. Smart iteration when targetRating is set — factor-aware
auto-route-connections
Orthogonal connection routing using clearance-weighted visibility-graph A pathfinding with corridor directionality, corridor diversity, group-wall awareness, channel-global ordered nudging, and post-routing path straightening. Two modes: mode: "full" (default) re-routes whole connections via visibil
clear-view
Remove all visual elements and connections from a view (model objects preserved)
clone-view
Duplicate an existing view with all visual contents (elements, groups, notes, connections, bendpoints, styling). The clone references the same model objects
create-element
Create an ArchiMate element with type validation and duplicate detection. Optional specialization parameter auto-creates the specialization on first use. A folderId that points at a folder whose ArchiMate layer is illegal for the element type is rejected up front with FOLDERLAYERMISMATCH (delegated
create-relationship
Create a relationship with ArchiMate specification rule enforcement. Optional specialization parameter auto-creates the specialization on first use. Optional type-conditional semantic attributes: accessType (AccessRelationship), associationDirected (AssociationRelationship), influenceStrength (Influ
create-specialization
Define a specialization explicitly without creating any element. Idempotent on duplicate (name, conceptType) — useful for pre-registering vocabulary at session start. Optional imagePath sets the specialization's icon (Archi renders it on every concept of that specialization)
create-view
Create a new diagram view with optional viewpoint and connection router type
delete-specialization
Delete a specialization. Refuses by default if any concept uses it; pass force: true to detach references and delete in one atomic command
find-concept-usage
Reverse where-used lookup — given an element or relationship ID, returns every view and visual object/connection that references it. Inverse of get-view-contents. Use before delete-element / delete-relationship / rename / re-type to see the cross-view footprint in one round-trip
get-element
Retrieve element(s) by ID (single via id or batch via ids array)
get-model-info
Model overview — name, purpose, custom properties, element/relationship/view counts by type and layer, plus specialization count. Read counterpart to update-model
get-or-create-element
Discovery-first — returns existing element if exact name+type match exists, otherwise creates new
get-relationships
Traverse relationships with configurable depth (0-3 hops) or multi-hop chain traversal with direction/type/layer filters
get-specialization-usage
Audit query — lists every element and relationship referencing a specialization. Call before rename or delete
get-view-contents
View diagram contents — elements, relationships, visual positions, connection routing, image visuals, and the full styling surface (typography, gradient, alignment, line style, labelExpression) so styling mutations can be read back and verified. format: "tree" returns the containment hierarchy, desc
get-views
List views with optional viewpoint type or name filtering
layout-flat-view
Automatic layout for flat (non-grouped) views — row, column, or grid arrangement with optional sorting by name/type/layer and category grouping
layout-within-group
Arrange child elements inside a container using row, column, or grid patterns. The container may be a visual group or an ArchiMate-element container (ApplicationComponent, Node, ApplicationFunction, etc.) that holds nested children — the same arrangement / spacing / padding / columns / autoResize /
list-specializations
List every specialization defined on the model with (name, conceptType, layer, usageCount, imagePath). Optional conceptType filter
optimize-group-order
Reorder elements within groups to minimise inter-group edge crossings
remove-from-view
Remove a visual element or connection from a view (model object preserved)
search-and-create
Combined search + conditional create with duplicate candidate display
search-elements
Full-text search across element names, documentation, and properties with optional type, layer, and specialization filters
search-relationships
Search all relationships by text, type, source/target element layer, and specialization — no element ID needed
update-element
Update element name, documentation, properties, or specialization (pass "" to clear)
update-model
Update the loaded model's own name, purpose, and custom properties as a single undo unit. At least one of the three must be provided; omitted fields stay unchanged. Empty-string purpose clears the field; null property values remove a key
update-relationship
Update relationship name, documentation, properties, or specialization (pass "" to clear). Optional type-conditional semantic attributes: accessType (AccessRelationship), associationDirected (AssociationRelationship), influenceStrength (InfluenceRelationship). Source, target, and type are immutable
update-specialization
Rename a specialization and/or set its icon. Refuses to merge into an existing target name. Existing references move with the rename. Optional imagePath (set/change icon) and clearImagePath: true (explicit clear) — mutually exclusive. At least one of newName, imagePath, or clearImagePath must be sup
update-view
Update view name, viewpoint, documentation, properties, or connection router type
update-view-connection
Replace bendpoints, update styling, toggle label visibility, and/or set label position of a connection on a view
update-view-object
Update position, size, styling, image, labelExpression, and/or anchor of a visual element on a view. Optional anchoring (anchorTarget, anchorEdge below/above/right/left — default below, anchorDx/anchorDy) makes the object follow a target container's edge, resolved from the target's current bounds at
Tool change history
FAQ
Questions about Archi MCP Server
- How do I connect Archi MCP Server to Claude?
- The listing records `claude mcp add --transport http archi http://127.0.0.1:18090/mcp` as its setup step. Run it, then follow the repository's instructions for the client configuration; the listing names Claude Desktop, Claude Code, Cursor as compatible clients.
- Is Archi MCP Server free?
- The listed licence is MIT. Check the upstream terms for permitted use and commercial requirements; a public repository does not by itself mean the software is free or open source. Connected APIs and hosted services may have separate charges.
- What can Archi MCP Server do?
- Archi MCP Server documents 40 tools to the agent, including add-connection-to-view, add-group-to-view, add-image-to-view. The descriptions above come from project documentation. A live handshake does not test individual tool behavior.