Agent skill

Modern Python

by antoinebou12 in antoinebou12/uml-mcp

Modern Python tooling and best practices using uv, ruff, ty, and pytest.

MITAuto-check passedDevelopment

Install Modern Python

skills CLI
$ npx skills add antoinebou12/uml-mcp --skill modern-python -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install antoinebou12/uml-mcp modern-python --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/antoinebou12/uml-mcp.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.skill/skills/modern-python .claude/skills/modern-python && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
modern-python
GitHub stars
105
Token cost
~1k tokens
SKILL.md length
453 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
MIT

At a glance

Modern Python tooling and best practices using uv, ruff, ty, and pytest.

  • Working on Python projects
  • SKILL.md covers When to Use, Legacy Command Guidance, Project Structure and… and Linting and Formatting (ruff), plus 4 more sections
  • Calls uv, pip and python
  • Replacing pip/virtualenv with uv

What it does

Modern Python is an agent skill from antoinebou12/uml-mcp. Modern Python tooling and best practices using uv, ruff, ty, and pytest. Covers project setup with pyproject.toml (PEP 735), src layout, linting/formatting with ruff, type checking with ty, testing with pytest and coverage, pre-commit with prek, and security (pip-audit, detect-secrets, actionlint). Use when setting up or working on Python projects, replacing pip/virtualenv with uv, replacing flake8/black/mypy with ruff/ty, adding pre-commit or security scanning, or when the user mentions uv, ruff, ty, pytest, or…

Its SKILL.md is about 1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Linting and formatting, Type safety and Unit testing. It works with Python, Ruff, pytest and Model Context Protocol. The repository describes itself as: UML-MCP Server is a UML diagram generation tool based on MCP (Model Context Protocol), which can help users generate various types of UML diagrams through natural language…. The licence is MIT.

When your agent uses it

  • Working on Python projects
  • Replacing pip/virtualenv with uv
  • Replacing flake8/black/mypy with ruff/ty
  • Adding pre-commit

Example prompts

  • “/modern-python”

Requirements

  • Python 3

What it can do on your machine

Read from SKILL.md and the folder at commit c598429. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • uv
    • pip
    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uv and pip, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Modern Python loads about 1k tokens when it runs. Until then it costs about 140 tokens; SKILL.md has 453 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~140
When it runs · the whole SKILL.md, loaded when a task matches
~1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from antoinebou12/uml-mcp at commit c598429, republished under its MIT licence (© antoinebou12). 453 words, ~1,010 tokens.

Download SKILL.mdSave it as .claude/skills/modern-python/SKILL.md (or your agent's skills folder).
name
modern-python
description
Modern Python tooling and best practices using uv, ruff, ty, and pytest. Covers project setup with pyproject.toml (PEP 735), src layout, linting/formatting with ruff, type checking with ty, testing with pytest and coverage, pre-commit with prek, and security (pip-audit, detect-secrets, actionlint). Use when setting up or working on Python projects, replacing pip/virtualenv with uv, replacing flake8/black/mypy with ruff/ty, adding pre-commit or security scanning, or when the user mentions uv, ruff, ty, pytest, or cookiecutter-python patterns.

Modern Python

Modern Python tooling and practices: uv for dependencies, ruff for lint/format, ty for type checking, pytest for tests. Use for this project and when setting up or refactoring Python codebases.

When to Use

  • Setting up or changing Python project structure and tooling
  • Replacing pip/virtualenv with uv
  • Replacing flake8/black/isort with ruff, or mypy with ty
  • Adding pre-commit hooks and security scanning
  • Writing or reviewing tests with pytest and coverage

Legacy Command Guidance

Prefer uv over raw python/pip. When about to run legacy commands, use:

Legacy commandUse instead
pythonuv run python
python script.pyuv run script.py
pip install pkguv add pkg or uv run --with pkg
pip uninstall pkguv remove pkg
pip freezeuv export
python -m pip installuv add / uv sync

Commands that already use uv run (e.g. uv run pytest) do not need changing.

Project Structure and pyproject.toml

  • Layout: Prefer a src/ layout (package under src/<package_name>/). This project uses top-level packages (mcp_core, tools); when adding new packages, keep them at repo root or under a clear namespace.
  • Config: Single pyproject.toml at repo root.
  • Python: This repo targets Python 3.12 only (requires-python in pyproject.toml).
  • Dependency groups (PEP 735): Put dev/test/lint deps in dependency groups where the tool supports them.

Linting and Formatting (ruff)

  • Use ruff for both linting and formatting (replaces flake8, black, isort, pyupgrade).
  • Configure in pyproject.toml under [tool.ruff] and [tool.ruff.format].

Run:

  • uv run ruff check .
  • uv run ruff format .

Fix auto-fixable issues: uv run ruff check --fix .

Type Checking (ty)

  • Use ty instead of mypy/pyright for faster type checking when introducing it.
  • Configure in pyproject.toml under [tool.ty] if needed.

Run: uv run ty check

Show full SKILL.md (181 more words)Show less

Unit Testing (pytest)

  • Use pytest for all tests; prefer it over unittest for new code.
  • Layout: tests/ at repo root; use conftest.py for shared fixtures.
  • Coverage: Use pytest-cov. Enforce a minimum coverage threshold so CI fails when coverage drops.

Run:

  • uv run pytest
  • uv run pytest --cov=mcp_core --cov=tools --cov-report=term-missing
  • uv run pytest -v tests/

Good practices:

  • Use @pytest.fixture for setup/teardown and shared state.
  • Use @pytest.mark.parametrize for multiple inputs/outputs.
  • Prefer descriptive test names and clear assertion messages.
  • Keep tests fast; use mocks for I/O or external services when appropriate.

Pre-commit and Security

  • Use prek or pre-commit for hooks (ruff, ty, pytest, detect-secrets).
  • Dependencies: Run uv run pip-audit or use in CI.
  • Secrets: Use detect-secrets in pre-commit or CI.
  • GitHub Actions: Use actionlint for workflow syntax.

Quick Checklist

  • Project uses pyproject.toml with clear requires-python and dependency groups
  • Dependencies managed with uv where possible; avoid bare pip install in instructions
  • Lint/format with ruff; type check with ty or mypy as configured
  • Tests with pytest; coverage enforced in config or CI
  • Pre-commit runs lint, format, and tests where appropriate
  • Security: pip-audit, detect-secrets; optional actionlint, Dependabot

© antoinebou12, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .skill/skills/modern-python of antoinebou12/uml-mcp.

Open the folder on GitHubat commit c598429

Compare with similar skills

Modern Python next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Modern Python compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Modern Python this skillantoinebou12/uml-mcp105—~1kAutomated safety check: PassMIT
Kedro Babysitkedro-org/kedro11k—~4kAutomated safety check: PassCustom licence
Specx Project Toolingmaksimzayats/specx202—~965Automated safety check: PassMIT
Pythonalinaqi/maggy707—~1.1kAutomated safety check: PassMIT
Python ProJeffallan/claude-skills12k—~1.6kAutomated safety check: PassMIT
Pythonericrisco/rsc-harness156—~3.8kAutomated safety check: PassMIT

Similar skills

  • Kedro Babysit

    kedro-org/kedro

    Run Kedro's local lint / format / type-check / tests on changed files (uses the project's pre-commit hooks, ruff, mypy, pytest, lint-imports, detect-secrets, Make targets — in the right venv), or…

    11k GitHub stars~4k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Specx Project Tooling

    maksimzayats/specx

    Add strict Python project tooling for a specx service. An agent skill from maksimzayats/specx.

    202 GitHub stars~965 tokensUpdated 2 mo ago
    DevelopmentAuto-check passed
  • Python

    alinaqi/maggy

    Python development with ruff, mypy, pytest - TDD and type safety

    707 GitHub stars~1.1k tokensUpdated 13 days ago
    DevelopmentAuto-check passed
  • Python Pro

    Jeffallan/claude-skills

    Writes type-annotated Python 3.11+ with async patterns, dataclasses and pytest suites, validated with mypy in strict mode, black and ruff.

    12k GitHub stars~1.6k tokensUpdated 4 days ago
    DevelopmentAuto-check passed
  • Python

    ericrisco/rsc-harness

    A skill your agent uses when the task is Python itself, in any framework or none: PEP 695 generics, mypy --strict typing, dataclass/Protocol/TypedDict/Enum choices, asyncio.TaskGroup, stdlib idioms…

    156 GitHub stars~3.8k tokensUpdated today
    Backend & APIsAuto-check passed
  • Check

    av1155/houndarr

    Run Houndarr's full quality gate (ruff lint, ruff format check, mypy, bandit, pytest) and report results in a single table.

    292 GitHub stars~366 tokensUpdated 2 days ago
    Testing & QAAuto-check passed

More from antoinebou12/uml-mcp

  • Uml Diagramming

    antoinebou12/uml-mcp

    Produces Mermaid or PlantUML diagram code from user specifications for UML, architecture, and flow diagrams.

    105 GitHub stars~2.4k tokensUpdated today
    Auto-check passed
  • MCP Python

    antoinebou12/uml-mcp

    Create and extend MCP (Model Context Protocol) servers in Python using FastMCP and the official SDK.

    105 GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Uml Diagrams

    antoinebou12/uml-mcp

    Create and validate diagrams with the uml-mcp MCP server (generateuml, generateumlimage, validateuml, listdiagramtypes, generateumlbatch).

    105 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Uml MCP Diagrams

    antoinebou12/uml-mcp

    Creates diagrams via the uml-mcp MCP server (generateuml, generateumlimage, validateuml, listdiagramtypes, generateumlbatch) and returns shareable Kroki URLs or inline chat images.

    105 GitHub stars~3.2k tokensUpdated today
    Auto-check passed
  • Sequential Thinking

    antoinebou12/uml-mcp

    Step-by-step and reflective problem-solving for complex or multi-step tasks.

    105 GitHub stars~715 tokensUpdated today
    Auto-check passed
  • Uml MCP Navigation

    antoinebou12/uml-mcp

    Navigate the UML-MCP repository and its documentation quickly.

    105 GitHub stars~1.1k tokensUpdated today
    Auto-check passed

Questions about Modern Python

What does Modern Python do?

Modern Python tooling and best practices using uv, ruff, ty, and pytest. Modern Python is an agent skill from antoinebou12/uml-mcp. Modern Python tooling and best practices using uv, ruff, ty, and pytest.

When should I use Modern Python?

Modern Python fits situations like: working on Python projects; replacing pip/virtualenv with uv; replacing flake8/black/mypy with ruff/ty; adding pre-commit.

How do I install Modern Python in Claude Code?

Run `npx skills add antoinebou12/uml-mcp --skill modern-python -a claude-code`. Or copy the skill folder (.skill/skills/modern-python in antoinebou12/uml-mcp) into .claude/skills/modern-python in your project. Claude Code loads it when a task matches its description.

How do I install Modern Python in Codex?

Run `npx skills add antoinebou12/uml-mcp --skill modern-python -a codex`. Or copy the skill folder (.skill/skills/modern-python in antoinebou12/uml-mcp) into .agents/skills/modern-python in your project. Codex loads it when a task matches its description.

Can I use Modern Python in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add antoinebou12/uml-mcp --skill modern-python -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/modern-python, .gemini/skills/modern-python, .github/skills/modern-python and .opencode/skills/modern-python in your project.

What does Modern Python need to run?

Going by SKILL.md and its folder, Modern Python needs the command-line tools its instructions call (uv, pip and python). Our summary lists: Python 3.

Does Modern Python access the network?

SKILL.md contains no URLs. Its commands use uv and pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Modern Python safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Modern Python use?

Modern Python is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Modern Python use?

About 1k tokens (SKILL.md is roughly 4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Modern Python?

Skills that share tags, products or a category with Modern Python: Kedro Babysit (kedro-org/kedro, 11k stars), Specx Project Tooling (maksimzayats/specx, 202 stars), Python (alinaqi/maggy, 707 stars) and Python Pro (Jeffallan/claude-skills, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Modern Python?

antoinebou12 (a GitHub user) maintains it in antoinebou12/uml-mcp, which has 105 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 6, 2026.

Source: antoinebou12/uml-mcp on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.