Skip to main content
Glama

Search projects

search_projects
Read-onlyIdempotent

Search open-source AI projects across Archestack lists using keywords and filters like no_gpu, license, category, demo, or arm64; results rank by match relevance.

Instructions

Find open-source AI projects across both Archestack lists by words and filters. Words match names, repos, taglines, categories and the products a project replaces; results rank by how many words match, then exact names, then projects whose name or category holds the words, then by score. Put hard needs in the filters, not the words (no_gpu instead of "without a GPU").

Input Schema

NameRequiredDescriptionDefault
listNoOnly this list: "best-of-ai" or "best-of-vibe-coding"
arm64Notrue: only projects with an arm64 build (Apple Silicon, Raspberry Pi, Graviton)
limitNo
queryNoWords to look for, e.g. "vector database" or "chat ui ollama". Leave out to rank by score.
no_gpuNotrue: only projects that run without a GPU
licenseNoLicense family. permissive: MIT, Apache-2.0, BSD and similar. copyleft: GPL, AGPL, LGPL, MPL. custom: anything else, including no license
categoryNoOnly this category: id or title, e.g. "vector-db" or "Vector databases"
has_demoNotrue: only projects with a live demo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the description adds value by disclosing matching behaviour: which fields words match and the exact ranking tiebreak order. It does not mention auth, rate limits, or result shape, but ranking semantics are valuable non-schema behaviour.

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?

Three sentences, each carrying distinct information (what it does, how matching/ranking works, how to use filters). No filler, and the core purpose is front-loaded.

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 an 8-parameter, zero-required search tool with no output schema, the description covers matching and ranking adequately. It could say more about result contents (e.g. what fields come back, how limit/pagination interacts), but nothing needed to invoke 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 88%, so most parameters are self-documenting. The description still adds meaning by naming the no_gpu filter explicitly and by clarifying the fields the 'query' parameter matches (names, repos, taglines, categories, replaced products), and by implying query is optional.

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?

States a specific verb and resource ('Find open-source AI projects') plus the scope ('across both Archestack lists') and the two mechanisms (words, filters). It is clearly distinguishable from siblings like top_in_category and get_project, which don't do word-based ranked search.

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 a concrete usage rule: 'Put hard needs in the filters, not the words (no_gpu instead of "without a GPU")'. This is genuine when-to-use guidance with a worked example. However, it never names an alternative tool or states when NOT to use this one (e.g. use get_project for a known project).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.