Cross-platform Starcat CLI that can serve as a stdio MCP Server for external AI Agents. Provides tools for repository management, tagging, statistics, and knowledge base operations.
Starcat CLI exposes 17 tools with consistent naming (verb_noun pattern: get_, search_, create_, etc.) and reasonable descriptions (avg ~80 chars). All tools have input schemas with typed parameters and descriptions. However, output schemas are not documented in the source code, parameter descriptions lack detail on constraints/ranges, and error handling guidance is minimal. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications. Composition is sound, tools are single-responsibility and chainable via owner/name references.
Add tags to a repository
Create a new tag with optional color and icon
Generate AI summary for a repository
Get AI usage statistics with optional filtering by time range, feature, provider, or model
Get Starcat server capabilities
Get knowledge base statistics including project counts, language distribution, and index health
Output schemas not documented. No tool returns a documented response structure. LLMs cannot plan downstream calls or extract required fields (e.g., what fields does get_repo_context return? Is there a repo_id for chaining?).
Parameter descriptions lack constraint details. 'limit' is described as 'Maximum number of results (1-100)' but no enum or minValue/maxValue in schema. 'color' in create_tag says 'hex format (e.g., #0A84FF)' but no regex pattern. LLMs cannot validate inputs without formal constraints.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2025-06-18+ | v2 |
Get overview statistics including repository counts, AI usage, and RAG index health
Get README content for a repository
Get context information for a repository
Get summary for a repository
List all available tags
Remove tags from a repository
Search repositories by query with scope and limit options
Perform semantic search on repositories
Set repository status (unread, read, or using)
Replace all tags for a repository
Create or update a note for a repository
No tool annotations despite clear risk classifications. Tools marked WRITE (upsert_repo_note, set_repo_status, add_repo_tags, create_tag) and DESTRUCTIVE (set_repo_tags) lack readOnlyHint/destructiveHint. Agents cannot distinguish safe reads from risky writes without explicit annotations.
Error handling guidance missing. No tool description explains what to do on failure (e.g., 'If repo not found, try search_repos() first'). Agents have no recovery path when calls fail.
Pagination not documented. search_repos and semantic_search accept 'limit' but no 'offset', 'page', or 'next_cursor' parameters visible. Large result sets will be truncated without a way to fetch more.