Skip to main content
Glama
Mipiti
by Mipiti

Declare Behavioural Link

declare_behavioural_link

Declare the asset or trust boundary a behavioural element or zone is. Mutating; creates no model version.

Instructions

Declare the asset or trust boundary a behavioural element or zone is. Mutating; creates no model version.

The link is checked on every read: one whose asset lacks the property the element carries is kept and asked about. A link that counts changes what the analysis reaches, so the judgements it re-keys are queued, charged to the caller.

A program's declaration is a judgment. Unless the workspace's delegation policy admits it, it is refused with 403 and an escalation_id and parked for a person. Do not retry: report the escalation_id and poll list_proposals.

Returns the links as get_behavioural_links does, with declared.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
node_idYesThe element or zone, from ``get_behavioural_links``.
model_idYesID of the threat model.
entity_idYesThe asset or trust boundary it is.
component_idNoOptional component the node belongs to.
server_versionYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.87.0

TDQS

A3.8/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so well: it discloses that the operation mutates, creates no model version, is checked on every read, re-keys judgements that are queued and charged to the caller, and can be refused with a 403 plus escalation_id under delegation policy. That is unusually rich disclosure of side effects and authorization behavior.

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 purpose is front-loaded, but the body is dense, jargon-heavy and awkwardly line-broken, with at least one convoluted sentence ('one whose asset lacks the property the element carries is kept and asked about'). Information density is high, but readability suffers.

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?

An output schema exists, so return values needn't be detailed, and the description covers mutation semantics, authorization failure and the escalation route. What is missing is what happens to an existing/conflicting link and any reversal path, which would matter for a declare operation. Mostly complete.

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 80%, so the schema already documents node_id, model_id, entity_id and component_id. The description adds only marginal meaning beyond that ('the asset or trust boundary it is' partially restates the entity_id field), so the baseline 3 applies.

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?

States a specific verb ('Declare') and resource ('the asset or trust boundary a behavioural element or zone is'), and ties the input to get_behavioural_links. It does not explicitly distinguish itself from accept_behavioural_link_proposals or the other link-related siblings, so an agent must infer the boundary. Clear but not sibling-differentiated.

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?

Gives strong procedural guidance for the failure path (403 refusal, do not retry, report the escalation_id, poll list_proposals) but never states when to prefer this tool over accept_behavioural_link_proposals or get_behavioural_links. Usage is implied rather than framed as a decision.

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

Deploy Server

Other Tools