Head to head · Local inference · October 2026 research run
Docker Model Runner vs MLX LM
Docker Model Runner scores 57.1 (C) on agent readiness against MLX LM's 52.2 (D), and leads in 5 of 7 scored categories. MLX LM leads on maintenance & community. Both do local inference.
Which one, for what
Good for A team that already runs Docker and wants local models served to containers and Compose services through OpenAI-, Anthropic- or Ollama-compatible routes, with models stored as OCI artefacts.
Ahead on
- Reliability, 85 against 66
- Schema & documentation, 49 against 37
- Security & auth, 40 against 32
- Transparency & trust, 73 against 66
Watch for
No credential on the API. The docs say any client that can reach it, including other containers, can pull, load and run models
MLX LM D
Good for An owner with an Apple silicon Mac who wants MLX-format models, local fine-tuning and quantisation from Python or the command line, with a simple local chat completions server.
Ahead on
- Maintenance & community, 61 against 55
Also in its favour
- No incidents deducted, where Docker Model Runner loses 3 points for them
Watch for
mlx_lm.server has no API key or other credential option, and --allowed-origins defaults to *
Score by category
| Category | Weight this run | Docker Model Runner | MLX LM | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 85 | 66 | Docker Model Runner +19 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 49 | 37 | Docker Model Runner +12 |
| Agent ergonomics | 13%16.2 | 58 | 54 | Docker Model Runner +4 |
| Security & auth | 14%17.5 | 40 | 32 | Docker Model Runner +8 |
| Payments & pricing | 10%12.5 | 60 | 60 | even |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 55 | 61 | MLX LM +6 |
| Transparency & trust | 7%8.8 | 73 | 66 | Docker Model Runner +7 |
| Negative events | ≤15 | -3 | 0 | |
| Total | 57.1 · C | 52.2 · D |
Facts side by side
| Fact | Docker Model Runner | MLX LM |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | Docker, Inc. | Apple Inc. |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | HTTP | HTTP |
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 (server, CLI plugin and dmr binary). Docker Desktop, which bundles it, is closed software under Docker's subscription agreement, and each model carries its own licence | MIT |
| Read-only variant documented | no | no |
| llms.txt | yes | no |
| Last release | 2026-08-12 | 2026-10-01 |
| Terms last updated | 2026-08-26 | no document linked |
| Privacy policy last updated | 2026-08-26 | no document linked |
| Customer content may train models | not found in the text | |
| Terms restrict automated access | yes | |
| Terms restrict benchmarking | yes | |
| Terms or service can change without notice | not found in the text | |
| Arbitration or class-action waiver | yes | |
| Popularity | 656 stars | 7.3k stars, 140k PyPI/wk |
Verdicts
Docker Model Runner
CI passes on the main branch, and Docker has published two security advisories with CVEs and fixed versions for the project. The API takes no credential, so any client or container that reaches it can pull, delete and run models, and the documentation has no OpenAPI file or error reference.
MLX LM
MIT, with no telemetry found in the source, and the tests passed on the last eight pushes to main. mlx_lm.server has no API key option, answers any origin by default and loads whichever model a request names, and its own docs say it is not recommended for production.
Before you call either
Docker Model Runner
- Use base URL
http://localhost:12434/engines/v1for OpenAI clients andhttp://localhost:12434for Anthropic and Ollama clients. Any API key value is accepted - In Docker Desktop, run
docker desktop enable model-runner --tcp 12434first. Host-side TCP is off by default - From a container, call
http://model-runner.docker.internalon Docker Desktop orhttp://172.17.0.1:12434on Docker Engine - Raise the context before agent work with
docker model configure --context-size <n> <model>. The llama.cpp default is 4,096 tokens - Name models with their namespace, such as
ai/smollm2, and expect plain-text error bodies with a 400, 404, 500 or 503 status
MLX LM
- Keep
mlx_lm.serveron 127.0.0.1 and pass--allowed-originswith the origins you trust. There is no API key, and the default answers every origin - Treat any caller as able to load any model. The
modelandadaptersrequest fields accept any Hugging Face repository or local path - Send
max_tokensormax_completion_tokenswhen you need more than 512 tokens, the server default - Read errors as
{"error": "<text>"}with 400 for a bad field and 404 for a model that failed to load. They are not OpenAI error objects - Poll
GET /healthbefore the first request. It answers 503 withunavailablewhen the generation thread has stopped
Questions
Which is better for AI agents, Docker Model Runner or MLX LM?
Docker Model Runner scores 57.1 (C) on agent readiness against MLX LM's 52.2 (D), and leads in 5 of 7 scored categories. MLX LM leads on maintenance & community.
Do Docker Model Runner and MLX LM need an API key?
Neither needs a key.
Can an agent call Docker Model Runner and MLX LM without installing anything?
No hosted endpoint is listed for Docker Model Runner. No hosted endpoint is listed for MLX LM.
Are Docker Model Runner and MLX LM open source?
Yes. Docker Model Runner is open source (Apache-2.0 (server, CLI plugin and `dmr` binary). Docker Desktop, which bundles it, is closed software under Docker's subscription agreement, and each model carries its own licence). MLX LM is open source (MIT).
Other comparisons with Docker Model Runner or MLX LM
- AnythingLLM vs Docker Model Runner
- AnythingLLM vs MLX LM
- Docker Model Runner vs Foundry Local
- Docker Model Runner vs Core
- Docker Model Runner vs GPT4All
- Docker Model Runner vs Jan
- Docker Model Runner vs Khoj
- Docker Model Runner vs KoboldCpp
- Docker Model Runner vs Lemonade
- Docker Model Runner vs llama.cpp
- Docker Model Runner vs LM Studio
- Docker Model Runner vs LocalAI
- Docker Model Runner vs Ollama
- Docker Model Runner vs Open WebUI
- Docker Model Runner vs screenpipe
- Docker Model Runner vs TextGen
- Foundry Local vs MLX LM
- Core vs MLX LM
- GPT4All vs MLX LM
- Jan vs MLX LM
- Khoj vs MLX LM
- KoboldCpp vs MLX LM
- Lemonade vs MLX LM
- llama.cpp vs MLX LM
- LM Studio vs MLX LM
- LocalAI vs MLX LM
- MLX LM vs Ollama
- MLX LM vs Open WebUI
- MLX LM vs screenpipe
- MLX LM vs TextGen
- Docker Model Runner vs Underdog
- MLX LM vs Underdog
Machine-readable
- This page as Markdown
/compare/docker-model-runner-vs-mlx-lm.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/docker-model-runner.json·/api/v1/tools/mlx-lm.json - From a terminal
anchor compare docker-model-runner mlx-lm(the CLI) - Over MCP
compare_tools {"a": "docker-model-runner", "b": "mlx-lm"}at/mcp, no key