Skip to main content
Glama

validate_pin_connection

Read-onlyIdempotent

Dry-run a pin connection to check validity without modifying the graph. Use it to test a plan before committing or to learn why a connection was rejected.

Instructions

Dry-run the K2 schema's verdict on a pin pair WITHOUT touching the graph: returns valid plus the schema's own message (which names the incompatible types) and its raw response code. connect_pins runs the same check and then connects, so use this one to test a plan before committing a build_blueprint_graph batch whose rollback can be refused, or to find out WHY a connection was rejected without leaving anything behind.

Returns: { valid, message, response_code } -- valid is false only for an outright DISALLOW; a response that would connect WITH a conversion node or by breaking an existing link still reports valid:true, and "message" is where that shows.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
graph_nameNoTarget graph name; defaults to the Blueprint's event graph when omitted
source_pinYesOutput pin name on the source node (falls back to any pin with that name).
target_pinYesInput pin name on the target node (falls back to any pin with that name).
blueprint_nameNoBlueprint name or path.
blueprint_pathNoAlias of `blueprint_name` (same value, same meaning). Accepted because sibling tools spell this parameter differently; prefer `blueprint_name`.
source_node_idYesNodeGuid of the source node.
target_node_idYesNodeGuid of the target node; must be in the same graph as the source.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), but the description adds real substance beyond them: the exact semantics of 'valid' (false ONLY for an outright DISALLOW; still true if the connection would insert a conversion node or break an existing link), and the fact that 'message' is where that nuance surfaces. With no output schema, this return-value disclosure is the load-bearing 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?

Front-loads the differentiator ('Dry-run ... WITHOUT touching the graph') in the first clause, then explains the alternative and the return shape. The second sentence is long with several clauses and the Returns block is dense, but each element informs correct invocation, so there is little waste.

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?

With no output schema, the description must explain return values and does so thoroughly, including the valid/message/response_code shape and the counterintuitive valid:true cases. Combined with the named alternative and the call-site scenario, an agent has everything needed to invoke this correctly.

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 schema already documents all seven parameters (including the blueprint_name/blueprint_path alias and pin fallback behavior). The description adds nothing parameter-specific. Baseline 3 is appropriate when the schema does all the work.

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?

States a specific verb and resource: 'Dry-run the K2 schema's verdict on a pin pair WITHOUT touching the graph.' It also names the sibling it must be distinguished from ('connect_pins runs the same check and then connects'), so an agent can separate this from connect_pins without opening either schema.

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?

Explicitly states when to use it: 'use this one to test a plan before committing a build_blueprint_graph batch whose rollback can be refused, or to find out WHY a connection was rejected.' It names the alternative (connect_pins) and the condition that selects this one, leaving nothing to inference.

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