Entrypoint format
LSP Server entrypoints must be JSON (.json) files. JSON is the only v0.1 baseline format for LSP server configuration in Agent Volumes.
The canonical discovery filename is .lsp.json at the volume root. Use this path to ensure consistent discovery across runtimes and tooling.
The portable validation minimum requires:
- The entrypoint file exists and is a regular file.
- The file is valid JSON.
- The file parses to a JSON object (not an array or primitive).
Declaring an LSP server in volume.toml
Add a [[components]] entry with type = "lsp-server" and point entrypoint to your .lsp.json configuration file.
Execution model
An LSP server runs as a long-running process. The two primary transport mechanisms are:
The specific socket transport type and address are host-runtime configuration details. How the runtime launches the LSP server, manages its lifecycle, and applies local policy are load-time decisions outside the portable validation scope.
Protocol compatibility declaration
Declare which LSP protocol version your server targets using the[[protocols]] table:
Agent Volumes v0.1 does not define one universal protocol version comparison grammar.
Protocol-specific version semantics remain advisory in the core spec. Protocol profiles may define
stronger comparison semantics in the future.
Runtime compatibility
To signal which runtimes your LSP server supports, add[[runtimes]] entries:
Combining LSP and MCP in one volume
You can export both an LSP server and an MCP server from the same volume. This is a common pattern for research or language-specific toolkits:Validation requirements
An LSP server entrypoint fails portable validation if any of these conditions are true:- The file does not exist or is not a regular file.
- The file is not valid JSON.
- The parsed JSON is not an object (is an array, string, number, boolean, or null).