mcp-gnu-units
mcp-gnu-units is an MCP server that gives AI agents precise, offline unit
conversion backed by the GNU units database. Convert between 3000+ units of
measurement — length, mass, time, temperature, area, volume, energy, power,
pressure, speed, data and more — evaluate compound unit expressions like kW*h
or acre*ft, reduce any quantity to its SI base units, search the unit database
by keyword, and look up the exact definition of any unit, prefix, or physical
constant. Deterministic, dimension-aware, and free of the hardcoded per-category
unit tables every other converter ships.
Status: feature-complete, pre-release. All five domain tools ship —
find_units,convert,convert_to_si,define_unit, andlist_prefixes— alongside theinfohealth check. Not yet published to PyPI; the remaining publish steps are tracked inTODO.
Distribution name: mcp-gnu-units · import package: mcp_gnu_units.
Built on GNU units
This project stands on the shoulders of GNU units, the units-conversion program written and maintained by Adrian Mariano for the Free Software Foundation. Its database is the product of decades of careful curation — thousands of units, physical constants drawn from CODATA and NIST, and the conversion semantics that make dimensional analysis trustworthy. This server would not exist without it.
mcp-gnu-units bundles that database verbatim (see
Bundled data & provenance below) and pairs it with
an independent, pure-Python conversion engine, so every number it returns traces
straight back to GNU units' own definitions. It is offered in the same spirit
and under the same license (GPL-3.0-or-later). If you find this useful, the
original earns the credit first: https://www.gnu.org/software/units/.
Bundled data & provenance
This server stands on GNU units, Adrian
Mariano's units-conversion program, by bundling its unit database verbatim at
src/mcp_gnu_units/data/definitions.units. The conversion engine here is an
independent implementation; GNU units supplies the data.
- Source: GNU units 2.27 (tarball),
definitions.unitsdata version 3.26 (2026-02-25). - License: GPL-3.0-or-later © Free Software Foundation — the same license as this project, so the two are wholly compatible.
- Integrity: the upstream tarball was GPG-verified (good signature from Adrian Mariano) before the file was vendored.
Full attribution, version pins, and checksums are recorded in
NOTICE.
Sponsoring
mcp-gnu-units is free, open-source software developed in my spare time. Sponsoring keeps this project alive and actively maintained — it funds new units-engine features, bug fixes, and ongoing support, and it's a direct signal that the work is worth continuing.
If the project is useful to you, please consider sponsoring it through GitHub Sponsors. Click the Sponsor button at the top of the repository, or visit the link directly, and pick a one-time or recurring tier. Every contribution, large or small, is hugely appreciated and goes straight back into keeping mcp-gnu-units healthy.
License
GPL-3.0-or-later. See LICENSE. The bundled GNU units database is
also GPL-3.0-or-later © Free Software Foundation; see NOTICE.
Metadata
Release files for mcp-gnu-units 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mcp_gnu_units-0.1.0.tar.gz | 176.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_gnu_units-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 356.2 kB
Release files / mcp_gnu_units-0.1.0.tar.gz
| Download URL | mcp_gnu_units-0.1.0.tar.gz |
|---|---|
| Size | 176.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
21cbe93991ddb7f09471e8e454d0b2506e2b7e34ea0067d5713d90b99fa4c3c9
|
|
BLAKE2b-256 checksum How to use checksums |
09b69bad69dc5513335ba23e1d30128fc374741e50e418375da80da6ab738082
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 3, 2026.
Transparency logRelease files / mcp_gnu_units-0.1.0-py3-none-any.whl
| Download URL | mcp_gnu_units-0.1.0-py3-none-any.whl |
|---|---|
| Size | 179.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
46bcb47c9631639c1db5ddcc6f36060194ed184d38626a4da0c47afa25273d8b
|
|
BLAKE2b-256 checksum How to use checksums |
6691221b7b7cdf9e4af4d877524fb1ed21d9782abc9da779cbaa0a22a7d7cf79
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 3, 2026.
Transparency log