β οΈ This is a read-only mirror oflibraries/typescript/packages/inspectorin the mcp-use/mcp-use monorepo.π Please submit issues and pull requests to the monorepo instead.
π This branch mirrors:
canaryπ Source folder:
libraries/typescript/packages/inspector
π MCP Inspector by mcp-use is an open-source, interactive developer tool for testing and debugging MCP servers with support for MCP-UI and OpenAI Apps SDK widgets. It provides a beautiful, intuitive interface for testing tools, exploring resources, managing prompts, and monitoring server connections - all from your browser.
- Online: inspector.mcp-use.com
- Locally: Run
npx @mcp-use/inspector - Repository: github.com/mcp-use/mcp-use
For detailed usage instructions and guides, visit docs.mcp-use.com/inspector
| Package | Description | Version |
|---|---|---|
| mcp-use | Core MCP framework | |
| @mcp-use/cli | Build tool for MCP apps | |
| create-mcp-use-app | Create MCP apps |
| Feature | Description |
|---|---|
| π Auto-Mount | Automatically available at /inspector for all mcp-use servers |
| π Multi-Connection | Connect to and manage multiple MCP servers simultaneously |
| π― Interactive Testing | Test tools with live execution and real-time results |
| π Real-time Status | Monitor connection states, errors, and server health |
| π OAuth Support | Built-in OAuth flow handling with popup authentication |
| πΎ Persistent Sessions | Connections saved to localStorage and auto-reconnect |
| π¨ Beautiful UI | Modern, responsive interface built with React and Tailwind |
| π Tool Explorer | Browse and execute all available tools with schema validation |
| π Resource Browser | View and copy resource URIs with syntax highlighting |
| π¬ Prompt Manager | Test and manage prompts with argument templates |
| π Universal Support | Works with HTTP/SSE and WebSocket connections |
| π¨ Widget Support | Full support for MCP-UI and OpenAI Apps SDK widgets |
| π BYOK Chat | Bring Your Own Key chat interface for testing conversational flows |
| πΎ Saved Tool Calls | Save and replay tool executions for repeated testing |
| β¨οΈ Quick Actions | Cmd + K keyboard shortcuts for rapid navigation |
| π³ Docker Ready | Self-host with a single Docker container for production use |
There are three ways to use the MCP Inspector:
Visit inspector.mcp-use.com - no installation required!
npx @mcp-use/inspectorOpens the inspector in your browser at http://localhost:8080
When you create an MCP server with mcp-use, the inspector is automatically available at /inspector:
import { createMCPServer } from 'mcp-use/server'
const server = createMCPServer('my-server', {
version: '1.0.0',
})
// Add your tools, resources, prompts...
server.listen(3000)
// π Inspector automatically available at http://localhost:3000/inspectorThe main dashboard is your central hub for managing MCP server connections:
- Connected Servers Panel (left): View all your connected servers
- Connect Panel (right): Add new server connections with transport, URL, auth, and headers configuration
- Quick Actions: Access settings and clear sessions from the top bar
To connect to an MCP server:
- Open Connect Panel: Click the Connect panel on the right side of the dashboard
- Configure Transport:
- Select "Streamable HTTP" for SSE connections
- Select "WebSocket" for WS connections
- Configure "stdin/stdio" for local process connections
- Enter Server URL: Input the MCP server endpoint (e.g.,
https://mcp.linear.app/mcp) - Configure Authentication (if needed): Add OAuth credentials or API headers
- Click Connect: Establish the connection
Example URLs:
- Linear:
https://mcp.linear.app/mcp - Local:
http://localhost:3000/mcp
For servers requiring OAuth (like Linear):
- After clicking Connect, you'll see the authorization page
- Click "Approve" to grant access
- The inspector handles the redirect automatically
- Server appears in Connected Servers list with a green indicator
Privacy Note: All authentication tokens and credentials are stored securely in your browser's local storage. Nothing is sent to our servers - everything stays on your device.
Once connected, each server shows:
- Connection status indicator (green = connected)
- Server name and URL
- Available tools count
- Action buttons: Inspect, Disconnect, Remove
Click "Inspect" to open the detailed server view.
After clicking "Inspect" on a connected server, you'll see four main tabs:
The Tools tab displays all available tools from the MCP server.
Features:
- Browse all available tools with their names and descriptions
- Select a tool to view its detailed schema
- Click "Execute" to test the tool
- Enter JSON parameters in the input panel
- View real-time results with syntax highlighting
- Support for MCP-UI and OpenAI Apps SDK widgets
Example: When connected to Linear MCP server, you'll see 23+ tools for managing issues, projects, and teams.
Browse available resources from the MCP server:
- View resource descriptions and metadata
- Copy resource URIs for use in your applications
- Check MIME types and resource properties
- Preview resource content
Note: Some servers (like Linear) may not expose resources, in which case you'll see "No resources available".
Test and manage pre-configured prompts:
- View all available prompts with descriptions
- Select a prompt to see its schema
- Fill in required arguments in the form
- Click "Render" to execute the prompt
- Copy the rendered output for use
Note: Not all servers provide prompts. If none are available, you'll see "No prompts available".
The Chat tab provides an interactive interface to test the MCP server with an LLM using BYOK (Bring Your Own Key).
Privacy: Your API key is stored locally in your browser and never sent to our servers. All requests are made directly from your device to your LLM provider.
Setup:
- Click "Configure API Key" to open the configuration modal
- Select your Provider (OpenAI, Anthropic, etc.)
- Choose the Model (gpt-4o, claude-3-5-sonnet, etc.)
- Enter your API Key (stored locally in browser)
- Click "Save Configuration"
Using Chat:
- Type natural language queries to test the MCP server
- View tool calls in real-time with visual indicators
- See detailed JSON output for arguments and results
- Watch the assistant's response based on tool results
- Track exactly how the MCP server processes requests
| Shortcut | Action |
|---|---|
Cmd/Ctrl + K |
Quick search and navigation |
Esc |
Close modals and overlays |
Quick Search (Cmd/Ctrl + K) allows you to:
- Quickly connect to a new server
- Access documentation and tutorials
- Jump to recently used servers
- Search and execute tools directly
- Navigate to different tabs
The inspector automatically saves your configurations:
- Server connections persist across page reloads
- Credentials are stored securely in your browser's localStorage
- Session preferences are maintained automatically
- Clear all sessions anytime with the "Clear All" button
Your data never leaves your browser - everything is stored locally for privacy and security.
Deploy the MCP Inspector to your own infrastructure with a single Docker container. Perfect for enterprise environments, air-gapped networks, or when you need full control over your debugging environment.
The official Docker image is available on Docker Hub.
Quick Start:
docker run -d -p 8080:8080 --name mcp-inspector mcpuse/inspector:latestThen visit http://localhost:8080 to access your self-hosted inspector.
Using Docker Run:
docker run -d \
--name mcp-inspector \
-p 8080:8080 \
-e NODE_ENV=production \
mcpuse/inspector:latestUsing Docker Compose:
version: '3.8'
services:
mcp-inspector:
image: mcpuse/inspector:latest
ports:
- "8080:8080"
environment:
- NODE_ENV=production
- PORT=8080
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080"]
interval: 30s
timeout: 10s
retries: 3All configuration is optional. The inspector works out of the box with sensible defaults.
| Variable | Default | Description |
|---|---|---|
NODE_ENV |
production | Node.js environment |
PORT |
8080 | Port to run the inspector on |
HOST |
0.0.0.0 | Host to bind to |
Deploy instantly to Railway with automatic HTTPS and custom domains:
For more deployment options and support, visit the self-hosting documentation.
The MCP Inspector collects anonymized usage data to help us improve the tool.
We collect:
- Usage events: When you connect to servers, execute tools, read resources, or call prompts
- Anonymous user ID: A randomly generated UUID stored in your browser's localStorage
- Technical information: Package version, browser type, and connection types
- Performance data: Tool execution duration and success/failure rates
We DO NOT collect:
- Personal information (names, emails, etc.)
- Actual tool arguments or results
- Server credentials or API keys
- Resource content or data
You can disable telemetry in several ways:
Option 1: Environment Variable
# Set before starting the inspector
export MCP_USE_ANONYMIZED_TELEMETRY=falseOption 2: localStorage (Browser)
// In browser console
localStorage.setItem('mcp_inspector_telemetry_disabled', 'true')Option 3: Package-level
// Add to your package.json
{
"scarfSettings": {
"enabled": false
}
}We use:
- PostHog: For product analytics and feature usage tracking
- Scarf: For package download analytics and company insights
We welcome contributions!
See our contributing guide for details.
- Inspector Documentation - Complete usage guide and tutorials
- Self-Hosting Guide - Deploy your own instance
- mcp-use Documentation - Full framework documentation
- Model Context Protocol - Official MCP specification
- GitHub Repository - Source code and examples
MIT Β© mcp-use
