modelcontextprotocol / modelcontextprotocol/servers
Add PEP8 linting for Python servers
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 90.5k
- Forks
- 11.7k
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 5
Description
Is your feature request related to a problem? Please describe.
The Python MCP servers in this repository (fetch, git, and time) currently include ruff as a dev dependency but lack standardized PEP8 linting configuration. This leads to inconsistent code style across the Python codebase and makes it difficult for contributors to ensure their code follows Python style guidelines.
Describe the solution you'd like
Add standardized PEP8 linting configuration using ruff to all Python servers in the repository. This should include:
- Consistent
[tool.ruff]configuration sections in each Python server'spyproject.toml - Enable PEP8 style checks (E and W error codes)
- Set up import sorting and formatting rules
- Add linting commands to development workflows
- Optionally integrate linting checks into CI/CD pipelines
Describe alternatives you've considered
- Using
flake8+black+isortcombination instead ofruff(butruffis already included and provides all these features in one tool) - Using
pylintfor more comprehensive static analysis (but it's heavier andruffcovers PEP8 compliance well) - Adding pre-commit hooks with linting (could be done in addition to the main solution)
Additional context
The repository already has ruff included in dev dependencies for all Python servers, so this enhancement would primarily involve adding configuration rather than new dependencies.
(Description generated by Claude and edited by me)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by inspecting the pyproject.toml files for the fetch, git, and time Python servers and their existing development workflows, then verify how each already invokes ruff. Done means each server has consistent E/W, import-sorting, and formatting settings plus documented linting commands; CI integration is optional as stated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- ci-cd, tooling
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100