
Omni Lpr
io.github.habedi由 GitHub 帳號 habedi 發布v0.3.6更新於 Oct 24, 2026
An MCP server for automatic license plate recognition
概覽
可自架的車牌辨識伺服器,透過 MCP 或 REST 讓助理偵測並讀取圖片中的車牌。
- 可以做什麼
- 列出可用的偵測模型與 OCR 模型
- 對以 Base64 或檔案上傳提供的裁切車牌圖片辨識文字
- 對以 Base64 或檔案上傳提供的整張圖片偵測並辨識所有車牌
- 對以 URL 或本機檔案路徑提供的裁切車牌圖片辨識文字
- 對以 URL 或本機檔案路徑提供的整張圖片偵測並辨識車牌
- 適用情境
- 當助理需要從照片或攝影機影像讀取車牌時適用,可作為獨立的車牌辨識微服務,也可作為供 AI 代理與大型語言模型使用的車牌辨識工具箱,前提是你願意自行執行此伺服器。
- 執行需求
- 需要一個執行中的 Omni-LPR 實例:以 pip 安裝並執行 omni-lpr 指令,或部署預先建置的 Docker 映像。MCP 端點透過 streamable HTTP 提供於伺服器的 /mcp/ 路徑(預設 CPU(ONNX)、Intel CPU(OpenVINO)與 NVIDIA GPU(CUDA)。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Omni Lpr,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Omni-LPR
[Tests]
[Code Coverage]
[Code Quality]
[Python Version]
[PyPI]
[License]
[Documentation]
[Examples]
[Docker Image (CPU)]
[Docker Image (OpenVINO)]
[Docker Image (CUDA)]
A multi-interface (REST and MCP) server for automatic license plate recognition
Omni-LPR is a self-hostable server that provides automatic license plate recognition (ALPR) capabilities via a REST API and the Model Context Protocol (MCP). It can be used both as a standalone ALPR microservice and as an ALPR toolbox for AI agents and large language models (LLMs).
Why Omni-LPR?
Using Omni-LPR can have the following benefits:
-
Decoupling. Your main application can be in any programming language. It doesn't need to be tangled up with Python or specific ML dependencies because the server handles all of that.
-
Multiple Interfaces. You aren't locked into one way of communicating. You can use a standard REST API from any app, or you can use MCP, which is designed for AI agent integration.
-
Ready-to-Deploy. You don't have to build it from scratch. There are pre-built Docker images that are easy to deploy and start using immediately.
-
Hardware Acceleration. The server is optimized for the hardware you have. It supports generic CPUs (ONNX), Intel CPUs (OpenVINO), and NVIDIA GPUs (CUDA).
-
Asynchronous I/O. It's built on Starlette, which means it has high-performance, non-blocking I/O. It can handle many concurrent requests without getting bogged down.
-
Scalability. Because it's a separate service, it can be scaled independently of your main application. If you suddenly need more ALPR power, you can scale Omni-LPR up without touching anything else.
See the ROADMAP.md for the list of implemented and planned features.
[!IMPORTANT] Omni-LPR is in early development, so bugs and breaking API changes are expected. Please use the issues page to report bugs or request features.
Quickstart
You can get started with Omni-LPR in a few minutes by following the steps described below.
1. Install the Server
You can install Omni-LPR using pip:
2. Start the Server
When installed, start the server with a single command:
By default, the server will be listening on http://127.0.0.1:8000.
You can confirm it's running by accessing the health check endpoint:
3. Recognize a License Plate
Now you can make a request to recognize a license plate from an image. The example below uses a publicly available image URL.
You should receive a JSON response with the detected license plate information.
Usage
Omni-LPR exposes its capabilities as "tools" that can be called via a REST API or over the MCP.
Available Tools
The server provides tools for listing models, recognizing plates from image data, and recognizing plates from a path.
-
list_models: Lists the available detector and OCR models. -
Tools that process image data (provided as Base64 or file upload):
recognize_plate: Recognizes text from a pre-cropped license plate image.detect_and_recognize_plate: Detects and recognizes all license plates in a full image.
-
Tools that process an image path (a URL or local file path):
recognize_plate_from_path: Recognizes text from a pre-cropped license plate image at a given path.detect_and_recognize_plate_from_path: Detects and recognizes plates in a full image at a given path.
For more details on how to use the different tools and provide image data, please see the API Documentation.
REST API
The REST API provides a standard way to interact with the server. All tool endpoints are available under the /api/v1
prefix. Once the server is running, you can access interactive API documentation in the Swagger UI
at http://127.0.0.1:8000/api/v1/apidoc/swagger.
MCP Interface
The server also exposes its tools over the MCP for integration with AI agents and LLMs. The MCP endpoint is available at http://127.0.0.1:8000/mcp/, via streamable HTTP.
You can use a tool like MCP Inspector to explore the available MCP tools.
Integration
You can connect any client that supports the MCP protocol to the server. The following examples show how to use the server with LM Studio.
LM Studio Configuration
Tool Usage Examples
The screenshot of using the list_models tool in LM Studio to list the available models for the APLR.
The screenshot below shows using the detect_and_recognize_plate_from_path tool in LM Studio to detect and recognize
the license plate from an image available on the web.
Documentation
Omni-LPR documentation is available here.
Examples
Check out the examples directory for usage examples.
Contributing
Contributions are always welcome! Please see CONTRIBUTING.md for details on how to get started.
License
Omni-LPR is licensed under the MIT License (see LICENSE).
Acknowledgements
- This project uses the awesome fast-plate-ocr and fast-alpr Python libraries.
- The project logo is from SVG Repo.
來源:README.md,提交 e38a591
工具
0版本歷史
1- v0.3.6最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通必需25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式必需10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分