Skip to main content
Glama

ZeroWidth

Connect two Compass pages

compass_links_create

Creates a typed, directed edge between two pages — the knowledge graph's connective tissue. Canonical directions: PERSON owns WORKFLOW/SYSTEM, PERSON involved_in WORKFLOW, WORKFLOW uses SYSTEM, SYSTEM uses SYSTEM, PAIN_POINT affects WORKFLOW/SYSTEM/PERSON, DOCUMENT documents anything, relates_to as fallback. Idempotent on (from, to, kind) — re-creating an existing edge returns it. May return needs_confirmation; tell the user what you're proposing, wait for their approval, then re-call with the approvalId.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindYesEdge type, in canonical direction.
noteNo≤500-char qualifier when the kind alone undersells it.
sourceNoProvenance label. Defaults AI_ACCEPTED (agent writing under live human direction); pass USER for human-driven scripts.
toPageIdYesEdge target page id.
workspaceNoWorkspace slug. Personal tokens with no default workspace MUST pass this; tokens with a default can override per call. Ignored for workspace API keys.
approvalIdNoApproval id from a prior needs_confirmation response, after the user has approved. Omit on the first call.
fromPageIdYesEdge source page id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare the basic safety profile (not read-only, not destructive, closed-world). The description adds real behavioral traits beyond that: idempotency keyed on (from, to, kind), the returned-existing-edge behavior, and the needs_confirmation → user approval → re-call with approvalId loop.

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?

Purpose is front-loaded in sentence one, followed by direction semantics, then idempotency, then the confirmation protocol — a deliberate and dense ordering with no filler sentences.

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 7-parameter mutation with no output schema, the description covers the create semantics, idempotency, and the approval round-trip. It omits error/failure behavior and permission requirements, but the schema already carries workspace/auth and provenance details.

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, but the description goes further by enumerating canonical direction pairs for the `kind` parameter — semantics the schema's circular 'Edge type, in canonical direction' text does not supply. The approvalId and workspace behavior are already well documented in 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?

First sentence states a specific verb and resource — creates a typed, directed edge between two pages — plus a concrete metaphor for its role in the knowledge graph. It is clearly distinguishable from siblings like compass_links_update and compass_links_delete.

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?

Provides substantive when-to-use guidance via the canonical direction list (PERSON owns WORKFLOW, relates_to as fallback), which tells the agent how to pick the right invocation. It does not explicitly name when to prefer links_update over create, but the idempotency note covers the main overlap case.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources