Skip to main content
Glama

Synthex Forge — x402 Paid Agent Services

Evaluate Mcp Tool Definition

evaluate_mcp_tool_definition
Read-onlyIdempotent

A rubric-scored judgement of a model response. use it rather than assess_tool_permission for mcp tool definition, not permission; an object with 39 fields including algorithm, assessable. $0.15 USDC.

Input Schema

NameRequiredDescriptionDefault
rubricNoThe rubric this operation operates on. See the schema for its type and whether it is required.
subjectNoThe subject the operation is applied to — an id, a URL or a name, depending on the operation.
response_pairNoThe response pair this operation operates on. See the schema for its type and whether it is required.

Output Schema

NameRequiredDescriptionDefault
kindNoThe `kind` field of the response.
noteNoA note on how the answer was produced.
gradeNoThe `grade` field of the response.
scoreNoThe numeric score this tool returned.
detailYesHuman-readable explanation of the verdict.
rubricNoThe `rubric` field of the response.
sha256NoThe `sha256` field of the response.
weightNoThe `weight` field of the response.
framingNoThe `framing` field of the response.
max_lenNoThe `max_len` field of the response.
min_lenNoThe `min_len` field of the response.
subjectNoThe `subject` field of the response.
verdictYesThe decision this tool returned.
coverageNoHow much of the underlying corpus the answer is based on.
gradedAtNoThe `gradedAt` field of the response.
questionNoThe `question` field of the response.
signedByNoThe `signedBy` field of the response.
algorithmNoThe `algorithm` field of the response.
criterionNoThe `criterion` field of the response.
assessableNoThe `assessable` field of the response.
ed25519SigNoThe `ed25519Sig` field of the response.
gradeLevelNoThe `gradeLevel` field of the response.
verdictCoreNoThe `verdictCore` field of the response.
observationsNoThe `observations` field of the response.
perCriterionNoThe `perCriterion` field of the response.
publicKeyHexNoThe `publicKeyHex` field of the response.
modelProvidedNoThe `modelProvided` field of the response.
verdictDigestNoThe `verdictDigest` field of the response.
weightedScoreNoThe `weightedScore` field of the response.
candidateCharsNoThe `candidateChars` field of the response.
referenceCharsNoThe `referenceChars` field of the response.
canonicalSha256NoThe `canonicalSha256` field of the response.
modelAttributedNoThe `modelAttributed` field of the response.
rationaleHashesNoThe `rationaleHashes` field of the response.
reproducibilityNoThe `reproducibility` field of the response.
criteriaSuppliedNoThe `criteriaSupplied` field of the response.
questionProvidedNoThe `questionProvided` field of the response.
verificationHintNoThe `verificationHint` field of the response.
criteriaAssessableNoThe `criteriaAssessable` field of the response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed41 schema fields changed
    • addedOutput schema / properties / algorithm
      Added value: +{
      +  "description": "The `algorithm` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / assessable
      Added value: +{
      +  "description": "The `assessable` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / candidateChars
      Added value: +{
      +  "description": "The `candidateChars` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / canonicalSha256
      Added value: +{
      +  "description": "The `canonicalSha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / coverage
      Added value: +{
      +  "description": "How much of the underlying corpus the answer is based on.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / criteriaAssessable
      Added value: +{
      +  "description": "The `criteriaAssessable` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / criteriaSupplied
      Added value: +{
      +  "description": "The `criteriaSupplied` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / criterion
      Added value: +{
      +  "description": "The `criterion` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / detail
      Added value: +{
      +  "description": "Human-readable explanation of the verdict.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / ed25519Sig
      Added value: +{
      +  "description": "The `ed25519Sig` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / framing
      Added value: +{
      +  "description": "The `framing` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / grade
      Added value: +{
      +  "description": "The `grade` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / gradeLevel
      Added value: +{
      +  "description": "The `gradeLevel` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / gradedAt
      Added value: +{
      +  "description": "The `gradedAt` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / kind
      Added value: +{
      +  "description": "The `kind` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / max_len
      Added value: +{
      +  "description": "The `max_len` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / min_len
      Added value: +{
      +  "description": "The `min_len` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / modelAttributed
      Added value: +{
      +  "description": "The `modelAttributed` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / modelProvided
      Added value: +{
      +  "description": "The `modelProvided` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / note
      Added value: +{
      +  "description": "A note on how the answer was produced.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / observations
      Added value: +{
      +  "description": "The `observations` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / perCriterion
      Added value: +{
      +  "description": "The `perCriterion` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / publicKeyHex
      Added value: +{
      +  "description": "The `publicKeyHex` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / question
      Added value: +{
      +  "description": "The `question` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / questionProvided
      Added value: +{
      +  "description": "The `questionProvided` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rationaleHashes
      Added value: +{
      +  "description": "The `rationaleHashes` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / referenceChars
      Added value: +{
      +  "description": "The `referenceChars` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / reproducibility
      Added value: +{
      +  "description": "The `reproducibility` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / rubric
      Added value: +{
      +  "description": "The `rubric` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / score
      Added value: +{
      +  "description": "The numeric score this tool returned.",
      +  "type": "number"
      +}
    • addedOutput schema / properties / sha256
      Added value: +{
      +  "description": "The `sha256` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / signedBy
      Added value: +{
      +  "description": "The `signedBy` field of the response.",
      +  "type": "object"
      +}
    • removedOutput schema / properties / status
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / properties / subject
      Added value: +{
      +  "description": "The `subject` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / verdict
      Added value: +{
      +  "description": "The decision this tool returned.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / verdictCore
      Added value: +{
      +  "description": "The `verdictCore` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / verdictDigest
      Added value: +{
      +  "description": "The `verdictDigest` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / verificationHint
      Added value: +{
      +  "description": "The `verificationHint` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / weight
      Added value: +{
      +  "description": "The `weight` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / weightedScore
      Added value: +{
      +  "description": "The `weightedScore` field of the response.",
      +  "type": "object"
      +}
    • addedOutput schema / required
      Added value: +[
      +  "detail",
      +  "verdict"
      +]
  2. Added

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is fully covered. The description adds the cost ('$0.15 USDC') and a hint about the return shape ('an object with 39 fields'), which is useful context not present in the annotations, but that is where the behavioral disclosure stops.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short but poorly structured: the sibling comparison, the pricing note, and the garbled 'an object with 39 fields including algorithm, assessable' fragment are jammed together without clear separation. The most useful routing sentence is buried mid-stream rather than front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a full output schema and complete parameter descriptions, the definition only needs to clarify purpose and routing, and it does so ambiguously. The garbled 39-field claim and the model-response-versus-tool-definition confusion leave an agent uncertain what exactly is being evaluated, which is a meaningful gap for a scoring tool.

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 three parameters (rubric, subject, response_pair) are already documented in the schema. The description says nothing about what a 'response_pair' or 'rubric' must contain for this specific judgement, so baseline 3 is the correct ceiling.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

It does state a specific activity ('A rubric-scored judgement of a model response') and name a sibling it should replace ('assess_tool_permission'), which is real differentiation. But the trailing fragment 'an object with 39 fields including algorithm, assessable' is garbled and obscures whether it judges a model response or an MCP tool definition, leaving the core purpose only partly clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The clause 'use it rather than `assess_tool_permission` for mcp tool definition, not permission' gives a direct alternative and an implied exclusion, which is more than most tools provide. However, the 'not permission' phrasing is syntactically broken and it never states when this tool is the right choice outside of that single comparison.

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.