Skip to main content
Glama

find_rules

Read-only

Spectral governance rulesets across the catalog. API design/linting rulesets. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

Input Schema

NameRequiredDescriptionDefault
qNoFree text over name + description, e.g. "sms".
pageNoPage number, 1-based (default 1).
sortNoOrder: relevance / provider / name, or rule_count (largest first).
tagsNoTag slugs, e.g. ["payments"]. On providers: what the company does (see api_tags).
limitNoResults per page, 1-100 (default 25).
matchNoHow `tags` combine: any (default) or all.any
contextNoOptional: one sentence on why you are asking. Never used to rank; read only if a result is wrong.
includeNoPass ["content"] to inline each artifact's body instead of just its URL.
providersNoProvider slugs, e.g. ["stripe"].

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • changedInput schema / properties / context / description
      Previous value: -"Optional: why you are asking. One sentence — the task you are trying to complete, or what you expect to get back. Never included in the answer and never used to rank; it is read only when a result turns out to be wrong, which is when knowing the intent is what makes the report actionable."New value: +"Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
    • changedInput schema / properties / match / description
      Previous value: -"How multiple `tags` combine: \"any\" (default, at least one) or \"all\" (every tag)."New value: +"How `tags` combine: any (default) or all."
    • changedInput schema / properties / page / description
      Previous value: -"Page number, 1-based (default 1). Use with `limit` to walk a long list."New value: +"Page number, 1-based (default 1)."
    • changedInput schema / properties / providers / description
      Previous value: -"Provider slugs to restrict results to, e.g. [\"stripe\",\"adyen\"]."New value: +"Provider slugs, e.g. [\"stripe\"]."
    • changedInput schema / properties / q / description
      Previous value: -"Free text over name + description."New value: +"Free text over name + description, e.g. \"sms\"."
    • changedInput schema / properties / tags / description
      Previous value: -"Tag slugs. On PROVIDERS this is identity — what the company says it does, from its own apis.yml. A resource or operation term (webhook, saml, order, oai-pmh) will correctly match no provider; use find_apis?tags= for those, or find_providers?api_tags= to reach companies whose APIs merely touch it."New value: +"Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
  2. Changed5 schema fields changed
    • addedInput schema / properties / include / description
      Added value: +"Pass [\"content\"] to inline each artifact's body instead of just its URL."
    • addedInput schema / properties / limit / description
      Added value: +"Results per page, 1-100 (default 25)."
    • addedInput schema / properties / match / description
      Added value: +"How multiple `tags` combine: \"any\" (default, at least one) or \"all\" (every tag)."
    • addedInput schema / properties / page / description
      Added value: +"Page number, 1-based (default 1). Use with `limit` to walk a long list."
    • addedInput schema / properties / providers / description
      Added value: +"Provider slugs to restrict results to, e.g. [\"stripe\",\"adyen\"]."
  3. Changed1 schema field changed
    • changedInput schema / properties / tags / description
      Previous value: -"Tag slugs. On PROVIDERS this is identity — what the company says it does, from its own apis.yml. A resource or operation term (webhook, saml, order, oai-pmh) will correctly match no provider; use find_apis?tags= for those, or api_tags below."New value: +"Tag slugs. On PROVIDERS this is identity — what the company says it does, from its own apis.yml. A resource or operation term (webhook, saml, order, oai-pmh) will correctly match no provider; use find_apis?tags= for those, or find_providers?api_tags= to reach companies whose APIs merely touch it."
  4. Changed2 schema fields changed
    • changedInput schema / properties / sort / description
      Previous value: -"Order: name, or rule_count (largest first)."New value: +"Order: relevance / provider / name, or rule_count (largest first)."
    • changedInput schema / properties / sort / enum
      Previous value: -[
      -  "name",
      -  "rule_count"
      -]New value: +[
      +  "relevance",
      +  "provider",
      +  "name",
      +  "rule_count"
      +]
  5. Changed1 schema field changed
    • changedInput schema / properties / tags / description
      Previous value: -"Tag slugs."New value: +"Tag slugs. On PROVIDERS this is identity — what the company says it does, from its own apis.yml. A resource or operation term (webhook, saml, order, oai-pmh) will correctly match no provider; use find_apis?tags= for those, or api_tags below."
  6. Changed1 schema field changed
    • addedInput schema / properties / context
      Added value: +{
      +  "description": "Optional: why you are asking. One sentence — the task you are trying to complete, or what you expect to get back. Never included in the answer and never used to rank; it is read only when a result turns out to be wrong, which is when knowing the intent is what makes the report actionable.",
      +  "type": "string"
      +}
  7. Added

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description's only behavioral note, include=["content"] inlining bodies, merely restates the schema's own description of that parameter. No additional behavioral context (pagination, rate limits, result shape) is added beyond structured fields.

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 and short, with the alternative-routing placed last where it belongs. Slight redundancy between the first two sentences keeps it from a 5, but there is no filler.

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 9-parameter, purely filtered lookup with no output schema and annotations covering safety, the description supplies purpose, filter scope, and the key alternative. It omits return/pagination shape, but the schema documents page/limit/sort, so nothing essential to correct invocation 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 coverage is 100%, so every parameter is already documented in the schema. The description's filter summary (q / tags / providers) and include note mirror what the schema already states, adding no syntax or semantic detail beyond it. Baseline 3 is appropriate.

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?

States a specific resource (Spectral governance rulesets / API design-linting rulesets) and names find_artifacts as the cross-type alternative, so the agent can distinguish it from other find_* tools. It is clear but terse; the two opening sentences overlap ('governance rulesets' vs 'design/linting rulesets') rather than sharpening the boundary against siblings like find_regulations or find_scopes.

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

Usage Guidelines4/5

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

Gives explicit routing: use this for governance/linting rulesets, and 'Use find_artifacts for cross-type search' names the alternative and the condition that selects it. It stops short of stating exclusions or when-not to use it, but the alternative pointer is concrete.

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