Skip to content

Commit 583145b

Browse files
authored
Merge branch 'main' into feat-cli-server-request-configs
2 parents d6d90b5 + f216d42 commit 583145b

File tree

10 files changed

+47
-31
lines changed

10 files changed

+47
-31
lines changed

README.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -236,13 +236,15 @@ ALLOWED_ORIGINS=http://localhost:6274,http://localhost:8000 npm start
236236

237237
The MCP Inspector supports the following configuration settings. To change them, click on the `Configuration` button in the MCP Inspector UI:
238238

239-
| Setting | Description | Default |
240-
| --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
241-
| `MCP_SERVER_REQUEST_TIMEOUT` | Timeout for requests to the MCP server (ms) | 10000 |
242-
| `MCP_REQUEST_TIMEOUT_RESET_ON_PROGRESS` | Reset timeout on progress notifications | true |
243-
| `MCP_REQUEST_MAX_TOTAL_TIMEOUT` | Maximum total timeout for requests sent to the MCP server (ms) (Use with progress notifications) | 60000 |
244-
| `MCP_PROXY_FULL_ADDRESS` | Set this if you are running the MCP Inspector Proxy on a non-default address. Example: http://10.1.1.22:5577 | "" |
245-
| `MCP_AUTO_OPEN_ENABLED` | Enable automatic browser opening when inspector starts (works with authentication enabled). Only as environment var, not configurable in browser. | true |
239+
| Setting | Description | Default |
240+
| --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
241+
| `MCP_SERVER_REQUEST_TIMEOUT` | Client-side timeout (ms) - Inspector will cancel the request if no response is received within this time. Note: servers may have their own timeouts | 300000 |
242+
| `MCP_REQUEST_TIMEOUT_RESET_ON_PROGRESS` | Reset timeout on progress notifications | true |
243+
| `MCP_REQUEST_MAX_TOTAL_TIMEOUT` | Maximum total timeout for requests sent to the MCP server (ms) (Use with progress notifications) | 60000 |
244+
| `MCP_PROXY_FULL_ADDRESS` | Set this if you are running the MCP Inspector Proxy on a non-default address. Example: http://10.1.1.22:5577 | "" |
245+
| `MCP_AUTO_OPEN_ENABLED` | Enable automatic browser opening when inspector starts (works with authentication enabled). Only as environment var, not configurable in browser. | true |
246+
247+
**Note on Timeouts:** The timeout settings above control when the Inspector (as an MCP client) will cancel requests. These are independent of any server-side timeouts. For example, if a server tool has a 10-minute timeout but the Inspector's timeout is set to 30 seconds, the Inspector will cancel the request after 30 seconds. Conversely, if the Inspector's timeout is 10 minutes but the server times out after 30 seconds, you'll receive the server's timeout error. For tools that require user interaction (like elicitation) or long-running operations, ensure the Inspector's timeout is set appropriately.
246248

247249
These settings can be adjusted in real-time through the UI and will persist across sessions.
248250

@@ -361,7 +363,7 @@ http://localhost:6274/?transport=stdio&serverCommand=npx&serverArgs=arg1%20arg2
361363
You can also set initial config settings via query params, for example:
362364

363365
```
364-
http://localhost:6274/?MCP_SERVER_REQUEST_TIMEOUT=10000&MCP_REQUEST_TIMEOUT_RESET_ON_PROGRESS=false&MCP_PROXY_FULL_ADDRESS=http://10.1.1.22:5577
366+
http://localhost:6274/?MCP_SERVER_REQUEST_TIMEOUT=60000&MCP_REQUEST_TIMEOUT_RESET_ON_PROGRESS=false&MCP_PROXY_FULL_ADDRESS=http://10.1.1.22:5577
365367
```
366368

367369
Note that if both the query param and the corresponding localStorage item are set, the query param will take precedence.

cli/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@modelcontextprotocol/inspector-cli",
3-
"version": "0.17.0",
3+
"version": "0.17.1",
44
"description": "CLI for the Model Context Protocol inspector",
55
"license": "MIT",
66
"author": "Anthropic, PBC (https://anthropic.com)",

client/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@modelcontextprotocol/inspector-client",
3-
"version": "0.17.0",
3+
"version": "0.17.1",
44
"description": "Client-side application for the Model Context Protocol inspector",
55
"license": "MIT",
66
"author": "Anthropic, PBC (https://anthropic.com)",

client/src/components/__tests__/Sidebar.test.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -913,7 +913,8 @@ describe("Sidebar", () => {
913913
expect.objectContaining({
914914
MCP_SERVER_REQUEST_TIMEOUT: {
915915
label: "Request Timeout",
916-
description: "Timeout for requests to the MCP server (ms)",
916+
description:
917+
"Client-side timeout (ms) - Inspector will cancel requests after this time",
917918
value: 5000,
918919
is_session_item: false,
919920
},
@@ -988,7 +989,8 @@ describe("Sidebar", () => {
988989
expect.objectContaining({
989990
MCP_SERVER_REQUEST_TIMEOUT: {
990991
label: "Request Timeout",
991-
description: "Timeout for requests to the MCP server (ms)",
992+
description:
993+
"Client-side timeout (ms) - Inspector will cancel requests after this time",
992994
value: 0,
993995
is_session_item: false,
994996
},
@@ -1035,7 +1037,8 @@ describe("Sidebar", () => {
10351037
expect.objectContaining({
10361038
MCP_SERVER_REQUEST_TIMEOUT: {
10371039
label: "Request Timeout",
1038-
description: "Timeout for requests to the MCP server (ms)",
1040+
description:
1041+
"Client-side timeout (ms) - Inspector will cancel requests after this time",
10391042
value: 3000,
10401043
is_session_item: false,
10411044
},

client/src/lib/auth.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,10 +121,16 @@ export class InspectorOAuthClientProvider implements OAuthClientProvider {
121121
return window.location.origin + "/oauth/callback/debug";
122122
}
123123

124+
get redirect_uris() {
125+
// Normally register both redirect URIs to support both normal and debug flows
126+
// In debug subclass, redirectUrl may be the same as debugRedirectUrl, so remove duplicates
127+
// See: https://github.com/modelcontextprotocol/inspector/issues/825
128+
return [...new Set([this.redirectUrl, this.debugRedirectUrl])];
129+
}
130+
124131
get clientMetadata(): OAuthClientMetadata {
125-
// Register both redirect URIs to support both normal and debug flows
126132
return {
127-
redirect_uris: [this.redirectUrl, this.debugRedirectUrl],
133+
redirect_uris: this.redirect_uris,
128134
token_endpoint_auth_method: "none",
129135
grant_types: ["authorization_code", "refresh_token"],
130136
response_types: ["code"],

client/src/lib/configurationTypes.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ export type ConfigItem = {
1414
*/
1515
export type InspectorConfig = {
1616
/**
17-
* Maximum time in milliseconds to wait for a response from the MCP server before timing out.
17+
* Client-side timeout in milliseconds. The Inspector will cancel the request if no response
18+
* is received within this time. Note: This is independent of any server-side timeouts.
1819
*/
1920
MCP_SERVER_REQUEST_TIMEOUT: ConfigItem;
2021

client/src/lib/constants.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,9 @@ export const DEFAULT_MCP_PROXY_LISTEN_PORT = "6277";
4343
export const DEFAULT_INSPECTOR_CONFIG: InspectorConfig = {
4444
MCP_SERVER_REQUEST_TIMEOUT: {
4545
label: "Request Timeout",
46-
description: "Timeout for requests to the MCP server (ms)",
47-
value: 10000,
46+
description:
47+
"Client-side timeout (ms) - Inspector will cancel requests after this time",
48+
value: 300000, // 5 minutes - increased to support elicitation and other long-running tools
4849
is_session_item: false,
4950
},
5051
MCP_REQUEST_TIMEOUT_RESET_ON_PROGRESS: {

package-lock.json

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@modelcontextprotocol/inspector",
3-
"version": "0.17.0",
3+
"version": "0.17.1",
44
"description": "Model Context Protocol inspector",
55
"license": "MIT",
66
"author": "Anthropic, PBC (https://anthropic.com)",
@@ -47,9 +47,9 @@
4747
"check-version": "node scripts/check-version-consistency.js"
4848
},
4949
"dependencies": {
50-
"@modelcontextprotocol/inspector-cli": "^0.17.0",
51-
"@modelcontextprotocol/inspector-client": "^0.17.0",
52-
"@modelcontextprotocol/inspector-server": "^0.17.0",
50+
"@modelcontextprotocol/inspector-cli": "^0.17.1",
51+
"@modelcontextprotocol/inspector-client": "^0.17.1",
52+
"@modelcontextprotocol/inspector-server": "^0.17.1",
5353
"@modelcontextprotocol/sdk": "^1.18.0",
5454
"concurrently": "^9.2.0",
5555
"node-fetch": "^3.3.2",
@@ -71,6 +71,9 @@
7171
"rimraf": "^6.0.1",
7272
"typescript": "^5.4.2"
7373
},
74+
"overrides": {
75+
"get-intrinsic": "1.3.0"
76+
},
7477
"engines": {
7578
"node": ">=22.7.5"
7679
},

server/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@modelcontextprotocol/inspector-server",
3-
"version": "0.17.0",
3+
"version": "0.17.1",
44
"description": "Server-side application for the Model Context Protocol inspector",
55
"license": "MIT",
66
"author": "Anthropic, PBC (https://anthropic.com)",

0 commit comments

Comments
 (0)