Skip to main content
Glama

contextPin

Pin a durable preference or constraint to the top of the cold-start context brief so it surfaces first in every session.

Instructions

Pin a free-text steering note to the top of the user's cold-start context brief. Use it when the user states a durable preference or constraint they want surfaced first every session (e.g. "I'm mid-migration off Postgres — don't suggest new Postgres features"). The note wins a budget slot before auto-surfaced documents and entities. Returns the pin's contextPins/{uid}; retire it with contextUnpin or override it with contextCorrect.

Input Schema

NameRequiredDescriptionDefault
textYesThe steering note to surface at the top of the cold-start brief, e.g. "Mid-migration off Postgres — don't suggest new Postgres features". Required, non-empty.
scopeNoScope to write into — a pin steers whoever reads that scope. Defaults to personal (steers only the user). Use "project" to steer anyone working in this repo. Use "team" to steer the whole team (requires admitted membership, else E_PERMISSION).
targetRefNoOptional resource the note is about, e.g. an entities/{uid}. Omit for a free-floating steering note.

Output Schema

NameRequiredDescriptionDefault
nameYesAIP resource name of the new pin; pass to contextUnpin or contextCorrect.
statusYesAlways "pinned" on success.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior4/5

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

No annotations, so the description carries the full burden and mostly succeeds: it discloses the ordering effect (the note wins a budget slot before auto-surfaced documents and entities) and the return shape (contextPins/{uid}). It does not discuss limits on how many pins are allowed or failure modes beyond what the schema states, which keeps it short of a 5.

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?

Three sentences, front-loaded with the action and trigger, then the behavioral effect and lifecycle pointers. Every sentence carries distinct information.

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?

For a 3-parameter tool with an output schema and no annotations, the description supplies the trigger, the ordering behavior, the return reference, and the sibling lifecycle tools. An agent has everything needed to decide to call it and what to do afterward.

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 100% and the scope/targetRef semantics, including the E_PERMISSION condition, are already documented in the schema. The description adds the concept of what a pin steers but no parameter-level detail beyond the schema, so baseline 3 applies.

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: pin a free-text steering note to the top of the cold-start context brief. It clearly distinguishes the tool from contextUnpin (retire) and contextCorrect (override) named in the same description.

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?

Gives an explicit trigger ('when the user states a durable preference or constraint they want surfaced first every session') with a concrete example. It also names both alternatives and the conditions that select them: contextUnpin to retire, contextCorrect to override.

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