MCP server for pub.dev - Enables AI assistants to access Dart/Flutter package information
pub-mcp has well-structured tool definitions with consistent naming (verb_noun pattern) and complete input schemas using Zod validation. All 10 tools have descriptions and required parameters are clearly marked. However, parameter descriptions are minimal (often 1-2 sentences), output schemas are not documented, and error handling guidance is absent. The server lacks tool annotations (readOnlyHint, destructiveHint) despite all tools being read-only. No pagination guidance for search_packages despite potentially large result sets. Missing dependency hints and recovery guidance in descriptions.
Get the changelog of a specific package version
Get the dependencies of a package
Get the example code of a package
Get detailed information about a specific package
Get comprehensive metrics for a package (info + score + versions)
Get package score and metrics (pana points, likes, downloads, tags)
Get all available versions of a package
No output schemas documented. LLMs cannot plan downstream calls or extract required fields without knowing response structure. All 10 tools lack return type documentation.
Parameter descriptions are minimal (10-30 chars). Descriptions like 'Package name' and 'Search query string' lack context on format, constraints, or when to use. Baseline for A+ tools is 72 chars average per parameter.
No tool annotations present. All tools are read-only but lack readOnlyHint annotation. This prevents clients from optimizing caching and retry logic.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | <=2025-11-25 | v2 |
Get the README content of a package
Search for packages on pub.dev by query with optional filters
Find packages similar to a given package or by tags
search_packages and search_similar_packages lack pagination guidance. No mention of result limits, next_cursor, or total_count in descriptions. Large result sets could exhaust context windows.
No error handling guidance. Descriptions do not explain what happens on invalid package names, network failures, or missing versions. LLMs lack recovery paths.