MCP server that lets Claude search, evaluate and download AI models through the ModelDock app. Provides access to Hugging Face model discovery and local download management.
ModelDock has 10 well-named tools with clear action verbs (search_, get_, download_, list_, verify_, manage_, watchlist, lineage, system_info). Descriptions are detailed and contextual (avg ~150 chars), exceeding the 10 - 1024 char baseline. All tools have input schemas with type definitions. However, output schemas are not documented in the visible code, responses are inferred from implementation rather than explicitly declared. Parameter descriptions are present but some lack format constraints (e.g., 'query' in search_models has no length/pattern guidance). Error handling is minimal, no recovery guidance or categorization visible. Security is reasonable (no secrets in params), but no audit logging or permission gates evident. Tool composition is sound: each tool has one responsibility, and outputs chain well (e.g., get_model returns variant_label for download_model). Naming follows verb_noun convention consistently.
Queue a model variant for download to the user's chosen drive. Use the exact variant label from get_model. Tell the user the size first and get explicit confirmation for anything over 10 GB. Refuses duplicates already in the library.
Current download queue: states, bytes done/total, errors.
Full details for one model: description, license verdict, downloadable variants with exact sizes and memory-fit verdicts, whether already in the library, and its base model lineage.
Family tree of a model: all fine-tunes or quantizations derived from it.
Everything downloaded to the current destination drive: models with sizes, quantizations, capability hints, memory-fit verdicts, plus total used and free disk space.
Pause, resume or cancel a download by job id (from download_status). Cancel deletes that job's partial files.
Output schemas not documented. Tool descriptions state what is returned (e.g., 'Full details for one model'), but the response structure is not formally declared. LLMs cannot plan downstream tool calls without knowing which fields to expect.
Parameter format constraints missing. 'query' in search_models, 'id' in get_model, and 'path' in verify_model lack length limits, regex patterns, or format guidance. LLMs may pass invalid values without clear validation feedback.
Error handling lacks recovery guidance. No visible error responses that tell the LLM what to do next (e.g., 'Model not found. Try search_models() with a partial name.'). Errors appear to be raw HTTP responses without actionable context.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
Search Hugging Face for AI models via ModelDock. Matches model names AND model card content. Combine filters freely. Run multiple calls with different query terms for broad needs-based research.
The user's machine and destination: RAM (for judging what runs), destination drive, connection state, free space.
Re-check a downloaded model against its recorded checksums (path from list_library). Big models take a while.
The user's model watchlist: list it, or add/remove a model id.
No confirmation/dry-run for destructive operations. download_model and manage_download (cancel action) modify state without a confirmation step. Agents could accidentally delete downloads or queue wrong variants.
Pagination not visible in search_models. Large result sets could exhaust context. No limit, offset, or cursor parameters documented in the schema, though the description mentions 'Run multiple calls with different query terms'.