Skip to main content
Glama

align_search

Read-only

Search the hosted Align decision graph by query to retrieve recorded decisions, their stated reasons, and commit SHAs.

Instructions

Alias of align_ask: the same search of the decision graph, taking the text as query. Kept for callers that already use this name; prefer align_ask. Results carry the same reason (the stated reason extracted from the commit message, may be null) and sha. Searches the hosted Align graph at https://api.align.tech.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "query": "<query>"
    },
    "name": "align_search"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMax results (default: 8)
queryYesSearch query

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered; the description adds useful context beyond that by stating the endpoint being searched (the hosted Align graph) and describing the returned fields (`reason`, possibly null, and `sha`), which matters because there is no output schema. It omits any note on pagination or result ordering relative to `limit`.

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?

Three compact sentences, front-loaded with the alias relationship and the routing preference before the return-shape detail. Slightly run-on in the second sentence but every clause carries information.

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 simple two-parameter read-only alias with no output schema, the definition covers identity, routing, endpoint, and the shape of returned fields. The only gap is behavioural detail like result ordering or whether results are scoped by workspace.

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%, so both parameters are already documented. The description only confirms that the search text maps to `query` and says nothing about `limit` (default 8) or how it interacts with results, so it does not exceed the schema baseline.

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?

It names the verb and resource ('search of the decision graph') and explicitly frames itself as an alias of align_ask, so an agent can place it relative to a named sibling. The core behaviour is partly delegated ('the same search ... as align_ask') rather than independently spelled out, which keeps it short of a 5.

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?

It gives an explicit routing rule: 'Kept for callers that already use this name; prefer align_ask.' That is a direct when-to-use and when-to-prefer-alternative statement with no inference required.

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