pyfmcp
# PyFMCP
[](https://github.com/pzarczynski/pyfmcp/actions/workflows/ci.yml)
[](https://pypi.org/project/pyfmcp/)
[](https://pzarczynski.github.io/PyFMCP/)
An easy-to-use, configurable, Python-focused [Model Context Protocol](https://modelcontextprotocol.io/) providing tools for type-checking, testing and linting your code.
## Requirements
- Python 3.12+
- An MCP-compatible client
- `uv` (recommended) or another Python package installer
## Usage
Run it from the project you want to inspect:
```bash
uv run pyfmcp
```
## Development
```bash
uv sync --all-groups
uv run pytest
uv run ruff check .
uv run basedpyright
```
Build the documentation with `uv run mkdocs serve`.
Contributions are welcome. Please open an issue or pull request with a focused
change, tests where appropriate, and documentation for user-visible behavior.
## License
[MIT](LICENSE)
TDQS
Scored across 3 tools
Each tool targets a distinct aspect of Python development: type checking (basedpyright), testing (pytest), and linting (ruff_lint). There is no functional overlap between them, making selection unambiguous.
Two tools use the bare command name (basedpyright, pytest) while ruff_lint appends a descriptor. This is a minor deviation, but the naming is still predictable since each tool is recognizable by its underlying tool name.
Three tools is well-scoped for a Python development server covering static analysis, linting, and testing. Each tool has a clear purpose and the count is appropriate for the domain.
The set covers the core development loop of type checking, linting, and testing. A formatter or build tool could be added, but the current coverage is typical and workable for most Python projects.