Skip to content

Definition

What is MSP, the Muse Code Session Protocol?

The Muse Code Session Protocol, MSP, is the JSON-RPC interface a Muse Code host exposes over stdio when you run muse serve. It carries sessions, turns, tool calls, approvals and usage as typed events, so a client can render structure rather than parsing terminal text. Meta ships an MIT licensed SDK for it.

Last updated · Markdown version

What travels over it

  • Sessions, keyed to a working directory.
  • Turns, with the model and reasoning effort used.
  • Tool calls, with the command and its output.
  • Approval requests, with the mode that produced them.
  • Usage, which is where cost and plan figures come from.

Why protocol beats scraping

A wrapper that parses TUI output breaks whenever the TUI changes and can never see anything the TUI does not print. A protocol client receives typed events, so approvals are objects you can queue, diffs are structured, and usage is a number rather than a guess.

Who can use it

Anyone. The SDK is MIT licensed, which makes client applications the intended path rather than a tolerated hack. That is the basis for saying Helicon is built the supported way even though it is unofficial.

Source: GitHub: meta-models/muse-code-sdk (SDK and protocol docs, MIT)

Frequently asked questions

Is MSP the same as the Agent Client Protocol?

No. ACP is a general protocol several editors use for any agent. MSP is Muse Code's own interface, so it carries Muse Code specific things like its exact approval modes and usage reporting.

Do I need to know about MSP to use a GUI?

No. It matters only because a protocol native client behaves better than one scraping a terminal.

Is the SDK open source?

Yes, MIT licensed.

Same Muse Code. Same subscription. Better interface. 

Free and MIT licensed. Windows installer, Apple Silicon, Intel and universal macOS DMGs, and a web build against a daemon you run.