goose
goose copied to clipboard
STDIO extension logging
Through the MCP protocol, server logs can be surfaced to the client (in this case, goose). Being able to add logs to an MCP server and then see them in Goose can massively accelerate development.
Docs / code
- MCP debugging guide (some high level notes on logging here)
-
PythonSDK server logging -- also look at session.py in
server/
Protocol Flow for Logging
- Capability Negotiation
Client Server
| |
| Initialize Request |
|--------------------------------->|
| (includes ClientCapabilities) |
| |
| Initialize Result |
|<---------------------------------|
| (includes ServerCapabilities |
| with logging: LoggingCapability)|
| |
- Log Level Configuration (Optional)
Client Server | |
| logging/setLevel Request |
|--------------------------------->|
| (sets desired logging level) |
| |
- Log Message Flow
Client Server
| |
| notifications/message |
|<---------------------------------|
| LoggingMessageNotification |
| { |
| level: "info", |
| logger: "component_name", |
| data: "message" |
| } |