Skip to main content
Glama

ecosystem_search

Search the ecosystem repository archive by keyword, topic, tags, language, category, or star range to find relevant repos, then filter and sort results by stars, recency, or relevance for targeted discovery.

Instructions

Query ecosystem_repo_profiles archive (Stage E enhanced).

Default response is a COMPACT projection (marked by view="compact" + hint — it is a trimmed view, NOT missing fields): each profile row keeps repo/stars/lang/status + summary. Full profile of a single repo: ecosystem_repo_get(repo_full_name); full rows here: fields="all".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNostars (default) / recency (pushed_at desc) / relevance (relevance_score desc).stars
tagsNoTag name list, semantic capability filter.
limitNoMax results (default 30, server max 200).
topicNoTopic keyword filter (JSON field LIKE match).
fieldsNo"compact" (default, trimmed projection) / "all" (full rows).compact
offsetNoPagination offset.
keywordNoKeyword match (name / description / summary / repo_full_name / description_excerpt).
categoryNoCategory filter (agent-framework / mcp-server / memory-system / skill-system / tooling).
languageNoProgramming language filter (e.g. Python / TypeScript).
max_starsNoMaximum star count (0 = no limit).
min_starsNoMinimum star count.
project_idNoRestrict the search to one project's archive. Empty (default) resolves the project from the current session — only pass it to read another project's archive on purpose.
is_archivedNoTrue/False to filter archived repos; None = no filter.
facet_countsNoWhen True, response includes facet_counts (category/language/archived).
pushed_afterNoISO datetime — only repos with pushed_at >= this. Empty = no filter.
tag_match_modeNo"all" (AND) / "any" (OR). Default all.all
needs_deep_reviewNoTrue/False filter; None = no filter.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses the key behavioral trait: the default compact projection is a trimmed view (marked by view="compact" + hint), not missing data. It also transparently explains the fields="all" option for full rows and the project_id-session resolution behavior. It doesn't disclose pagination or rate limits, but the parameter schema covers offsets/limits.

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 a tight, structured block of three short paragraphs with no wasted words. It front-loads the core purpose, then explains the compact projection behavior and routes to the alternative tool. Every sentence 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?

For a 17-parameter search tool with 100% schema coverage and an output schema, the description covers the essential behavioral context: default projection mode, how to get full rows, and how to restrict to a specific project's archive. It avoids repeating schema detail. It could mention pagination implications or facet_counts behavior, but parameters already document those.

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 documents every parameter richly (limit max 200, sort options, tag_match_mode AND/OR default). Baseline 3 is appropriate. The description adds marginal value by clarifying the compact projection fields (repo/stars/lang/status + summary) and that full rows live in ecosystem_repo_get, but most parameter semantics are already in the schema itself.

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+resource: 'Query ecosystem_repo_profiles archive.' It clearly names the data source (Stage E enhanced) and explains the default compact projection behavior. It distinguishes from sibling ecosystem_repo_get by explicitly naming it as the tool for retrieving a single repo's full profile.

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 explains when each fields mode is appropriate ('full rows here' vs pointing to ecosystem_repo_get for single-repo full profiles). It clarifies the default response is compact and that this is a trimmed view, not missing fields. It doesn't explicitly state when to use alternative search tools like ecosystem_search_by_capability or memory_search, but it does handle the primary alternative (ecosystem_repo_get) well.

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/CronusL-1141/AI-company'

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