Skip to main content
Glama

search_community

Read-onlyIdempotent

Search community-shared AI flows on cnaps.ai. Find flows by keyword, input/output modality, or tags — or pass none of them to browse in sort order. Use this to discover existing flows before creating new ones. Returns post IDs that can be forked with fork_community_flow.

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": "search_community"
  }
}

Input Schema

NameRequiredDescriptionDefault
sortNoSort order: 'popular' (default), 'recent', 'most_liked', 'most_forked'.
tagsNoFilter by tags (AND logic). JSON array or comma-separated, e.g. '["upscale","4k"]' or 'upscale,4k'.
queryNoSearch keyword (e.g., 'super resolution', 'background removal', 'deblur'). Searches titles, content, and tags.
cursorNoCursor for the next page. Omit for the first page; for later pages pass next_cursor from the previous response unchanged. Keep query, sort and filters the same while paging — changing any of them starts the search over at the first page, without an error. Each page is 20 results, and the response has no next_cursor on the last one.
input_typeNoFilter by input modality: image, text, video, or sound. JSON array or comma-separated, e.g. '["image","video"]' or 'image,video'. A list matches flows whose inputs are exactly that set — image and video means both, not either.
output_typeNoFilter by output modality: image, text, video, or sound. JSON array or comma-separated, e.g. '["image","video"]' or 'image,video'. A list matches flows whose outputs are exactly that set — image and video means both, not either.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / cursor
      Added value: +{
      +  "description": "Cursor for the next page. Omit for the first page; for later pages pass next_cursor from the previous response unchanged. Keep query, sort and filters the same while paging — changing any of them starts the search over at the first page, without an error. Each page is 20 results, and the response has no next_cursor on the last one.",
      +  "type": "string"
      +}
    • changedInput schema / properties / input_type / description
      Previous value: -"Filter by input modality: image, text, video, or sound. A comma-separated list matches flows whose inputs are exactly that set — `image,video` means both, not either."New value: +"Filter by input modality: image, text, video, or sound. JSON array or comma-separated, e.g. '[\"image\",\"video\"]' or 'image,video'. A list matches flows whose inputs are exactly that set — image and video means both, not either."
    • changedInput schema / properties / output_type / description
      Previous value: -"Filter by output modality: image, text, video, or sound. A comma-separated list matches flows whose outputs are exactly that set — `image,video` means both, not either."New value: +"Filter by output modality: image, text, video, or sound. JSON array or comma-separated, e.g. '[\"image\",\"video\"]' or 'image,video'. A list matches flows whose outputs are exactly that set — image and video means both, not either."
    • removedInput schema / properties / page
      Removed value: -{
      -  "description": "Page number, 1-5 (default: 1). Each page is 20 results; past page 5, narrow the query or filters instead.",
      -  "type": "number"
      -}
  2. Changed3 schema fields changed
    • changedInput schema / properties / input_type / description
      Previous value: -"Filter by input modality. Comma-separated: image, text, video, sound."New value: +"Filter by input modality: image, text, video, or sound. A comma-separated list matches flows whose inputs are exactly that set — `image,video` means both, not either."
    • changedInput schema / properties / output_type / description
      Previous value: -"Filter by output modality. Comma-separated: image, text, video, sound."New value: +"Filter by output modality: image, text, video, or sound. A comma-separated list matches flows whose outputs are exactly that set — `image,video` means both, not either."
    • changedInput schema / properties / page / description
      Previous value: -"Page number (default: 1)."New value: +"Page number, 1-5 (default: 1). Each page is 20 results; past page 5, narrow the query or filters instead."
  3. Changed1 schema field changed
    • changedInput schema / properties / tags / description
      Previous value: -"Filter by tags. Comma-separated (AND logic)."New value: +"Filter by tags (AND logic). JSON array or comma-separated, e.g. '[\"upscale\",\"4k\"]' or 'upscale,4k'."
  4. First observed

TDQS

A4.3/5.0
Behavior4/5

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

The annotations already establish this as a safe read-only, idempotent operation, so the description does not need to restate safety. It adds useful behavioral context by saying the response returns post IDs and that those IDs can be forked with fork_community_flow, which helps the agent chain tools correctly.

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 the core action, then moves through filtering, intended use, and return behavior without repetition. Every sentence contributes useful selection or invocation context.

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 a read-only search tool with no output schema and fully documented parameters, the description supplies the missing high-level return context: post IDs that can be forked. It also explains the browse case and the pre-creation discovery use case, leaving no major invocation gap.

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%, and the schema already explains query, tags, sort, cursor, input_type, and output_type in detail. The description adds a useful summary of the main filter modes and the no-filter browse case, but it does not add syntax or edge-case semantics beyond the schema.

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 states a specific verb and resource: search community-shared AI flows on cnaps.ai. It also names the main filtering dimensions and the browse fallback, which clearly separates it from creation tools like create_flow and from private-flow listing behavior.

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?

It gives clear usage context: use it to discover existing flows before creating new ones, and pass no filters to browse in sort order. It does not explicitly compare against every sibling such as list_templates or search_cards, but the community-flow scope makes the intended use clear.

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