A self-hosted embedding server with HTTP, gRPC and MCP APIs, verified model installation, batching, health checks, metrics and Windows and Linux releases.
View on GitHub ↗Homepage ↗Impossible Embedding is a local-first server for dense text embeddings with open models. It owns the operational pieces that are easy to get wrong: verified model installation, bounded dynamic batching, predictable cancellation, readiness, metrics, authentication, and graceful shutdown.
Inference runs locally through ONNX Runtime. Nothing calls OpenAI or any other hosted inference service. POST /v1/embeddings is only a wire-compatible adapter so existing OpenAI-compatible clients can use a local base URL.
- Native and OpenAI-compatible HTTP APIs, with a checked-in OpenAPI v1 contract. - gRPC embeddings, standard gRPC health, and reflection. - MCP 2025-03-26 over stateless HTTP and stateful standard input/output. - Curated, revision-pinned model manifests with verified downloads and explicit semantic status. - Atomic model installation, offline reuse, load/unload/delete operations, and concurrent-use protection. - Bounded request sizes, queueing, tokenization, batching, concurrency, and shutdown. - Prometheus metrics, structured privacy-safe logs, liveness, readiness, and a small status page. - Native Windows and Linux x86-64 release archives and a non-root container recipe.
Rust 1.85.1 is selected by rust-toolchain.toml. Start the server on explicit loopback addresses:
In a second terminal, install and load a curated model through the local administration API:
Installation is the only model operation that may use the network. It is always explicit, pins the revision and hashes from the curated manifest, and never executes repository code. Once installed, start with --o
From the project README.
Add the radar badge to your README — it shows your project was picked up by MCP Radar and links to this page:
[](https://mcp.liqiwa.com/s/impossibleG--impossible-embeddings.html)
A self-hosted OCR server that turns PNG and JPEG images into structured text using local PP-OCRv5 models through HTTP, gRPC and MCP.
impossibleG/impossible-voiceA self-hosted speech server with streaming transcription, speech synthesis, verified local model setup, WebSockets, HTTP, gRPC and MCP APIs.
impossibleG/impossible-inferenceA self-hosted token-completion server for local open models, with chat and completion APIs, SSE streaming, WebSockets, gRPC, MCP and verified setup.
AdamRussak/self-docSelf-hosted documentation RAG pipeline that serves semantic search to LLM agents over the Model Context Protocol.
mahingbun-dev/plugin-hubRust 插件中台:契约治理 · 注册发现 · 声明式编排 · 事件总线 · MCP 工具面 / Out-of-process plugin hub in Rust: contracts, discovery, DAG orchestration, event bus, MCP tool surface
do-md/homekbLocal-first personal Markdown knowledge base with semantic search, AI Q&A, MCP, desktop/web clients, and a self-hostable zero-data-at-rest relay.
The top new MCP servers of the week, every Monday. No spam, unsubscribe anytime.