MCP server exposing OSS-maintainer tools (GitHub, changelog, deps, repo) to Claude
ossmate exposes 10 tools with basic descriptions and partial schemas. All tools are READ_ONLY and well-intentioned for OSS maintenance workflows. However, critical gaps exist: most tools lack visible input schemas in the provided source (only 4 of 10 show explicit schema definitions), parameter descriptions are minimal or absent, and output schemas are undocumented. Tool naming is verb-forward and clear (get_*, list_*), but descriptions average ~60 chars, below the 194-char baseline for A+ tools. No error handling guidance, no pagination metadata, and no tool annotations (readOnlyHint, etc.). The server is functional but falls short of production-grade quality.
Read and parse CHANGELOG.md or similar files
Get commit log between two refs or dates
Parse commits as Conventional Commits and suggest semver bump
Audit lockfiles for OSV.dev advisories and analyze dependencies
Fetch GitHub issue details and comments
Fetch GitHub PR details including diff and metadata
Get repository metadata and configuration
Find issues with no activity for N+ days
Input schemas not visible for 6 of 10 tools (get_repo_info, get_changelog, get_dependencies, and others). Only 4 tools show explicit parameter schemas in the provided source.
Output schemas are completely undocumented. LLMs cannot infer what fields to expect from responses (e.g., does get_repo_info return {name, url, stars, license} or {id, metadata, ...}?). This forces agents to guess and wastes tokens on trial-and-error parsing.
Tool descriptions are generic and under 100 chars (baseline 194 chars for A+ tools). E.g., 'Get repository metadata and configuration' lacks context on WHEN to call it, WHAT it returns, or HOW it differs from other tools. Descriptions should be 50 - 200 chars and answer: what, when, why.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
List GitHub issues with filtering and search options
List open GitHub PRs with filtering options
No error handling guidance. Tools that call external APIs (GitHub, OSV.dev) can fail (rate limits, auth, network). Responses must tell LLMs what to do next: 'GitHub API rate limit exceeded. Wait 60 seconds or check your token.' Currently, failures likely return raw errors.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All 10 tools are READ_ONLY, but this is not declared in the tool definition. Modern MCP clients use annotations to optimize caching and retry logic. Missing annotations force clients to treat all tools as potentially stateful.