MCP server for common development tools (make, lint, test) with Context7 integration
This STDIO-only server provides 9 development tools with mixed definition quality. Tool names follow verb-noun convention (actionlint, gitDiff, gitStatus, etc.), which is appropriate. Descriptions are present and reasonably detailed for most tools, averaging ~120-180 characters. However, input schemas are complete but lack rigor in several areas: parameters sometimes lack descriptive clarity, enum constraints are underutilized, and output schemas are not documented. Error handling is minimal, no actionable recovery guidance is visible in the source. The server targets developer workflows (git, linting, code review) which is well-scoped, but definition quality is inconsistent across tools. Most tools are READ_ONLY (safe), with only 'ensureNewline' marked WRITE, reducing risk. Overall, this is a functional but unremarkable server that would benefit from stronger parameter documentation and explicit output schema documentation.
Run actionlint to validate GitHub Actions workflow files
Perform code review analysis comparing changes against a base branch with security, performance, and maintainability checks
Loads and parses environment variables from .env files with optional masking of sensitive values
Ensure files have POSIX-compliant trailing newlines. Supports check, fix, and validate modes.
Generate a Pull Request message with title and body based on commit history and conventional commit format
Get current date and time with comprehensive temporal context including human-readable timestamp, calendar context (quarter, week, day-of-year), timezone information, and relative calculations (days remaining, leap year, etc.)
Get git diff between branches, commits, or working directory and staging area
Output schemas completely undocumented. LLMs cannot determine what fields to expect from tool responses, forcing them to guess at response structure and preventing proper downstream tool chaining.
Array parameters lack item type specifications. 'args', 'files', 'ignore', 'patterns', 'exclude', 'maskPatterns' are all typed as 'array' with no description of what elements are (should be 'array of strings' with format hints like 'glob pattern' or 'file path').
Free-form string parameters invite hallucination. 'timezone' (getCurrentDateTime), 'format' (gitLog), 'base' (gitDiff, codeReview, generatePRMessage) lack enum constraints or regex patterns. LLMs will guess invalid values like 'PST' instead of valid IANA 'America/Los_Angeles'.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 53 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 34 | - | v1 |
Get git log with support for filtering by commit count, author, date, and grep patterns
Get git status of the working directory
No error handling guidance. Tools provide no actionable error messages or recovery steps. If 'git diff' fails (repo not found, no git installed, base branch invalid), agents have no guidance on next steps.
Destructive operation not clearly marked. 'ensureNewline' with mode='fix' modifies files on disk, but description does not explicitly state this has side effects. The tool should prominently warn that 'fix' mode alters files and offer a 'check' mode for preview.
Ambiguous parameter names. 'includeIssue' is typed as string but named as boolean. 'includeTests', 'includeBreaking', 'includeProcessEnv' have boolean names but lack clear 'default: false' documentation in descriptions.
No pagination or result limits documented. Tools like 'gitLog' and 'gitDiff' can produce very large outputs, but no guidance on how many lines/diffs are returned, whether pagination is supported, or what the agent should do if results are truncated.