Development
This page is for contributors and maintainers working on thexyTom/coding-tools-mcp repository.
Important code areas
| Area | What to inspect |
|---|---|
coding_tools_mcp/server.py | CLI parser, transports, auth, MCP request handling, tool registry, schemas, runtime policy, command execution, file tools, Git tools, and diagnostics. |
coding_tools_mcp/__init__.py | Package version exported to server metadata. |
pyproject.toml | Python version, package metadata, dependencies, optional extras, and CLI entry point. |
tests/ | Regression tests for protocol, schemas, safety gates, command behavior, and tool output. |
scripts/ and docs/ | Helper scripts and operational notes, including remote or tunnel workflows. |
benchmarks/ | Runtime and dogfood benchmark helpers. |
Local setup
.[dev] when you only need linting and typing dependencies. Use .[image] when working on image inspection behavior.
Run the server from source
Checks
The project declares dev dependencies forruff and mypy. Run the repository’s test and check commands before changing tool behavior, schemas, or safety policy.
Typical local checks are:
Schema changes
When adding or changing a tool:- Update the tool implementation.
- Update
input_schemas(). - Update tool annotations and registry metadata.
- Add or update tests for argument validation, output shape, profile exposure, and failure diagnostics.
- Update the Tools reference page.
Safety changes
Changes toexec_command, path resolution, environment inheritance, Landlock handling, auth, or permission modes should be treated as high-risk. Update tests and documentation together, and make sure the Security boundaries and Limitations pages still match the implementation.