Skip to content

Native MCP servers

Orionis declares tools, resources and prompts as Python classes and compiles their contract once for HTTP, STDIO and tests. The supported MCP protocol is 2026-07-28, the only value in SUPPORTED_VERSIONS; check compatibility with your intended client.

MCP (Model Context Protocol) lets compatible clients discover and call your application’s tools, read declared resources and obtain reusable prompts. Orionis provides the server side; your business services still perform the work and enforce access. Start with one read-only tool, verify its result locally, then choose HTTP for a remote client or STDIO for a local process integration.

  1. Your first server and typed tools.
  2. Resources, URI templates and prompts.
  3. Content, serialization and metadata.
  4. HTTP, STDIO and configuration.
  5. Progress, continuation, subscriptions and extensions.

Requires Python 3.14+, schemas/msgspec for typed contracts and a booted application for transport registration. Examples using compile_server and McpTestClient(Container(), ServerClass) work without a server or external data. RFC 6570 expansion uses the declared uritemplate dependency; publishing resources does not implicitly grant filesystem access.

Each call has independent context. Descriptive annotations never replace authentication/authorization. Web endpoints use the HTTP kernel and handlers use the container.