3 releases (1 stable)
| 1.0.0 | Feb 27, 2026 |
|---|---|
| 0.1.1 | Nov 24, 2025 |
| 0.1.0 | Nov 22, 2025 |
#387 in Debugging
390KB
3.5K
SLoC
mcpeek - MCP Server Inspector
A Rust CLI tool for inspecting and interacting with Model Context Protocol (MCP) servers.

Features
-
Interactive Terminal User Interface:
- Real-time exploration of MCP servers
- Tab-based navigation between different capabilities
- Live log viewer for server output
-
Full MCP Support:
- List and inspect tools
- Interactive tool execution with form-based parameter input
- Browse prompts and their arguments
- View available resources
- Display server capabilities and information
- Execute tool calls with custom parameters
Installation
cargo build --release
The binary will be available at target/release/mcpeek.
Usage
Launch the interactive terminal interface to explore an MCP server:
mcpeek <server-command> [server-args...]
Examples:
# Connect to a Node.js MCP server
mcpeek node /path/to/server.js
# Connect to a Python MCP server
mcpeek python -m my_mcp_server
# With uvx
mcpeek uvx mcp-server-git
TUI Controls:
Tab/←/→: Switch between tabs (Tools, Prompts, Resources, Server Info, Logs)↑/↓: Navigate items in lists (or scroll logs in Logs tab)Enter: View detailed information about selected itemC: Call/execute the selected tool (in Tools tab)E: Jump to end of logs (in Logs tab)R: Refresh current tabEsc: Close detail view or cancel tool call inputQ: Quit application
Tool Calling (in Tools tab):
When you press C on a selected tool:
- An input form appears showing all tool parameters
- Navigate between fields using
Tab/Shift+Tab - Type values directly into each field
- Required fields are marked as "(required)"
- Press
Enterto execute the tool call - Press
Escto cancel - Results are displayed in the detail view
Tabs:
- Tools: Browse and inspect available tools, execute tool calls with interactive parameter input
- Prompts: View prompts and their arguments
- Resources: List available resources
- Server Info: Display server capabilities and version information
- Logs: View server stderr output in real-time (automatically captures server logs)
Debug Mode
Enable debug logging to stderr:
mcpeek --debug node server.js
Architecture
src/
├── main.rs # CLI entry point and TUI event loop
├── mcp/
│ ├── mod.rs # Module exports
│ ├── client.rs # MCP client with JSON-RPC over stdio
│ └── protocol.rs # MCP protocol types and messages
└── tui/
├── mod.rs # TUI module exports
├── app.rs # Application state management
└── ui.rs # UI rendering logic
Key Components
MCP Client (mcp/client.rs):
- Manages subprocess lifecycle
- Handles JSON-RPC communication over stdio
- Implements async message passing with tokio
- Provides high-level methods for MCP operations
Protocol Types (mcp/protocol.rs):
- Comprehensive type definitions for MCP protocol
- JSON serialization/deserialization with serde
- Supports initialize, tools, prompts, and resources capabilities
TUI (tui/):
- Built with ratatui for rich terminal interfaces
- Tab-based navigation between different MCP capabilities
- Detail views for in-depth item inspection
- Real-time error handling and loading states
- Live log viewer that captures server stderr output
MCP Protocol Support
This tool implements the MCP protocol version 2024-11-05 and supports:
- ✅ Server initialization and capability negotiation
- ✅ Tools (list, call)
- ✅ Prompts (list, get)
- ✅ Resources (list, read)
- ✅ Server information display
Requirements
- Rust 2021 edition or later
- An MCP-compatible server to connect to
Development
Run in development mode:
# Run the TUI
cargo run -- <server-command> [args...]
# With debug logging
cargo run -- --debug <server-command> [args...]
License
MIT License - see LICENSE for details.
Contributing
Contributions are welcome! Areas for enhancement:
- Support for additional MCP protocol features
- Enhanced error recovery
- Resource subscription support
- Sampling capabilities
- Configuration file support
- Advanced input types (arrays, nested objects) in tool call forms
Made with ❤️. Fueled by ☕️ and 🤖.
Dependencies
~20–30MB
~470K SLoC