# `MCPKit.Plug`
[🔗](https://github.com/mcostasilva/mcp_kit/blob/v0.2.4/lib/mcp_kit/plug.ex#L1)

Plug entrypoint for the MCP Streamable HTTP transport.

The plug is configured by `MCPKit.Router` and expects:
- a host definition module implementing `MCPKit.Definition`
- a persistent session store returned by that definition
- a compile-time registry of declared tools for the mounted scope

Current runtime scope is intentionally narrow:
- `initialize`
- `GET` session stream over SSE
- `notifications/initialized`
- `ping`
- `completion/complete`
- `prompts/list`
- `prompts/get`
- `resources/list`
- `resources/read`
- `resources/templates/list`
- `tools/list`
- `tools/call`
- `notifications/cancelled`
- `DELETE` session termination

The plug now also uses request-time policy checks for tools, prompts, and
resources via the host's configured `MCPKit.Policy` module.

# `call`

# `init`

---

*Consult [api-reference.md](api-reference.md) for complete listing*
