Documentation
¶
Overview ¶
Package mcp exposes Pando's service layer as MCP tools.
An agent holds a token and is a principal like any other (R-262). No tool bypasses authorization, and every action lands in the audit log under the token's owner. Exec, secret value reads, grant mutation, policy mutation, and user deletion are deliberately not exposed.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Bytes ¶
Bytes is a request body sent as-is rather than encoded as JSON, for the endpoints whose body is a file.
type Server ¶
type Server struct {
// Call performs one API call on the agent's behalf. Injected so the
// transport can be tested without a server, and so this package cannot
// reach anything the API does not expose.
//
// out is a *[]byte, and Call stores the response body in it as sent. Not
// decoded: the body goes to the agent unchanged, and an app's logs are
// plain text rather than JSON.
Call func(ctx context.Context, method, path string, body any, out any) error
// ToolsDisabled are excluded from tools/list.
//
// A courtesy, not a boundary. The enforcement is host policy scoped to
// token principals (O-12), because an agent holding a token can call the
// REST API directly and would simply route around a list kept here. What
// this does is stop the agent wasting a turn on a call it cannot make.
ToolsDisabled map[string]bool
// Version is reported as serverInfo.version. Empty reports "dev".
Version string
// contains filtered or unexported fields
}
Server speaks MCP on a pair of streams.
Click to show internal directories.
Click to hide internal directories.