Skip to main content

caniollama

Does this local Ollama model actually support tool calling? Find out in seconds, not by reading a six-month-old blog post.

uvx caniollama check qwen2.5-coder:7b

or test everything you've pulled:

uvx caniollama check

What it does

Runs a small, fixed test suite against a locally running Ollama instance and classifies the result into one of three real answers:

  1. Structured pass -- the model returns a proper tool_calls field.
  2. JSON-in-content fallback -- the model knows tool calling exists but emits the intent as JSON-shaped text instead of the structured field.
  3. Rejected by backend -- Ollama 400s the moment tools is included.

After a run, you'll be asked -- every time, explicitly -- whether to submit the result (metadata only: model name, quantization, Ollama version, pass/fail per case) to the public caniollama registry. See docs/privacy.md for exactly what is and isn't ever sent.

Install

No install needed for a one-off check:

uvx caniollama check <model>
# or
pipx run caniollama check <model>

For repeated use:

uv tool install caniollama

Development

uv sync
uv run pytest
uv run ruff check .
uv run mypy src

License

MIT

Metadata

Release files for caniollama 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for caniollama 0.1.3
File Size Uploaded
caniollama-0.1.3.tar.gz 14.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for caniollama 0.1.3
File Interpreter ABI Platform
caniollama-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 28.6 kB

Release files / caniollama-0.1.3.tar.gz

Download URL caniollama-0.1.3.tar.gz
Size 14.1 kB
Tags Source
SHA-256 checksum
How to use checksums
3af1c2fca87f89e22352af6d48b6674df4c5c81d072d59fe4d1e54cc85698671
BLAKE2b-256 checksum
How to use checksums
80c4c9ab1fe9ccb0fde20a9bc2040caa76d4f04c188cd59de3606c56545243f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 9, 2026.

Transparency log

Release files / caniollama-0.1.3-py3-none-any.whl

Download URL caniollama-0.1.3-py3-none-any.whl
Size 14.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
31fb400a99ddd4dc090f50214b5382355225c970337356bcbb00f8ad3d5b331c
BLAKE2b-256 checksum
How to use checksums
4fc3ae3bd50df6f5007291e580ec9c045eaa04b1ef21e3ea0765a1096eba7104
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page