Cross-platform Starcat CLI that functions as a stdio MCP Server for external AI Agents. Provides tools for repository search, management, statistics, and knowledge base operations.
19 tools with consistent verb_noun naming (get_, search_, update_, add_, remove_, list_). All tools have descriptions (avg ~80 chars, baseline 194 chars). Input schemas present with typed parameters and descriptions. However, output schemas are not documented in the source code, LLMs cannot see what fields to expect from responses. Parameter descriptions are minimal (often 1-2 sentences) and lack constraint details (ranges, enums, formats). No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Error handling and recovery guidance absent from tool definitions.
Add tags to a repository with dry-run support
Generate an AI-powered summary of a repository with optional external context
Get AI usage statistics with optional filtering by time range, feature, provider, or model
Get Starcat MCP server capabilities
Get knowledge base statistics including project counts, language distribution, and index health
Get overview statistics including repository counts, AI usage, and RAG index health
Output schemas not documented. LLMs cannot see what fields responses contain, forcing them to guess downstream field names and risk broken tool chains.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Tools like replace_repo_tags (DESTRUCTIVE) and upsert_repo_note (WRITE) lack explicit safety markers.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2025-06-18+ | v2 |
Get the README content of a repository
Get contextual information about a repository
Get the current status of a repository
Get a summary of a repository
Get tags associated with a repository
Global search across repositories with support for multiple sources (local, github) and configurable result limits
List all available tags
Remove tags from a repository with dry-run support
Replace all tags on a repository with dry-run support
Search repositories within specified scope (starred, knowledge, all) with configurable result limits
Semantic search across repositories using AI-powered similarity matching
Update the status of a repository with dry-run support
Create or update a note for a repository with dry-run support
Parameter descriptions lack constraint details. 'limit' params state range (1-50, 1-100) but lack guidance on default behavior or performance implications. 'query' params lack format/length constraints.
No error handling or recovery guidance in tool definitions. Tools do not document what errors are retryable, user-fixable, or fatal, or what the LLM should do next.
Dry-run parameters present but not documented as confirmation pattern. Tools like upsert_repo_note and update_repo_status support dry_run but lack guidance on when/why to use it.