MCP Tool Reference
Generated from `tenet-aws/src/services/mcp/handlers/tools.rs` (53 tools).
create_actor
Create an actor representing a user or agent that interacts with the system.
| Field | Type | Description | Required |
project | string | Project name to add the actor to | yes |
name | string | Actor display name | yes |
actor_type | string | Actor type: human_user | ai_agent | service_account | yes |
description | string | Optional description of the actor | no |
interaction_mode | string | Optional interaction mode: web_ui | mcp_agent | api | cli | no |
responsibilities | array | Optional responsibilities | no |
create_component
Create a component within a container or component.
| Field | Type | Description | Required |
project | string | Project name to add the component to | yes |
parent_name | string | Parent node name (container or component) | yes |
parent_kind | string | container | component | yes |
name | string | Display name for the component | yes |
path | string | Glob pattern for the component's code path | yes |
description | string | Optional description of the component | no |
component_kind | string | module | handler | service | util | config | other | no |
create_connection
Create a dependency or interaction between architecture nodes. Connections appear in working context as upstream/downstream dependencies.
| Field | Type | Description | Required |
project | string | Project name containing the components | yes |
source_name | string | Name of the source component | yes |
source_kind | string | container | component | person | store | external_system | yes |
target_name | string | Name of the target component or external system | yes |
target_kind | string | container | component | person | store | external_system | yes |
source_side | string | Optional source anchor side: top | right | bottom | left | no |
target_side | string | Optional target anchor side: top | right | bottom | left | no |
routing_mode | string | Optional routing mode: auto | manual | no |
control_points | array | Optional manual route control points | no |
label | string | Relationship type (e.g., 'imports', 'uses', 'REST API', 'publishes to') | yes |
description | string | Optional interaction details | no |
create_container
Create a deployable/runtime container.
| Field | Type | Description | Required |
project | string | Project name to add the container to | yes |
name | string | Display name for the container | yes |
path | string | Glob pattern for the container's code path | yes |
container_kind | string | app | service | library | other | yes |
description | string | Optional description of the container | no |
technology | string | Programming language | no |
framework | string | Framework used | no |
runtime | string | Optional runtime hint | no |
deployment | string | Optional deployment hint | no |
create_external_system
Create an external system that the project integrates with (third-party service, API, or infrastructure).
| Field | Type | Description | Required |
project | string | Project name to add the external system to | yes |
name | string | External system display name | yes |
category | string | Category (e.g., payment, auth, crm, email, partner) | yes |
description | string | Optional description of the external system | no |
vendor | string | Optional vendor (e.g., Stripe, Okta) | no |
tags | array | Optional tags | no |
create_project_architecture
Create or update a complete project architecture in one call. Use confirm=false for validation and confirm=true to persist.
| Field | Type | Description | Required |
project | object | | no |
architecture | object | | no |
containers | array | | no |
components | array | | no |
stores | array | | no |
external_systems | array | | no |
connections | array | | no |
confirm | boolean | Set true to create entities | no |
create_quality_attribute
Create a new quality attribute (non-functional requirement) for a project. Maximum 10 per project.
| Field | Type | Description | Required |
project | string | Project name | yes |
name | string | Quality attribute name (e.g., 'Security') | yes |
priority | integer | Priority (1-10, lower is higher priority) | yes |
description | string | Optional description | no |
constraints | array | Optional list of constraints | no |
create_rule
Create a new coding rule that is enforced across the organization and shown in working context.
| Field | Type | Description | Required |
name | string | Short name for the rule (e.g., 'Error Handling', 'No Console Logs') | yes |
description | string | Detailed description of the rule that AI agents should follow | yes |
category | string | Category for grouping rules (e.g., 'global', 'code-style', 'security', 'testing') | yes |
applies_to | string | Optional filter for when rule applies (e.g., 'Rust', 'TypeScript', '*.test.ts') | no |
priority | number | Optional priority (lower = higher priority, default: 100) | no |
create_skill
Create a skill in a project.
| Field | Type | Description | Required |
project | string | | yes |
name | string | | yes |
display_name | string | | yes |
description | string | | yes |
content | string | | yes |
parent_skill_name | string | | no |
sort_order | integer | | no |
create_store
Create a data store (database, cache, object storage, etc.) that components connect to.
| Field | Type | Description | Required |
project | string | Project name to add the store to | yes |
name | string | Store display name | yes |
type | string | Store type (e.g., postgres, mysql, redis, s3) | yes |
ownership | string | Ownership model (internal, shared, managed) | yes |
description | string | Optional description of the store | no |
tags | array | Optional tags | no |
delete_actor
Delete an actor by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
actor_id | string | Actor id (UUID) | no |
name | string | Actor name (case-insensitive) | no |
delete_component
Delete a component from a parent.
| Field | Type | Description | Required |
project | string | Project name containing the component | yes |
parent_name | string | Parent node name (container or component) | yes |
parent_kind | string | container | component | yes |
component_id | string | Component id (UUID) | no |
name | string | Component name to delete (case-insensitive) | no |
delete_container
Delete a container from a project.
| Field | Type | Description | Required |
project | string | Project name containing the container | yes |
container_id | string | Container id (UUID) | no |
name | string | Container name (case-insensitive) | no |
delete_external_system
Delete an external system by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
external_system_id | string | External system id (UUID) | no |
name | string | External system name (case-insensitive) | no |
delete_quality_attribute
Delete a quality attribute by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
quality_attribute_id | string | Quality attribute id (UUID) | no |
name | string | Quality attribute name (case-insensitive) | no |
delete_rule
Delete an obsolete rule by id or name. Supports org-level rules and project-scoped rules (when project is provided).
| Field | Type | Description | Required |
project | string | Optional project name. If set, deletes a project-scoped rule. | no |
rule_id | string | Rule id (UUID) | no |
name | string | Rule name (case-insensitive). Must be unique in scope. | no |
delete_skill
Delete a skill and its descendants.
| Field | Type | Description | Required |
project | string | | yes |
name | string | | yes |
delete_store
Delete a store by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
store_id | string | Store id (UUID) | no |
name | string | Store name (case-insensitive) | no |
get_actor
Get detailed info about an actor including description, interaction mode, and responsibilities.
| Field | Type | Description | Required |
project | string | Project name | yes |
actor_id | string | Actor id (UUID) | no |
name | string | Actor name (case-insensitive) | no |
get_component
Get a component by id or name under a parent.
| Field | Type | Description | Required |
project | string | Project name | yes |
parent_name | string | Parent node name (container or component) | yes |
parent_kind | string | container | component | yes |
component_id | string | Component id (UUID) | no |
name | string | Component name (case-insensitive) | no |
get_container
Get a container by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
container_id | string | Container id (UUID) | no |
name | string | Container name (case-insensitive) | no |
get_external_system
Get an external system by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
external_system_id | string | External system id (UUID) | no |
name | string | External system name (case-insensitive) | no |
get_graph_layout
Get graph layout overrides for a project and view level.
| Field | Type | Description | Required |
project | string | Project name | yes |
view_level | string | View level: context | container | detail | yes |
get_project_info
Get a comprehensive overview of one or all projects, including components, actors, stores, external systems, connections, and architecture metadata.
| Field | Type | Description | Required |
project | string | Optional project name. Omit to list all projects. | no |
path | string | Optional file path to resolve owning component (e.g., 'src/auth/login.ts') | no |
get_quality_attribute
Get detailed information about a quality attribute including constraints and linked components.
| Field | Type | Description | Required |
project | string | Project name | yes |
quality_attribute_id | string | Quality attribute id (UUID) | no |
name | string | Quality attribute name (case-insensitive) | no |
get_rules
Get coding rules and standards that must be followed. Returns all rules or filters by category.
| Field | Type | Description | Required |
category | string | Optional category filter (e.g., 'global', 'code-style', 'security', 'testing') | no |
get_skill
Get a skill including sub-skills and links.
| Field | Type | Description | Required |
project | string | | yes |
name | string | | yes |
get_store
Get detailed information about a specific store including description and tags.
| Field | Type | Description | Required |
project | string | Project name | yes |
store_id | string | Store id (UUID) | no |
name | string | Store name (case-insensitive) | no |
get_working_context
Get complete working context for a component or file path, including hierarchy, dependencies, quality attributes, and applicable rules.
| Field | Type | Description | Required |
project | string | Project name | yes |
path | string | File path to resolve to owning component context | no |
component_name | string | Component name to resolve context for | no |
import_skill
Import a skill from URL.
| Field | Type | Description | Required |
project | string | | yes |
source_url | string | | yes |
name | string | | no |
display_name | string | | no |
description | string | | no |
content | string | | no |
parent_skill_name | string | | no |
sort_order | integer | | no |
link_actor_to_component
Create a typed actor-to-component relationship (implemented as a connection edge).
| Field | Type | Description | Required |
project | string | Project name | yes |
actor_name | string | Actor id or name (case-insensitive) | yes |
component_name | string | Component id or name (case-insensitive) | yes |
component_type | string | Component type: container | component | yes |
label | string | Optional relationship label (default: uses) | no |
description | string | Optional relationship description | no |
link_quality_to_component
Link a quality attribute to a component with optional notes and component-specific constraint overrides.
| Field | Type | Description | Required |
project | string | Project name | yes |
quality_name | string | Quality attribute name (case-insensitive) | yes |
component_name | string | Component name (case-insensitive) | yes |
component_type | string | Component type: container | component | yes |
override_constraints | array | Optional component-specific constraints | no |
notes | string | Optional notes | no |
link_skill_to_component
Link a skill to a target node via guides edge.
| Field | Type | Description | Required |
project | string | | yes |
skill_name | string | | yes |
target_name | string | | yes |
target_kind | string | container | component | store | external_system | yes |
list_actors
List all actors in a project with their types.
| Field | Type | Description | Required |
project | string | Project name | yes |
list_components
List all components under a parent.
| Field | Type | Description | Required |
project | string | Project name | yes |
parent_name | string | Parent node name (container or component) | yes |
parent_kind | string | container | component | yes |
list_containers
List all containers in a project.
| Field | Type | Description | Required |
project | string | Project name | yes |
list_external_systems
List external systems for a project.
| Field | Type | Description | Required |
project | string | Project name | yes |
list_quality_attributes
List all quality attributes for a project, ordered by priority (1 = highest).
| Field | Type | Description | Required |
project | string | Project name | yes |
list_skills
List skills in a project.
| Field | Type | Description | Required |
project | string | | yes |
parent_skill_name | string | | no |
list_stores
List all data stores in a project.
| Field | Type | Description | Required |
project | string | Project name | yes |
reimport_skill
Re-import skill content from source_url.
| Field | Type | Description | Required |
project | string | | yes |
name | string | | yes |
reset_graph_layout
Reset graph layout overrides for a project and view level.
| Field | Type | Description | Required |
project | string | Project name | yes |
view_level | string | View level: context | container | detail | yes |
unlink_actor_from_component
Remove actor-to-component relationship(s). Deletes matching actor->component connection edges.
| Field | Type | Description | Required |
project | string | Project name | yes |
actor_name | string | Actor id or name (case-insensitive) | yes |
component_name | string | Component id or name (case-insensitive) | yes |
component_type | string | Component type: container | component | yes |
label | string | Optional label filter; when set only links with this label are removed | no |
unlink_quality_from_component
Remove a quality attribute link from a component so it no longer appears in working context.
| Field | Type | Description | Required |
project | string | Project name | yes |
quality_name | string | Quality attribute name (case-insensitive) | yes |
component_name | string | Component name (case-insensitive) | yes |
component_type | string | Component type: container | component | yes |
unlink_skill_from_component
Unlink a skill from a target by link_id.
| Field | Type | Description | Required |
project | string | | yes |
skill_name | string | | yes |
link_id | string | | yes |
update_actor
Update an actor by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
actor_id | string | Actor id (UUID) | no |
name | string | Actor name (case-insensitive) | no |
new_name | string | Optional new actor name | no |
actor_type | string | Optional actor type | no |
description | string | Optional description | no |
interaction_mode | string | Optional interaction mode | no |
responsibilities | array | Optional responsibilities | no |
position_x | number | Optional x position in the diagram | no |
position_y | number | Optional y position in the diagram | no |
update_component
Update an existing component's name, path, or description.
| Field | Type | Description | Required |
project | string | Project name containing the component | yes |
parent_name | string | Parent node name (container or component) | yes |
parent_kind | string | container | component | yes |
component_id | string | Component id (UUID) | no |
name | string | Current component name (case-insensitive) | no |
new_name | string | Optional new name for the component | no |
path | string | Optional new path pattern for the component | no |
description | string | Optional description for the component | no |
component_kind | string | Optional kind: module | handler | service | util | config | other | no |
update_container
Update an existing container.
| Field | Type | Description | Required |
project | string | Project name containing the container | yes |
container_id | string | Container id (UUID) | no |
name | string | Current container name (case-insensitive) | no |
new_name | string | Optional new name for the container | no |
path | string | Optional new path pattern for the container | no |
description | string | Optional description for the container | no |
container_kind | string | Optional kind: app | service | library | other | no |
technology | string | Optional new technology/language | no |
framework | string | Optional new framework | no |
runtime | string | Optional runtime hint | no |
deployment | string | Optional deployment hint | no |
update_external_system
Update an external system by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
external_system_id | string | External system id (UUID) | no |
name | string | External system name (case-insensitive) | no |
new_name | string | Optional new external system name | no |
category | string | Optional category | no |
description | string | Optional description | no |
vendor | string | Optional vendor | no |
tags | array | Optional tags | no |
position_x | number | Optional x position in the diagram | no |
position_y | number | Optional y position in the diagram | no |
update_graph_layout
Update graph layout overrides for a project and view level. Uses PATCH by default; set replace=true for PUT semantics.
| Field | Type | Description | Required |
project | string | Project name | yes |
view_level | string | View level: context | container | detail | yes |
replace | boolean | When true, replace full layout (PUT). Default false (PATCH). | no |
expected_version | integer | Optional optimistic concurrency guard. | no |
nodes | object | PUT: full node overrides keyed by node key. | no |
edges | object | PUT: full edge overrides keyed by edge key. | no |
viewport | object | PUT/PATCH viewport payload. | no |
nodes_upsert | object | PATCH: node overrides to upsert. | no |
nodes_remove | array | PATCH: node keys to remove. | no |
edges_upsert | object | PATCH: edge overrides to upsert. | no |
edges_remove | array | PATCH: edge keys to remove. | no |
clear_viewport | boolean | PATCH: clear viewport when true. | no |
update_quality_attribute
Update a quality attribute by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
quality_attribute_id | string | Quality attribute id (UUID) | no |
name | string | Quality attribute name (case-insensitive) | no |
priority | integer | Priority (1-10, lower is higher priority) | no |
description | string | Optional description | no |
constraints | array | Optional list of constraints (replaces the array) | no |
update_skill
Update a skill by name.
| Field | Type | Description | Required |
project | string | | yes |
name | string | | yes |
new_name | string | | no |
display_name | string | | no |
description | string | | no |
content | string | | no |
sort_order | integer | | no |
update_store
Update a store by id or name.
| Field | Type | Description | Required |
project | string | Project name | yes |
store_id | string | Store id (UUID) | no |
name | string | Store name (case-insensitive) | no |
new_name | string | Optional new store name | no |
type | string | Optional store type | no |
ownership | string | Optional ownership model (internal, shared, managed) | no |
description | string | Optional description | no |
tags | array | Optional tags | no |
position_x | number | Optional x position in the diagram | no |
position_y | number | Optional y position in the diagram | no |