mcpField
P
Python project template

Python project template

本地服务
github.com/rohanjoackhim开发工具083 周前更新

关于 Python project template

面向 Python 开发者的项目模板,预置代码检查、格式化、测试、覆盖率和 CI 配置,并提供 devcontainer 与 pre-commit 钩子作为可调整的起点。

主要功能

  1. 01Ruff 代码检查
  2. 02Black 代码格式化
  3. 03Pre-commit 钩子
  4. 04Pytest 与覆盖率
  5. 05GitHub Actions 检查
  6. 06Python devcontainer

适用场景

  1. 01启动 Python 项目
  2. 02运行测试与覆盖率检查
  3. 03提交前执行代码规范检查

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Python 项目模板

这是一个适用于各类 Python 项目的模板仓库,包含以下开发工具:

  • ruff:识别许多错误和风格问题(flake8、isort、pyupgrade)
  • black:自动格式化代码

这些检查通过 pre-commit 库作为提交前钩子运行。

模板包含用于测试的 pytest,以及用于测量覆盖率的 pytest-cov 插件。

每次提交拉取请求或合并到 main 时,都会使用 Github actions 运行所有检查和测试。

此仓库配置为使用 Python 3.11。要更改版本:

  1. 更改 .devcontainer/devcontainer.json 中的 image 参数(预构建 Docker 镜像列表见 https://github.com/devcontainers/images/tree/main/src/python)
  2. 更改 .precommit-config.yaml 中的配置选项
  3. 更改 .github/workflows/python.yaml 中的版本号

开发说明

使用 devcontainer

此仓库附带一个 devcontainer(Docker 化的 Python 环境)。如果你在 Codespaces 中打开它,devcontainer 应会自动初始化。

在本地安装 Dev Containers 扩展后,你可以在 VS Code 中打开它。

不使用 devcontainer

如果你无法或不想使用 devcontainer,请先创建一个虚拟环境:

python3 -m venv .venv
source .venv/bin/activate

然后安装开发工具和提交前钩子:

python3 -m pip install --user -r requirements-dev.txt
pre-commit install

添加代码和测试

此仓库初始包含一个非常简单的 main.py,以及针对它的测试文件 tests/main_test.py。 你需要将其替换为自己的代码,并且随着代码复杂度的增加,可能还需要添加其他文件。

准备好运行测试时,运行:

python3 -m pytest

文件说明

以下简要介绍此模板中的每个文件/文件夹:

  • .devcontainer:包含用于设置 devcontainer 的文件的文件夹
    • devcontainer.json:配置 devcontainer 的文件,其中包含 VS Code 设置
  • .github:包含 Github 专用文件和文件夹的文件夹
    • workflows:包含 Github actions 配置文件的文件夹
      • python.yaml:配置运行工具和测试的 Github action 的文件
  • tests:包含 Python 测试的文件夹
    • main_test.py:包含针对 main.py 的 pytest 风格测试的文件
  • .gitignore:描述 Git 不应跟踪哪些文件模式的文件
  • .pre-commit-config.yaml:列出所有提交前钩子及其参数的文件
  • main.py:程序的主 Python 文件(目前也是唯一的文件)
  • pyproject.toml:配置大多数 Python 开发工具的文件
  • README.md:你正在阅读的文件!
  • requirements-dev.txt:列出开发所需所有 PyPi 软件包的文件
  • requirements.txt:列出生产环境所需所有 PyPi 软件包的文件

如需更详细的说明,请阅读这篇博客文章。

🔎 发现问题或有改进建议?

请告诉我们并提交 issue,帮助我改进这个模板仓库!

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。