feat: add MCP resources for sessions, screenshots, and recordings
- Dominant language
- TypeScript
- Stars
- 37
- Forks
- 5
- Avg merge
- 3d 23h
- Merged PRs (30d)
- 1
Description
## Summary
Add MCP resources to allow LLMs to browse sessions and their outputs without needing filesystem access.
## Proposed Resources
### Sessions
| Resource URI | Description |
|--------------|-------------|
| `sessions://list` | List all active shell sessions |
| `session://{id}/info` | Session details (cols, rows, command, recording status) |
| `session://{id}/buffer` | Current terminal buffer content |
| `session://{id}/screenshots` | List screenshots taken in this session |
| `session://{id}/recordings` | List recordings from this session |
### Example Usage
```
LLM: "What sessions do I have open?"
→ Read resource: sessions://list
← [{ id: "shell-session-a1b2c3", command: "bash", cols: 80, rows: 24 }]
LLM: "What screenshots did I take?"
→ Read resource: session://shell-session-a1b2c3/screenshots
← [{ name: "step1.png", download_url: "...", created: "..." }]
```
## Benefits
- LLMs can discover what they've captured without filesystem access
- Works with MCP clients that don't have Bash/file read tools (Claude Desktop, ChatGPT)
- Complements #27 (inline images) - resources list what's available, inline mode returns content
## Implementation Notes
- Resources are read-only views of existing session state
- Screenshot/recording lists already tracked internally
- Could optionally return inline base64 for image resources (ties into #27)
## Related Issues
- #27 - Add inline image response mode for broader MCP client compatibility
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.