@mcp-use/inspector 0.4.5 → 0.4.6-canary.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +217 -370
- package/dist/client/assets/{api_chain-B8D--Ua0.js → api_chain-De1VDIaM.js} +1 -1
- package/dist/client/assets/{combine_docs_chain-FO5037il.js → combine_docs_chain-Db92iV2E.js} +1 -1
- package/dist/client/assets/console-DeNmPne7.js +44 -0
- package/dist/client/assets/{few_shot-Cmr7sUxy.js → few_shot-Be1zUSTy.js} +1 -1
- package/dist/client/assets/{index-Bb-yz97L.js → index-BWXEFHmV.js} +4 -4
- package/dist/client/assets/{index-DnpfS2v3.js → index-B_VPiXJE.js} +6 -6
- package/dist/client/assets/index-Bj5uzZu0.js +4 -0
- package/dist/client/assets/{index-Q8RHaCtb.js → index-Cf1Rrh7x.js} +5 -5
- package/dist/client/assets/{index-abi3fSjm.js → index-D4tqsbnr.js} +1 -1
- package/dist/client/assets/index-DqWzXBGz.js +1734 -0
- package/dist/client/assets/{json-FsyFj1jU.js → json-YHQJGpcc.js} +2 -2
- package/dist/client/assets/{langfuse-YA2S23SM-vjWT6Uov.js → langfuse-YA2S23SM-mwQV30XO.js} +6 -6
- package/dist/client/assets/llm_chain-D5lhGvCx.js +1 -0
- package/dist/client/assets/module-DL3wthn_.js +4 -0
- package/dist/client/assets/{sequential_chain-Doq4mZTf.js → sequential_chain-BR1r8yOd.js} +1 -1
- package/dist/client/assets/types-B67y5qhD.js +38 -0
- package/dist/client/assets/{vector_db_qa-Bh63dnIq.js → vector_db_qa-DfL44ZUF.js} +2 -2
- package/dist/client/assets/{zodToJsonSchema-BZt2EiSR.js → zodToJsonSchema-CbvDj401.js} +1 -1
- package/dist/client/index.html +2 -2
- package/package.json +3 -2
- package/dist/client/assets/index-CKyFQTr6.js +0 -4
- package/dist/client/assets/index-e2-Jr4C0.js +0 -1734
- package/dist/client/assets/llm_chain-BOhId5CI.js +0 -1
- package/dist/client/assets/types-CI0bOhiR.js +0 -81
package/README.md
CHANGED
|
@@ -21,12 +21,29 @@
|
|
|
21
21
|
<img src="https://dcbadge.limes.pink/api/server/XkNkSkMz3V?style=flat" /></a>
|
|
22
22
|
</p>
|
|
23
23
|
|
|
24
|
-
🔍 **MCP Inspector** is
|
|
24
|
+
🔍 **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.
|
|
25
|
+
|
|
26
|
+
## 🚀 Try it:
|
|
27
|
+
|
|
28
|
+
- **Online**: [inspector.mcp-use.com](https://inspector.mcp-use.com/inspector)
|
|
29
|
+
- **Locally**: Run `npx @mcp-use/inspector`
|
|
30
|
+
- **Repository**: [github.com/mcp-use/mcp-use](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/inspector)
|
|
31
|
+
|
|
32
|
+
## 🎥 Demo
|
|
33
|
+
|
|
34
|
+
[](https://www.youtube.com/watch?v=DvsNSABz1GM)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
### 📖 Documentation
|
|
38
|
+
|
|
39
|
+
For detailed usage instructions and guides, visit [docs.mcp-use.com/inspector](https://docs.mcp-use.com/inspector)
|
|
40
|
+
|
|
41
|
+
---
|
|
25
42
|
|
|
26
43
|
## 📦 Related Packages
|
|
27
44
|
|
|
28
|
-
| Package
|
|
29
|
-
|
|
|
45
|
+
| Package | Description | Version |
|
|
46
|
+
| ---------------------------------------------------------------------------------------------- | ----------------------- | --------------------------------------------------------------------------------------------------------------- |
|
|
30
47
|
| [mcp-use](https://github.com/mcp-use/mcp-use/tree/main/packages/mcp-use) | Core MCP framework | [](https://www.npmjs.com/package/mcp-use) |
|
|
31
48
|
| [@mcp-use/cli](https://github.com/mcp-use/mcp-use/tree/main/packages/cli) | Build tool for MCP apps | [](https://www.npmjs.com/package/@mcp-use/cli) |
|
|
32
49
|
| [create-mcp-use-app](https://github.com/mcp-use/mcp-use/tree/main/packages/create-mcp-use-app) | Create MCP apps | [](https://www.npmjs.com/package/create-mcp-use-app) |
|
|
@@ -48,495 +65,325 @@
|
|
|
48
65
|
| **📁 Resource Browser** | View and copy resource URIs with syntax highlighting |
|
|
49
66
|
| **💬 Prompt Manager** | Test and manage prompts with argument templates |
|
|
50
67
|
| **🌐 Universal Support** | Works with HTTP/SSE and WebSocket connections |
|
|
68
|
+
| **🎨 Widget Support** | Full support for MCP-UI and OpenAI Apps SDK widgets |
|
|
69
|
+
| **🔑 BYOK Chat** | Bring Your Own Key chat interface for testing conversational flows |
|
|
70
|
+
| **💾 Saved Tool Calls** | Save and replay tool executions for repeated testing |
|
|
71
|
+
| **⌨️ Quick Actions** | Cmd + K keyboard shortcuts for rapid navigation |
|
|
72
|
+
| **🐳 Docker Ready** | Self-host with a single Docker container for production use |
|
|
51
73
|
|
|
52
74
|
---
|
|
53
75
|
|
|
54
76
|
## 🚀 Quick Start
|
|
55
77
|
|
|
56
|
-
###
|
|
57
|
-
|
|
58
|
-
When you create an MCP server with `mcp-use`, the inspector is automatically available:
|
|
59
|
-
|
|
60
|
-
```typescript
|
|
61
|
-
import { createMCPServer } from 'mcp-use/server'
|
|
62
|
-
|
|
63
|
-
const server = createMCPServer('my-server', {
|
|
64
|
-
version: '1.0.0',
|
|
65
|
-
})
|
|
66
|
-
|
|
67
|
-
// Add your tools, resources, prompts...
|
|
68
|
-
|
|
69
|
-
server.listen(3000)
|
|
70
|
-
// 🎉 Inspector automatically available at http://localhost:3000/inspector
|
|
71
|
-
// 🚀 Auto-connects to your local server at http://localhost:3000/mcp
|
|
72
|
-
```
|
|
78
|
+
### Access the Inspector
|
|
73
79
|
|
|
74
|
-
|
|
80
|
+
There are three ways to use the MCP Inspector:
|
|
75
81
|
|
|
76
|
-
|
|
77
|
-
- Auto-connects to your local MCP server
|
|
78
|
-
- Provides instant debugging capabilities
|
|
79
|
-
- Opens automatically in dev mode with `@mcp-use/cli`
|
|
82
|
+
#### 1. Online Version (Recommended for Testing)
|
|
80
83
|
|
|
81
|
-
|
|
84
|
+
Visit [inspector.mcp-use.com](https://inspector.mcp-use.com/inspector) - no installation required!
|
|
82
85
|
|
|
83
|
-
|
|
86
|
+
#### 2. Run Locally
|
|
84
87
|
|
|
85
88
|
```bash
|
|
86
|
-
|
|
87
|
-
npx mcp-inspect --url https://mcp.linear.app/sse
|
|
88
|
-
|
|
89
|
-
# Custom port
|
|
90
|
-
npx mcp-inspect --url http://localhost:3000/mcp --port 8080
|
|
91
|
-
|
|
92
|
-
# Open inspector without auto-connect
|
|
93
|
-
npx mcp-inspect
|
|
89
|
+
npx @mcp-use/inspector
|
|
94
90
|
```
|
|
95
91
|
|
|
96
|
-
|
|
92
|
+
Opens the inspector in your browser at `http://localhost:8080`
|
|
97
93
|
|
|
98
|
-
|
|
94
|
+
#### 3. Auto-mounted with mcp-use Servers
|
|
95
|
+
|
|
96
|
+
When you create an MCP server with `mcp-use`, the inspector is automatically available at `/inspector`:
|
|
99
97
|
|
|
100
98
|
```typescript
|
|
101
|
-
import {
|
|
102
|
-
import express from 'express'
|
|
99
|
+
import { createMCPServer } from 'mcp-use/server'
|
|
103
100
|
|
|
104
|
-
const
|
|
101
|
+
const server = createMCPServer('my-server', {
|
|
102
|
+
version: '1.0.0',
|
|
103
|
+
})
|
|
105
104
|
|
|
106
|
-
//
|
|
107
|
-
mountInspector(app, '/debug/inspector')
|
|
105
|
+
// Add your tools, resources, prompts...
|
|
108
106
|
|
|
109
|
-
|
|
110
|
-
// Inspector available at http://localhost:3000/
|
|
107
|
+
server.listen(3000)
|
|
108
|
+
// 🎉 Inspector automatically available at http://localhost:3000/inspector
|
|
111
109
|
```
|
|
112
110
|
|
|
113
111
|
---
|
|
114
112
|
|
|
115
113
|
## 📖 Usage Guide
|
|
116
114
|
|
|
117
|
-
### Dashboard
|
|
115
|
+
### Dashboard
|
|
118
116
|
|
|
119
|
-
The main dashboard
|
|
117
|
+
The main dashboard is your central hub for managing MCP server connections:
|
|
120
118
|
|
|
121
|
-
- **
|
|
122
|
-
- **
|
|
123
|
-
- **Quick Actions**:
|
|
119
|
+
- **Connected Servers Panel** (left): View all your connected servers
|
|
120
|
+
- **Connect Panel** (right): Add new server connections with transport, URL, auth, and headers configuration
|
|
121
|
+
- **Quick Actions**: Access settings and clear sessions from the top bar
|
|
124
122
|
|
|
125
|
-
### Adding
|
|
123
|
+
### Adding an MCP Server
|
|
126
124
|
|
|
127
|
-
|
|
125
|
+
To connect to an MCP server:
|
|
128
126
|
|
|
129
|
-
|
|
130
|
-
|
|
127
|
+
1. **Open Connect Panel**: Click the Connect panel on the right side of the dashboard
|
|
128
|
+
2. **Configure Transport**:
|
|
129
|
+
- Select "Streamable HTTP" for SSE connections
|
|
130
|
+
- Select "WebSocket" for WS connections
|
|
131
|
+
- Configure "stdin/stdio" for local process connections
|
|
132
|
+
3. **Enter Server URL**: Input the MCP server endpoint (e.g., `https://mcp.linear.app/mcp`)
|
|
133
|
+
4. **Configure Authentication** (if needed): Add OAuth credentials or API headers
|
|
134
|
+
5. **Click Connect**: Establish the connection
|
|
131
135
|
|
|
132
136
|
Example URLs:
|
|
133
|
-
|
|
137
|
+
- Linear: `https://mcp.linear.app/mcp`
|
|
134
138
|
- Local: `http://localhost:3000/mcp`
|
|
135
|
-
- Linear: `https://mcp.linear.app/sse`
|
|
136
|
-
- WebSocket: `ws://localhost:8080`
|
|
137
|
-
|
|
138
|
-
### Connection States
|
|
139
|
-
|
|
140
|
-
The inspector displays real-time connection states:
|
|
141
|
-
|
|
142
|
-
| State | Description | Action |
|
|
143
|
-
| --------------------- | -------------------------- | ------------------ |
|
|
144
|
-
| 🔍 **discovering** | Finding the server | Wait |
|
|
145
|
-
| 🔄 **connecting** | Establishing connection | Wait |
|
|
146
|
-
| 🔐 **authenticating** | OAuth flow in progress | Complete auth |
|
|
147
|
-
| 📥 **loading** | Loading tools & resources | Wait |
|
|
148
|
-
| ✅ **ready** | Connected and operational | Use tools |
|
|
149
|
-
| ❌ **failed** | Connection failed | Retry |
|
|
150
|
-
| ⏳ **pending_auth** | Waiting for authentication | Click Authenticate |
|
|
151
|
-
|
|
152
|
-
### Testing Tools
|
|
153
|
-
|
|
154
|
-
1. Click **"Inspect"** on a connected server
|
|
155
|
-
2. Navigate to the **Tools** tab
|
|
156
|
-
3. Select a tool to view its schema
|
|
157
|
-
4. Click **"Execute"** to open the test panel
|
|
158
|
-
5. Enter JSON parameters
|
|
159
|
-
6. Click **"Run"** to execute
|
|
160
|
-
7. View results in real-time
|
|
161
|
-
|
|
162
|
-
Example tool execution:
|
|
163
|
-
|
|
164
|
-
```json
|
|
165
|
-
// Input for 'search_database' tool
|
|
166
|
-
{
|
|
167
|
-
"query": "user analytics",
|
|
168
|
-
"limit": 10,
|
|
169
|
-
"sortBy": "date"
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
// Result
|
|
173
|
-
{
|
|
174
|
-
"results": [...],
|
|
175
|
-
"total": 42,
|
|
176
|
-
"executionTime": "23ms"
|
|
177
|
-
}
|
|
178
|
-
```
|
|
179
139
|
|
|
180
140
|
### OAuth Authentication
|
|
181
141
|
|
|
182
142
|
For servers requiring OAuth (like Linear):
|
|
183
143
|
|
|
184
|
-
1.
|
|
185
|
-
2. Click **"
|
|
186
|
-
3.
|
|
187
|
-
4.
|
|
188
|
-
|
|
189
|
-
If popup is blocked:
|
|
190
|
-
|
|
191
|
-
- Click "open auth page" link
|
|
192
|
-
- Complete authentication manually
|
|
193
|
-
- Return to inspector
|
|
194
|
-
|
|
195
|
-
### Resource Management
|
|
196
|
-
|
|
197
|
-
Browse available resources:
|
|
198
|
-
|
|
199
|
-
- View resource descriptions
|
|
200
|
-
- Copy resource URIs
|
|
201
|
-
- Check MIME types
|
|
202
|
-
- Preview resource metadata
|
|
144
|
+
1. After clicking **Connect**, you'll see the authorization page
|
|
145
|
+
2. Click **"Approve"** to grant access
|
|
146
|
+
3. The inspector handles the redirect automatically
|
|
147
|
+
4. Server appears in Connected Servers list with a green indicator
|
|
203
148
|
|
|
204
|
-
|
|
149
|
+
> **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.
|
|
205
150
|
|
|
206
|
-
|
|
151
|
+
### Connected Servers
|
|
207
152
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
3. Fill in required arguments
|
|
211
|
-
4. Click **"Render"** to see output
|
|
212
|
-
5. Copy rendered prompt for use
|
|
213
|
-
|
|
214
|
-
---
|
|
215
|
-
|
|
216
|
-
## 🎨 UI Components
|
|
217
|
-
|
|
218
|
-
### Server Card
|
|
219
|
-
|
|
220
|
-
Each server displays:
|
|
221
|
-
|
|
222
|
-
- Connection status indicator
|
|
153
|
+
Once connected, each server shows:
|
|
154
|
+
- Connection status indicator (green = connected)
|
|
223
155
|
- Server name and URL
|
|
224
156
|
- Available tools count
|
|
225
|
-
-
|
|
226
|
-
- Action buttons (Connect/Disconnect/Inspect/Remove)
|
|
227
|
-
|
|
228
|
-
### Tool Explorer
|
|
157
|
+
- Action buttons: **Inspect**, **Disconnect**, **Remove**
|
|
229
158
|
|
|
230
|
-
|
|
159
|
+
Click **"Inspect"** to open the detailed server view.
|
|
231
160
|
|
|
232
|
-
|
|
233
|
-
- Input schema with types
|
|
234
|
-
- Output schema
|
|
235
|
-
- Execution panel
|
|
236
|
-
- Response viewer with syntax highlighting
|
|
161
|
+
---
|
|
237
162
|
|
|
238
|
-
|
|
163
|
+
## 🔍 Server Detail View
|
|
239
164
|
|
|
240
|
-
|
|
165
|
+
After clicking **"Inspect"** on a connected server, you'll see four main tabs:
|
|
241
166
|
|
|
242
|
-
|
|
243
|
-
- View tool calls in real-time
|
|
244
|
-
- See formatted responses
|
|
245
|
-
- Copy conversation history
|
|
167
|
+
### Tools Tab
|
|
246
168
|
|
|
247
|
-
|
|
169
|
+
The Tools tab displays all available tools from the MCP server.
|
|
248
170
|
|
|
249
|
-
|
|
171
|
+
**Features:**
|
|
172
|
+
- Browse all available tools with their names and descriptions
|
|
173
|
+
- Select a tool to view its detailed schema
|
|
174
|
+
- Click **"Execute"** to test the tool
|
|
175
|
+
- Enter JSON parameters in the input panel
|
|
176
|
+
- View real-time results with syntax highlighting
|
|
177
|
+
- Support for MCP-UI and OpenAI Apps SDK widgets
|
|
250
178
|
|
|
251
|
-
|
|
179
|
+
**Example**: When connected to Linear MCP server, you'll see 23+ tools for managing issues, projects, and teams.
|
|
252
180
|
|
|
253
|
-
|
|
181
|
+
### Resources Tab
|
|
254
182
|
|
|
255
|
-
|
|
256
|
-
// Select multiple servers
|
|
257
|
-
// Click "Bulk Actions"
|
|
258
|
-
// Choose: Connect All, Disconnect All, Remove Selected
|
|
259
|
-
```
|
|
183
|
+
Browse available resources from the MCP server:
|
|
260
184
|
|
|
261
|
-
|
|
185
|
+
- View resource descriptions and metadata
|
|
186
|
+
- Copy resource URIs for use in your applications
|
|
187
|
+
- Check MIME types and resource properties
|
|
188
|
+
- Preview resource content
|
|
262
189
|
|
|
263
|
-
|
|
190
|
+
> **Note**: Some servers (like Linear) may not expose resources, in which case you'll see "No resources available".
|
|
264
191
|
|
|
265
|
-
|
|
266
|
-
- Maintains connection preferences
|
|
267
|
-
- Restores on page reload
|
|
268
|
-
- Clear with "Clear All Sessions"
|
|
192
|
+
### Prompts Tab
|
|
269
193
|
|
|
270
|
-
|
|
194
|
+
Test and manage pre-configured prompts:
|
|
271
195
|
|
|
272
|
-
|
|
196
|
+
- View all available prompts with descriptions
|
|
197
|
+
- Select a prompt to see its schema
|
|
198
|
+
- Fill in required arguments in the form
|
|
199
|
+
- Click **"Render"** to execute the prompt
|
|
200
|
+
- Copy the rendered output for use
|
|
273
201
|
|
|
274
|
-
|
|
275
|
-
- Dark mode for reduced eye strain
|
|
276
|
-
- Automatic switching based on OS settings
|
|
202
|
+
> **Note**: Not all servers provide prompts. If none are available, you'll see "No prompts available".
|
|
277
203
|
|
|
278
|
-
###
|
|
204
|
+
### Chat Tab
|
|
279
205
|
|
|
280
|
-
|
|
281
|
-
| -------------- | ----------------------- |
|
|
282
|
-
| `Cmd/Ctrl + K` | Quick server search |
|
|
283
|
-
| `Cmd/Ctrl + N` | Add new server |
|
|
284
|
-
| `Cmd/Ctrl + R` | Refresh all connections |
|
|
285
|
-
| `Esc` | Close modals |
|
|
206
|
+
The Chat tab provides an interactive interface to test the MCP server with an LLM using **BYOK (Bring Your Own Key)**.
|
|
286
207
|
|
|
287
|
-
|
|
208
|
+
> **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.
|
|
288
209
|
|
|
289
|
-
|
|
210
|
+
**Setup:**
|
|
290
211
|
|
|
291
|
-
|
|
212
|
+
1. Click **"Configure API Key"** to open the configuration modal
|
|
213
|
+
2. Select your **Provider** (OpenAI, Anthropic, etc.)
|
|
214
|
+
3. Choose the **Model** (gpt-4o, claude-3-5-sonnet, etc.)
|
|
215
|
+
4. Enter your **API Key** (stored locally in browser)
|
|
216
|
+
5. Click **"Save Configuration"**
|
|
292
217
|
|
|
293
|
-
|
|
294
|
-
// Your MCP server
|
|
295
|
-
import { createMCPServer } from 'mcp-use/server'
|
|
218
|
+
**Using Chat:**
|
|
296
219
|
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
server.tool('debug_tool', {
|
|
303
|
-
description: 'Debug tool for testing',
|
|
304
|
-
parameters: z.object({
|
|
305
|
-
message: z.string(),
|
|
306
|
-
}),
|
|
307
|
-
execute: async ({ message }) => {
|
|
308
|
-
console.log('Debug:', message)
|
|
309
|
-
return { received: message, timestamp: Date.now() }
|
|
310
|
-
},
|
|
311
|
-
})
|
|
220
|
+
- Type natural language queries to test the MCP server
|
|
221
|
+
- View tool calls in real-time with visual indicators
|
|
222
|
+
- See detailed JSON output for arguments and results
|
|
223
|
+
- Watch the assistant's response based on tool results
|
|
224
|
+
- Track exactly how the MCP server processes requests
|
|
312
225
|
|
|
313
|
-
|
|
314
|
-
// Inspector at http://localhost:3000/inspector
|
|
315
|
-
```
|
|
226
|
+
---
|
|
316
227
|
|
|
317
|
-
|
|
228
|
+
## ⌨️ Keyboard Shortcuts
|
|
318
229
|
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
clientId: process.env.OAUTH_CLIENT_ID,
|
|
324
|
-
clientSecret: process.env.OAUTH_CLIENT_SECRET,
|
|
325
|
-
authorizationUrl: 'https://api.example.com/oauth/authorize',
|
|
326
|
-
tokenUrl: 'https://api.example.com/oauth/token',
|
|
327
|
-
},
|
|
328
|
-
})
|
|
230
|
+
| Shortcut | Action |
|
|
231
|
+
| -------------- | -------------------------- |
|
|
232
|
+
| `Cmd/Ctrl + K` | Quick search and navigation |
|
|
233
|
+
| `Esc` | Close modals and overlays |
|
|
329
234
|
|
|
330
|
-
|
|
331
|
-
|
|
235
|
+
**Quick Search (Cmd/Ctrl + K)** allows you to:
|
|
236
|
+
- Quickly connect to a new server
|
|
237
|
+
- Access documentation and tutorials
|
|
238
|
+
- Jump to recently used servers
|
|
239
|
+
- Search and execute tools directly
|
|
240
|
+
- Navigate to different tabs
|
|
332
241
|
|
|
333
|
-
|
|
242
|
+
---
|
|
334
243
|
|
|
335
|
-
|
|
244
|
+
## 💾 Persistency
|
|
336
245
|
|
|
337
|
-
|
|
338
|
-
// Add servers via UI
|
|
339
|
-
// Server 1: Local Development
|
|
340
|
-
URL: http://localhost:3000/mcp
|
|
246
|
+
The inspector automatically saves your configurations:
|
|
341
247
|
|
|
342
|
-
|
|
343
|
-
|
|
248
|
+
- **Server connections** persist across page reloads
|
|
249
|
+
- **Credentials** are stored securely in your browser's localStorage
|
|
250
|
+
- **Session preferences** are maintained automatically
|
|
251
|
+
- Clear all sessions anytime with the **"Clear All"** button
|
|
344
252
|
|
|
345
|
-
|
|
346
|
-
URL: https://api.example.com/mcp
|
|
347
|
-
```
|
|
253
|
+
Your data never leaves your browser - everything is stored locally for privacy and security.
|
|
348
254
|
|
|
349
255
|
---
|
|
350
256
|
|
|
351
|
-
##
|
|
257
|
+
## 🐳 Self-Hosting
|
|
352
258
|
|
|
353
|
-
|
|
259
|
+
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.
|
|
354
260
|
|
|
355
|
-
###
|
|
261
|
+
### Docker Image
|
|
356
262
|
|
|
357
|
-
|
|
358
|
-
- **React Router**: Navigation
|
|
359
|
-
- **Tailwind CSS**: Styling
|
|
360
|
-
- **shadcn/ui**: Component library
|
|
361
|
-
- **Framer Motion**: Animations
|
|
362
|
-
- **React Syntax Highlighter**: Code display
|
|
263
|
+
The official Docker image is available on [Docker Hub](https://hub.docker.com/r/mcpuse/inspector).
|
|
363
264
|
|
|
364
|
-
|
|
265
|
+
**Quick Start:**
|
|
365
266
|
|
|
366
|
-
```
|
|
367
|
-
|
|
368
|
-
├── components/
|
|
369
|
-
│ ├── InspectorDashboard.tsx # Main dashboard view
|
|
370
|
-
│ ├── ServerList.tsx # Server management
|
|
371
|
-
│ ├── ServerDetail.tsx # Individual server view
|
|
372
|
-
│ ├── ToolExecutor.tsx # Tool testing interface
|
|
373
|
-
│ ├── ResourceBrowser.tsx # Resource explorer
|
|
374
|
-
│ └── ChatInterface.tsx # Interactive chat
|
|
375
|
-
├── context/
|
|
376
|
-
│ └── McpContext.tsx # Connection state management
|
|
377
|
-
└── hooks/
|
|
378
|
-
└── useMcp.ts # MCP connection hook
|
|
267
|
+
```bash
|
|
268
|
+
docker run -d -p 8080:8080 --name mcp-inspector mcpuse/inspector:latest
|
|
379
269
|
```
|
|
380
270
|
|
|
381
|
-
|
|
271
|
+
Then visit `http://localhost:8080` to access your self-hosted inspector.
|
|
382
272
|
|
|
383
|
-
|
|
273
|
+
### Docker Deployment Options
|
|
384
274
|
|
|
385
|
-
|
|
386
|
-
- Automatic reconnection
|
|
387
|
-
- OAuth flow management
|
|
388
|
-
- Error recovery
|
|
389
|
-
- State synchronization
|
|
390
|
-
|
|
391
|
-
---
|
|
392
|
-
|
|
393
|
-
## 🐛 Troubleshooting
|
|
394
|
-
|
|
395
|
-
### Common Issues and Solutions
|
|
396
|
-
|
|
397
|
-
**Inspector not loading:**
|
|
275
|
+
**Using Docker Run:**
|
|
398
276
|
|
|
399
277
|
```bash
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
278
|
+
docker run -d \
|
|
279
|
+
--name mcp-inspector \
|
|
280
|
+
-p 8080:8080 \
|
|
281
|
+
-e NODE_ENV=production \
|
|
282
|
+
mcpuse/inspector:latest
|
|
405
283
|
```
|
|
406
284
|
|
|
407
|
-
**
|
|
285
|
+
**Using Docker Compose:**
|
|
286
|
+
|
|
287
|
+
```yaml
|
|
288
|
+
version: '3.8'
|
|
289
|
+
services:
|
|
290
|
+
mcp-inspector:
|
|
291
|
+
image: mcpuse/inspector:latest
|
|
292
|
+
ports:
|
|
293
|
+
- "8080:8080"
|
|
294
|
+
environment:
|
|
295
|
+
- NODE_ENV=production
|
|
296
|
+
- PORT=8080
|
|
297
|
+
restart: unless-stopped
|
|
298
|
+
healthcheck:
|
|
299
|
+
test: ["CMD", "curl", "-f", "http://localhost:8080"]
|
|
300
|
+
interval: 30s
|
|
301
|
+
timeout: 10s
|
|
302
|
+
retries: 3
|
|
303
|
+
```
|
|
408
304
|
|
|
409
|
-
|
|
410
|
-
- Verify server URL is correct
|
|
411
|
-
- Ensure server supports SSE/WebSocket
|
|
412
|
-
- Check network/firewall settings
|
|
305
|
+
### Environment Variables
|
|
413
306
|
|
|
414
|
-
|
|
307
|
+
All configuration is optional. The inspector works out of the box with sensible defaults.
|
|
415
308
|
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
309
|
+
| Variable | Default | Description |
|
|
310
|
+
| ----------- | ---------- | ---------------------------- |
|
|
311
|
+
| `NODE_ENV` | production | Node.js environment |
|
|
312
|
+
| `PORT` | 8080 | Port to run the inspector on |
|
|
313
|
+
| `HOST` | 0.0.0.0 | Host to bind to |
|
|
419
314
|
|
|
420
|
-
|
|
315
|
+
### Deploy to Railway
|
|
421
316
|
|
|
422
|
-
|
|
423
|
-
- Check server logs for errors
|
|
424
|
-
- Ensure proper authentication
|
|
425
|
-
- Validate input parameters
|
|
317
|
+
Deploy instantly to Railway with automatic HTTPS and custom domains:
|
|
426
318
|
|
|
427
|
-
|
|
319
|
+
[](https://railway.app/template)
|
|
428
320
|
|
|
429
|
-
|
|
430
|
-
- Clear browser cache
|
|
431
|
-
- Try incognito/private mode
|
|
432
|
-
- Check for browser extensions blocking storage
|
|
321
|
+
For more deployment options and support, visit the [self-hosting documentation](https://docs.mcp-use.com/inspector/self-hosting).
|
|
433
322
|
|
|
434
323
|
---
|
|
435
324
|
|
|
436
|
-
##
|
|
325
|
+
## 📊 Telemetry & Privacy
|
|
437
326
|
|
|
438
|
-
|
|
327
|
+
The MCP Inspector collects anonymized usage data to help us improve the tool.
|
|
439
328
|
|
|
440
|
-
|
|
441
|
-
// Use pagination for many tools
|
|
442
|
-
server.configurePagination({
|
|
443
|
-
toolsPerPage: 50,
|
|
444
|
-
enableSearch: true,
|
|
445
|
-
})
|
|
446
|
-
```
|
|
329
|
+
### What Data is Collected?
|
|
447
330
|
|
|
448
|
-
|
|
331
|
+
We collect:
|
|
449
332
|
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
connectionTimeout: 30000,
|
|
455
|
-
keepAlive: true,
|
|
456
|
-
}
|
|
457
|
-
```
|
|
333
|
+
- **Usage events**: When you connect to servers, execute tools, read resources, or call prompts
|
|
334
|
+
- **Anonymous user ID**: A randomly generated UUID stored in your browser's localStorage
|
|
335
|
+
- **Technical information**: Package version, browser type, and connection types
|
|
336
|
+
- **Performance data**: Tool execution duration and success/failure rates
|
|
458
337
|
|
|
459
|
-
|
|
338
|
+
We **DO NOT** collect:
|
|
460
339
|
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
maxSize: 100, // MB
|
|
466
|
-
})
|
|
467
|
-
```
|
|
340
|
+
- Personal information (names, emails, etc.)
|
|
341
|
+
- Actual tool arguments or results
|
|
342
|
+
- Server credentials or API keys
|
|
343
|
+
- Resource content or data
|
|
468
344
|
|
|
469
|
-
|
|
345
|
+
### How to Opt Out
|
|
470
346
|
|
|
471
|
-
|
|
347
|
+
You can disable telemetry in several ways:
|
|
472
348
|
|
|
473
|
-
|
|
349
|
+
**Option 1: Environment Variable**
|
|
474
350
|
|
|
475
|
-
```
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
origin: ['http://localhost:3000'],
|
|
479
|
-
credentials: true,
|
|
480
|
-
})
|
|
351
|
+
```bash
|
|
352
|
+
# Set before starting the inspector
|
|
353
|
+
export MCP_USE_ANONYMIZED_TELEMETRY=false
|
|
481
354
|
```
|
|
482
355
|
|
|
483
|
-
|
|
356
|
+
**Option 2: localStorage (Browser)**
|
|
484
357
|
|
|
485
358
|
```javascript
|
|
486
|
-
//
|
|
487
|
-
|
|
359
|
+
// In browser console
|
|
360
|
+
localStorage.setItem('mcp_inspector_telemetry_disabled', 'true')
|
|
488
361
|
```
|
|
489
362
|
|
|
490
|
-
|
|
363
|
+
**Option 3: Package-level**
|
|
491
364
|
|
|
492
|
-
```
|
|
493
|
-
//
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
}
|
|
365
|
+
```json
|
|
366
|
+
// Add to your package.json
|
|
367
|
+
{
|
|
368
|
+
"scarfSettings": {
|
|
369
|
+
"enabled": false
|
|
370
|
+
}
|
|
371
|
+
}
|
|
498
372
|
```
|
|
499
373
|
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
## 📚 API Reference
|
|
503
|
-
|
|
504
|
-
### Inspector Methods
|
|
374
|
+
### Telemetry Providers
|
|
505
375
|
|
|
506
|
-
|
|
507
|
-
// Mount inspector
|
|
508
|
-
mountInspector(app: Express, path?: string): void
|
|
376
|
+
We use:
|
|
509
377
|
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
// Configuration
|
|
514
|
-
configureInspector(options: InspectorOptions): void
|
|
515
|
-
```
|
|
516
|
-
|
|
517
|
-
### Connection Options
|
|
518
|
-
|
|
519
|
-
```typescript
|
|
520
|
-
interface InspectorOptions {
|
|
521
|
-
autoConnect?: boolean // Auto-connect to local server
|
|
522
|
-
theme?: 'light' | 'dark' | 'auto'
|
|
523
|
-
persistence?: boolean // Save sessions
|
|
524
|
-
maxConnections?: number
|
|
525
|
-
connectionTimeout?: number
|
|
526
|
-
}
|
|
527
|
-
```
|
|
378
|
+
- **PostHog**: For product analytics and feature usage tracking
|
|
379
|
+
- **Scarf**: For package download analytics and company insights
|
|
528
380
|
|
|
381
|
+
Both providers respect your privacy and follow GDPR compliance.
|
|
529
382
|
---
|
|
530
383
|
|
|
531
384
|
## 🤝 Contributing
|
|
532
385
|
|
|
533
|
-
We welcome contributions!
|
|
534
|
-
|
|
535
|
-
- Additional UI themes
|
|
536
|
-
- More keyboard shortcuts
|
|
537
|
-
- Enhanced tool testing features
|
|
538
|
-
- Performance optimizations
|
|
539
|
-
- Localization support
|
|
386
|
+
We welcome contributions!
|
|
540
387
|
|
|
541
388
|
See our [contributing guide](https://github.com/mcp-use/mcp-use/blob/main/CONTRIBUTING.md) for details.
|
|
542
389
|
|
|
@@ -544,11 +391,11 @@ See our [contributing guide](https://github.com/mcp-use/mcp-use/blob/main/CONTRI
|
|
|
544
391
|
|
|
545
392
|
## 📚 Learn More
|
|
546
393
|
|
|
547
|
-
- [
|
|
548
|
-
- [
|
|
549
|
-
- [
|
|
550
|
-
- [
|
|
551
|
-
- [
|
|
394
|
+
- [Inspector Documentation](https://docs.mcp-use.com/inspector) - Complete usage guide and tutorials
|
|
395
|
+
- [Self-Hosting Guide](https://docs.mcp-use.com/inspector/self-hosting) - Deploy your own instance
|
|
396
|
+
- [mcp-use Documentation](https://docs.mcp-use.com) - Full framework documentation
|
|
397
|
+
- [Model Context Protocol](https://modelcontextprotocol.io) - Official MCP specification
|
|
398
|
+
- [GitHub Repository](https://github.com/mcp-use/mcp-use) - Source code and examples
|
|
552
399
|
|
|
553
400
|
---
|
|
554
401
|
|