End-to-end user flow
Component overview
MCP client
The MCP client is the entry point of the system. It establishes a WebSocket connection, sends code execution requests, and receives results and approval decisions.MCP server
The MCP server orchestrates communication between components. It manages WebSocket connections, registers tools, handles security tokens, and coordinates code evaluation and execution workflows.Approver client
The approver client enables human-in-the-loop security. It receives approval requests, allows interactive review of code execution, and sends approval or rejection decisions.Code execution environment
Code execution occurs in an isolated GitHub Codespace on your own private repo set up when getting started with Keyboard. It securely evaluates and runs interpolated code, then returns the result.Workflow steps
- Initiation: MCP connects via WebSocket
- Planning: User creates a planning token
- Evaluation: Code is security evaluated
- Approval: Approver reviews and decides
- Execution: Code runs in codespace
- Review: User reviews and decides to send back response
- Response: Result returned to MCP Client