CheckOps home

Tools directory

M

CheckOps

mypy

mypy is an MIT optional static type checker for Python that checks type hints, supports gradual typing and integrates with editors and CI.

Visit website

Latest public signals

Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.

Visit Website

Introduction

mypy is an optional static type checker for Python. It reads standard type hints and reports type errors without running the code, aiming to combine the benefits of dynamic typing with static checking.

Gradual typing is central: unannotated code is not checked strictly by default, so teams can add hints module by module. Flags such as --strict tighten checks, per-module configuration handles legacy areas, and stub packages from typeshed provide types for libraries. mypyc, from the same project, compiles typed Python to C extensions.

In the quality loop mypy catches type bugs before tests run.

The source code is at python/mypy on GitHub under the MIT licence, with about 20,700 stars; the most recent commit was on 11 November 2026.

Features

  1. Type hint checking: Standard Python typing.
  2. Gradual typing: Adopt module by module.
  3. Strict mode: Opt-in stronger checks.
  4. Plugins: Framework plugins such as Django and Pydantic.
  5. Incremental mode: Caches results.
  6. Stubs: typeshed and third-party stubs.

Pros

  1. Reference implementation: Long-standing checker from the Python community.
  2. Free to use: Open source under the MIT licence, so the core tool costs nothing to use.
  3. Actively maintained: The repository had commits as recent as 11 November 2026.
  4. Community: About 20,700 GitHub stars.

Cons

  1. Speed: Slower than Pyright on large codebases.
  2. Dynamic patterns: Some idioms are hard to type.
  3. Stub gaps: Untyped libraries reduce value.
pip install mypy
mypy --strict src/

Resources:

Pricing

mypy is free and open source under the MIT licence.

  1. Python teams adopting type hints.
  2. Libraries shipping typed APIs.

Conclusion

mypy is the standard type checker for Python’s gradual typing.

Adopt strict settings module by module.

On CheckOps, mypy is filed under the Release & CI gates stage. Related tools listed here include Ruff, Pylint, Pyright, Bandit, pre-commit and SonarQube. Before standardising on one, compare recent maintenance activity, the pricing model as your usage grows, and the integrations you rely on today. Information on this page was verified against the official website, documentation and repository on 11 November 2026.

Alternatives

Other tools on CheckOps that cover similar ground. Open a page, or compare one with mypy side by side.