Skip to main content
Glama

discover_software

Read-only

Find software products by name search or criteria (category, max price, free tier). Returns matching slugs to look up — use "query" to find the slug for a product name.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "discover_software"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNo
queryNoProduct or vendor name to search, e.g. "hubspot"
categoryNoCategory slug or name, e.g. "crm" or "project management"
maxPriceNo
hasFreeTierNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / category / description
      Added value: +"Category slug or name, e.g. \"crm\" or \"project management\""
    • addedInput schema / properties / query
      Added value: +{
      +  "description": "Product or vendor name to search, e.g. \"hubspot\"",
      +  "type": "string"
      +}
  2. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, and the description is consistent with that. It adds genuinely new information by disclosing the return shape ('matching slugs'), which matters because no output schema exists. It does not mention result limits, ranking, or empty-result behavior.

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?

Two tight sentences with the core purpose front-loaded and no filler. The second sentence is slightly overloaded, packing the return value and a param hint into one clause, but nothing is wasted.

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 read-only discovery tool with no output schema and no required params, the description covers purpose, return type, and a usage hint adequately. Remaining gaps (limit behavior, result ordering, defaults) are minor but real.

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 only 40%, so the description must compensate; it names four of the five conceptual filters (name, category, max price, free tier) but adds no syntax, units, or semantics beyond the parameter names themselves. The 'limit' parameter is never addressed by either the description or the schema.

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?

Specific verb ('Find') plus resource ('software products') and the two discovery modes (name search vs. criteria). It also states the distinguishing output (matching slugs), which separates it from lookup siblings like get_pricing, though no sibling is named explicitly.

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?

'use "query" to find the slug for a product name' implies the discovery-then-lookup workflow, but says nothing explicit about when to prefer this over get_pricing/get_price_history, or what to do when criteria search returns nothing. Usage is implied rather than stated.

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.