Skip to main content
Glama

find_tool

Read-onlyIdempotent

Search for MCP tools using natural language queries; uses semantic search and keyword matching to return the exact tool name for invocation.

Instructions

Find tools by query. Combines semantic search + tool-name keyword match.

Call this first when you need an action. The returned name is what you pass to invoke_read_tool for read-only tools or invoke_tool for writes. Results are deduplicated; semantic matches are annotated match='semantic', name-overlap matches match='keyword', and safety flags mirror backend ToolAnnotations. Results are compact by default; set include_schema=True only when you need the full JSON schema for a selected tool. Optional platform, server, normalized capability, curated/generated origin, and exact OpenAPI operation-ID filters apply to both keyword and semantic matches.

Args: query: What you want to do. e.g. "create a VLAN", "disconnect a client". top_k: 1-10 results (default 5). include_schema: Include full JSON schemas in results. Defaults to False to keep MCP responses compact. platform: Filter by normalized platform, such as central, glp, mist, clearpass, or apstra. server: Filter by exact backend server name, such as central-monitoring. capability: Filter by read, diagnostic, write, or destructive. origin: Filter by curated or generated implementation. operation_id: Filter by an exact generated OpenAPI operationId.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYes
top_kNo
originNo
serverNo
platformNo
capabilityNo
operation_idNo
include_schemaNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

Beyond the annotations (readOnlyHint, idempotentHint, openWorldHint, destructiveHint), the description discloses deduplication behavior, match types ('match='semantic'', 'match='keyword''), and that safety flags mirror backend ToolAnnotations. It also explains that results are compact by default and how to opt into full schemas. This adds significant behavioral context not present in 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 description is front-loaded with a one-sentence purpose and a clear usage directive, followed by structured paragraphs and an Args list. Despite its length, every sentence earns its place—it covers usage flow, result behavior, and all 8 parameters without redundancy. The structure makes it easy to skim and reference.

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?

The description is complete for a discovery tool of this complexity. It covers the tool's role in the overall workflow, result characteristics, filtering options, and parameter semantics. Since an output schema exists, it does not need to detail return values; it still provides all necessary context for an agent to select and invoke it correctly.

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 description coverage is 0%, the description compensates fully by explaining each parameter. It provides a concrete example for query ('create a VLAN'), specifies top_k range/default, clarifies include_schema's purpose, and gives examples of valid values for platform, server, capability, origin, and operation_id. This adds meaning far beyond the raw schema properties.

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 clearly states the tool's function: 'Find tools by query. Combines semantic search + tool-name keyword match.' It uses a specific verb (find) and resource (tools), and explicitly distinguishes this discovery tool from the sibling invocation tools by stating the returned name is passed to invoke_read_tool or invoke_tool.

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?

The description gives explicit usage guidance: 'Call this first when you need an action.' It explains the workflow—use the returned name to call invoke_read_tool for read-only tools or invoke_tool for writes—and provides a clear alternative context for when to use include_schema. This fully addresses when and how to use the tool versus its siblings.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/secure-ssid/hpe-networking-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server