Minimum viable scope
- Informative
- Draft 1.0
- Updated
- View as Markdown
12.1 First version
The first version does not have to implement every multimodal feature, model download or real-time voice. It forms a usable closed loop once it provides:
- Service discovery through
/.well-known/lmsp.json. - Optional LAN advertisement of
_lmsp._tcp.local.. GET /lmsp/v1/models.POST /lmsp/v1/responses, both synchronous and as an SSE stream.- Asynchronous tasks: create, query and cancel, with SQLite persistence.
- Resumption of dropped streams with
Last-Event-IDorafter. - Bearer tokens, local pairing, and
OriginandHostprotection. - The OpenAI-compatible
/v1/modelsand/v1/chat/completionsendpoints. - An OpenAPI 3.2 contract file, and cross-language conformance tests.
- At least one real backend, and a check that tasks recover correctly after a service restart.
The point of this design: LMSP provides the full set of capabilities, the OpenAI interface provides ready-made compatibility, mDNS and the service description provide automatic discovery, and the SQLite task model provides local persistence.
12.2 What can wait
Anything the list above does not mention can follow in later releases. This includes the optional endpoints (stored responses, and loading and unloading models), the OpenAI /v1/responses and /v1/embeddings endpoints, the Ollama-compatible API, and every content type beyond text.
This scope is a path to a usable first release, not a conformance profile. A service that claims LMSP 1.0 still implements every required endpoint in page 4 and the required behavior described in the other pages.