Skip to main content
Glama

recommend_patterns

Intent-aware pattern recommendations. Describe what you are building — industry, style, mood, technical needs — and get scored results with reasons and compatibility suggestions. Returns metadata only (number, slug, title, role, score, reason, compatible_with). Call get_pattern to retrieve the actual code for any recommendation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
roleNoOptional page-role filter (hero, nav, pricing, footer, background, etc.)
seedNoReproducible creative seed. The same brief and seed return the same candidates; change it to explore another valid realization.
countNoMax results (default 5, max 20)
intentYesWhat you are building, e.g. "premium SaaS landing page for enterprise AI startup" or "dark minimal portfolio with dramatic 3D hero"
contextNoSlugs or numbers already chosen for this page (order does not matter here). Recommendations that clash with any of them are excluded, a pattern already at its own max_per_page in context is skipped, and a WebGL pattern in context or in the results auto-adds device-tier-gate (245) as the fallback.
historyNoRecently used pattern slugs or numbers. They receive a strong cooldown penalty instead of dominating every session.
exclusionsNoPattern slugs or numbers that must not be returned.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / exclusions
      Added value: +{
      +  "description": "Pattern slugs or numbers that must not be returned.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / history
      Added value: +{
      +  "description": "Recently used pattern slugs or numbers. They receive a strong cooldown penalty instead of dominating every session.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / seed
      Added value: +{
      +  "description": "Reproducible creative seed. The same brief and seed return the same candidates; change it to explore another valid realization.",
      +  "type": [
      +    "string",
      +    "number"
      +  ]
      +}
  2. First observed

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses that the tool returns metadata only, includes compatibility suggestions, and is intent-aware, implying a read-only operation. It does not explicitly state side effects or rate limits, but for a recommendation tool this is sufficient.

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?

Two sentences with no filler. The first sentence states purpose and input, the second explains output and the follow-up tool. Information is front-loaded and every word earns its place.

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?

The description explains the output fields (number, slug, title, role, score, reason, compatible_with) and the relationship to get_pattern, which is critical for an agent to know. It does not elaborate on parameter behaviors like seed reproducibility or context exclusions, but the schema covers those. For a tool with no output schema, this is adequately complete.

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 all 7 parameters thoroughly. The description adds minimal semantic value beyond what the schema provides, only hinting at intent and compatibility. The baseline of 3 is appropriate because the description does not materially enhance parameter understanding.

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 a specific verb ('recommend'), a resource ('patterns'), and the trigger condition ('Describe what you are building...'). It explicitly distinguishes from siblings by noting it returns metadata only and directs to get_pattern for code, so an agent can tell it apart without inspecting schemas.

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?

The description implies when to use it (when you need scored pattern recommendations) and explicitly names get_pattern as the next step for retrieving code. However, it does not explicitly state exclusions or compare to other siblings like list_patterns or propose_directions, so guidance is clear but not exhaustive.

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