Skip to main content
Glama

score

Idempotent

MANDATORY: Call score in every interaction turn that uses search or batch_search.

When to submit

An interaction turn starts with a user request and ends when you send your final response for that request. It may include multiple tool calls. Track pending search feedback within this turn; do not wait for a later user message to submit it.

Submit at BOTH of these checkpoints whenever they apply:

  1. During the turn: as soon as 10 successful searches are pending, call score for those 10 before starting another search. If completed batch or parallel calls leave more than 10 pending, submit batches of 10 until fewer than 10 remain, then continue your work.

  2. At the end of the turn's searching: submit all remaining pending feedback before sending your final response, even if only one search is pending or you could not fully answer the user. Do not wait to reach 10.

Count one successful search call as one search, and each successful batch_search sub-query as one search. Each needs its own request_id and score. Successful searches with empty results count too; failed searches and extract calls do not. If you search again after submitting feedback, collect the new results and apply the same checkpoints.

Examples:

  • 3 searches in a turn: submit 3 entries when searching ends, before your final response.

  • 10 searches in a turn: submit 10 immediately; if no further searches occur, no additional submission is needed.

  • 12 searches in a turn: submit 10 at the threshold, then the remaining 2 when searching ends.

Each call must contain 1-10 entries. Never send an empty batch. Do not resubmit request_ids already queued. If no eligible searches are pending, no submission is needed. Do not skip feedback because the results were good: a perfect result still needs score 5. Never invent an ID when neither the result's YAML block nor its metadata provides one. Feedback is free and never consumes quota or credits. A queued response acknowledges receipt, not database persistence.

Fields

  • request_id: Copy from the YAML block at the end of each successful search result, including each batch_search sub-query. The same IDs remain available in metadata (_meta.request_id for search, the corresponding entry of _meta.request_ids for batch_search). Never invent it.

  • score: Integer 1-5, judged against the criteria below. Score each search or sub-query separately.

Scoring criteria (use the FIRST level that matches)

5 - Fully answered. The results directly support a complete answer; no extra extract or follow-up search is needed. 4 - Mostly answered. Minor gaps remain, but they do not block the answer. 3 - Partially answered. You still need another search or an extract call to answer well; coverage is incomplete but some results are usable. 2 - Largely insufficient. Most results are irrelevant, outdated, or too shallow; only a small part is usable. 1 - Not useful at all. Results are off-topic, empty, or have nothing to do with the query.

Judge the results against the user's actual information need, not against how confident the snippets sound. A partial answer with unrelated extras is 3, not 4.

Input Schema

NameRequiredDescriptionDefault
feedbacksYesOne entry per search request_id, including one per batch_search sub-query. Maximum 10 entries per call.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only declare write/idempotent/non-destructive, but the description adds substantial behavioral context they don't cover: feedback is free and never consumes quota/credits, the queued response acknowledges receipt rather than database persistence, duplicate request_ids must not be resubmitted, and empty batches are forbidden. This is exactly the kind of behavior an agent needs and can't get from the annotations.

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-loaded with 'MANDATORY' and sectioned into When/Fields/Criteria, which is the right structure for a protocol tool. It is on the long side and the three worked examples restate rules already stated in the checkpoints, so a small amount of redundancy remains.

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?

All edge cases an agent would hit are covered: multiple calls in one turn, exceeding the 10-entry cap, re-searching after submission, empty-result searches, and missing IDs. The acknowledgment behavior substitutes for an output schema, so nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although schema coverage is 100%, the description goes far beyond the schema by explaining provenance ('copy from the YAML block... or _meta.request_id / _meta.request_ids'), the never-invent-an-ID rule, the 1-10 entry batching behavior, and a full 1-5 scoring rubric with tie-breaking guidance ('use the FIRST level that matches').

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?

The description opens with a mandatory-call directive tied to a specific resource (feedback for search/batch_search results) and immediately distinguishes itself from the sibling search tools by defining its subject as 'pending search feedback' tied to request_ids. An agent knows exactly what this tool does and which sibling outputs feed it.

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 explicit when-to-use rules (both checkpoints: at 10 pending searches and at end of turn), what counts and what doesn't (empty results count, failed searches and extract calls do not), and worked examples for 3, 10, and 12 searches. There is essentially no inference left for the agent.

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