Skip to main content
Glama

OpenNodes

Recommend a node and model

recommend
Read-onlyIdempotent

Recommend the best AI node + model for a task, with an enforceable cost estimate and human-readable reasons. Use this first when you know the task but not the model. Pass task (sent to this registry, which extracts features and discards the text) or features already extracted on your side with extractFeatures from @opennodes/core, which keeps the prompt private. Returns ranked candidates with score components, a cost estimate pinned to the node's card revision, an optional cheaper two-step scenario, and MCP tool categories the task likely needs. To browse instead, use search_offerings; to price a specific chain, use estimate.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
taskNoThe task description or the prompt itself. Sent to the registry for feature extraction; use `features` to keep it private. Give this or `features`.
policyNoOptional constraints and preferences for the recommendation.
featuresNoFeatures from extractFeatures(prompt) in @opennodes/core: task class, size, language and needs, no prompt text. Give this or `task`.
est_output_tokensNoExpected answer length in tokens, if known. Improves the cost estimate; otherwise inferred from the task.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent and openWorld, but the description adds genuinely new behavioral facts: the `task` text is sent to the registry, features are extracted and the text discarded, and passing `features` locally keeps the prompt private. It also discloses the return contents (score components, cost estimate pinned to the node's card revision, optional two-step scenario). No rate limits or error behavior, but the privacy/data-flow disclosure is valuable beyond 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.

Conciseness5/5

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

The purpose and the 'use this first' trigger are front-loaded, followed by input paths, then outputs, then alternatives. Every sentence carries distinct information (routing, privacy, return shape) with no filler or repetition.

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?

With no output schema and a nested `policy` object, the description compensates by enumerating what comes back (ranked candidates, score components, cost estimate, cheaper two-step option, MCP tool categories) and by clarifying the two mutually exclusive input modes. Nothing needed to call it correctly is missing.

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 schema already documents every parameter, including the task-vs-features privacy tradeoff and the effect of est_output_tokens on cost. The description restates the same mutual-exclusivity rule without adding syntax, format, or examples beyond it, so the baseline of 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?

The description states a specific verb+resource (recommend the best AI node + model for a task) with a precise scope, and explicitly names the siblings it is not (search_offerings for browsing, estimate for pricing a chain). An agent can distinguish it from the other four tools without opening any schema.

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?

"Use this first when you know the task but not the model" gives an explicit trigger condition, and the closing sentence routes the agent to alternatives with the condition that selects each (browse → search_offerings; price a specific chain → estimate). Both when-to-use and when-not-to-use are covered.

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.