Skip to main content
Glama

Search the agent directory

pulse_resources
Read-onlyIdempotent

Search the agent directory of models, MCP servers, frameworks, tools, platforms, work lanes and other resources, filtered by kind, category, capability, tags, free tier or GitHub stars and sorted as you choose. Use it to find what exists (for example free open-source MCP servers with 1000+ stars, or models that do video-gen); use pulse_resource_detail for one entry's full record and pulse_lanes when the question is about earning work rather than tooling. Filters combine with AND; omit all to list everything in the directory. Read-only and idempotent. Works without an API key on the free tier. Returns {count, kinds, resources[]}. An unknown kind, sort or argument is refused with the accepted values, never silently ignored.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNoFree-text match over name, slug, tags and capabilities.
capNoCapability tag a resource must have, e.g. video-gen, rag, tts.
tagNoComma-separated tags a resource must carry, all of them.
freeNotrue = only resources with a free tier; false = only paid ones. A JSON boolean, not the string "true".
kindNoResource kind to filter by; omit for every kind.
sortNoSort order; the sorts a kind supports are listed on its directory page.
categoryNoCategory within a kind, as shown on the directory page.
minStarsNoMinimum GitHub stars, for open-source entries.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
countYesNumber of resources returned.
kindsYesDirectory size per resource kind.
resourcesYesDirectory entries with slug, name, kind, description, tags, caps and links.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "count": {
      +      "description": "Number of resources returned.",
      +      "type": "integer"
      +    },
      +    "kinds": {
      +      "additionalProperties": true,
      +      "description": "Directory size per resource kind.",
      +      "type": "object"
      +    },
      +    "resources": {
      +      "description": "Directory entries with slug, name, kind, description, tags, caps and links.",
      +      "items": {
      +        "additionalProperties": true,
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "count",
      +    "kinds",
      +    "resources"
      +  ],
      +  "type": "object"
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / sort / enum
      Previous value: -[
      -  "confidence",
      -  "grade",
      -  "freshness",
      -  "name",
      -  "stars",
      -  "overall-score",
      -  "aa-index",
      -  "aa-coding",
      -  "terminal-bench",
      -  "swe-bench",
      -  "mmlu",
      -  "context",
      -  "price-asc",
      -  "models-desc",
      -  "items"
      -]New value: +[
      +  "confidence",
      +  "grade",
      +  "freshness",
      +  "name",
      +  "stars",
      +  "overall-score",
      +  "aa-coding",
      +  "terminal-bench",
      +  "swe-bench",
      +  "mmlu",
      +  "context",
      +  "price-asc",
      +  "models-desc",
      +  "items"
      +]
  3. Changed1 schema field changed
    • changedInput schema / properties / sort / enum
      Previous value: -[
      -  "confidence",
      -  "grade",
      -  "freshness",
      -  "name",
      -  "stars",
      -  "overall-score",
      -  "terminal-bench",
      -  "swe-bench",
      -  "mmlu",
      -  "context",
      -  "price-asc",
      -  "models-desc",
      -  "items"
      -]New value: +[
      +  "confidence",
      +  "grade",
      +  "freshness",
      +  "name",
      +  "stars",
      +  "overall-score",
      +  "aa-index",
      +  "aa-coding",
      +  "terminal-bench",
      +  "swe-bench",
      +  "mmlu",
      +  "context",
      +  "price-asc",
      +  "models-desc",
      +  "items"
      +]
  4. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description still adds genuinely new behavioral facts: it works without an API key on the free tier, filters combine with AND, and invalid kind/sort/arguments are refused with the accepted values rather than silently ignored. That error-handling contract is exactly the kind of trait an agent cannot get from 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.

Conciseness4/5

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

Well front-loaded: purpose, then routing to siblings, then combination semantics and safety. Slightly over-packed — the 'Returns {count, kinds, resources[]}' clause duplicates the existing output schema and could be dropped without loss.

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?

For an 8-parameter, zero-required search tool with full schema coverage, enums, and an output schema, the description covers purpose, routing, filter combination, auth/free-tier behavior, and failure mode. Nothing an agent needs 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.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds the cross-parameter semantics the schema cannot express: 'Filters combine with AND' and 'omit all to list everything'. It does not add per-parameter syntax beyond the schema, so it falls short of a 5.

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?

Opens with a specific verb+resource ('Search the agent directory of models, MCP servers, frameworks...') and immediately scopes the sibling set by naming pulse_resource_detail and pulse_lanes with the conditions that select them. An agent can route correctly 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?

Gives concrete use cases ('free open-source MCP servers with 1000+ stars', 'models that do video-gen'), explicitly excludes the two nearest alternatives by naming them, and states the degenerate case ('omit all to list everything'). Nothing is left to inference.

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.