Commit graph

1,693 commits

Author SHA1 Message Date
pavan-mellamputi-socure
8f2e53c273
Fix a typo in progress notification method name
It shoud be `notifications/progress` not `notification/progress` (not singular).

This matches the latest spec.

https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/progress
2025-08-22 18:48:26 -07:00
Richard Michael
ae7d745d5e Ensure tests will always use the current client name and version 2025-08-22 10:47:36 -07:00
Richard Michael
0d202ee47b Update client name during Elicitation test init 2025-08-22 10:28:50 -07:00
Richard Michael
f942df7e4c Consistent MCP Client() name from package
Make both clients use name from package.json for consistency and protocol clarity

 - web client changes `mcp-inspector` -> `inspector-client` (package.json)
 - cli client remains `inspector-cli` (package.json)
2025-08-22 10:28:50 -07:00
Richard Michael
d7b020fdda Fix hard-coded CLI version, use package.json consistent with client 2025-08-22 10:28:50 -07:00
Nathan Heaps
d758e8be93
Merge branch 'main' into main 2025-08-22 09:55:42 -04:00
Richard Michael
61db7918af Align similar /sse and /stdio handlers: formatting and move log statement 2025-08-22 00:47:40 -07:00
Richard Michael
89740ef5d1 Add tests for MCP_PROXY_FULL_ADDRESS SSE endpoint support
Tests verify that proxyFullAddress query parameter is sent for both
STDIO and SSE transports, but not Streamable HTTP, when
MCP_PROXY_FULL_ADDRESS is configured.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-22 00:47:22 -07:00
Cameron Roberts
c782781eb9
Merge branch 'main' into tool-search 2025-08-22 08:24:52 +01:00
Richard Michael
3628abca9e Use MCP_PROXY_FULL_ADDRESS for SSE transport backed endpoints
The STDIO and SSE transports use SSE between the client and the proxy
server.  SSE requires the client to initiate the MCP conversation
(event-stream) at the endpoint provided by the server.  The endpoint
provided by the server must obey where the client sees the server,
rather than being assumed to be server-root `/message`.

The Streamable HTTP endpoint does not need the full proxy address
because the response is an event-stream directly, and does not use SSE.
2025-08-21 23:11:08 -07:00
Ola Hungerford
0b4e395f2b
Merge branch 'main' into parse-tool-arg 2025-08-21 19:12:36 -07:00
Ola Hungerford
f22aa1f5e2
Merge pull request #741 from cliffhall/stderr-handling
Handling of stderr on STDIO servers
2025-08-21 19:10:19 -07:00
Ola Hungerford
d48164aa09
Merge pull request #719 from richardkmichael/fix-704-trim-command-whitespace
fix: Trim whitespace from Command input to prevent ENOENT
2025-08-21 18:50:52 -07:00
cliffhall
4cf7aeb9ed proper levels for server shutdown messages 2025-08-21 19:08:51 -04:00
cliffhall
fb0b56505a Trim message before sending to client 2025-08-21 18:55:58 -04:00
cliffhall
c54215252e Trim message before sending to client 2025-08-21 18:40:19 -04:00
cliffhall
f472327ea0 Trim message before sending to client 2025-08-21 18:12:38 -04:00
cliffhall
ec99372d92 * Remove handling of out-of-spec 'notification/stderr' messages. It's not a thing. See https://github.com/modelcontextprotocol/servers/pull/2469
* Inspect the stderr output of STDIO servers and attempt to assign an appropriate RFC 5424 Syslog Protocol level before sending a leveled logging message to the client
2025-08-21 18:04:07 -04:00
cliffhall
9dbd5cc85b * Remove handling of out-of-spec 'notification/stderr' messages. It's not a thing. See https://github.com/modelcontextprotocol/servers/pull/2469
* Inspect the stderr output of STDIO servers and attempt to assign an appropriate RFC 5424 Syslog Protocol level before sending a leveled logging message to the client
2025-08-21 18:01:29 -04:00
Cameron Roberts
ee81c5aa0d
Merge branch 'main' into tool-search 2025-08-21 18:14:54 +01:00
Cliff Hall
8a5a4e5b6a
Merge pull request #740 from modelcontextprotocol/fix/validate-urls
Fix/validate urls for http/https scheme only in auth flow
2025-08-21 12:15:19 -04:00
Jenn Newton
a018a6d758
Apply Prettier formatting
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-21 15:41:33 +00:00
Jenn Newton
fa2e6b0c40
Fix to properly open in new tab for OAuth
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-21 15:31:53 +00:00
Cameron Roberts
84fbcf2710
Merge branch 'main' into tool-search 2025-08-21 10:09:46 +01:00
Ola Hungerford
acc0530988
Merge branch 'main' into fix-704-trim-command-whitespace 2025-08-20 20:47:37 -07:00
Nathan Heaps
9e47d7d3c1 fix: correct stdout buffering issues in spawned processes
Adds stdio inheritance to prevent Node.js from dropping console output after 8192 characters due to premature stdout pipe closure before output finishes flushing. Without this, calls like this would truncate after 8192 characters, leading to broken json output:

```
npx --node-options=--inspect -y @modelcontextprotocol/inspector --cli --config .mcp.json --server notion --method tools/list
```

```
# notion mcp server
    "notion": {
      "//": "doppler needs to expose OPENAPI_MCP_HEADERS (and NOTION_TOKEN within it)",
      "command": "bash",
      "args": [
        "-c",
        "doppler run -p 'mcp' -c \"user_${MCP_USER:-$USER}\" -- npx -y @notionhq/notion-mcp-server"
      ]
    },
```

You can see this in their [openapi spec](https://github.com/makenotion/notion-mcp-server/blob/main/scripts/notion-openapi.json), which powers their MCP server.
2025-08-20 21:06:06 -04:00
Ola Hungerford
5598cff694
Merge branch 'main' into update-dependencies 2025-08-20 07:35:50 -07:00
Ola Hungerford
ade237ee6e
Merge pull request #714 from modelcontextprotocol/halter73/restore-resource
Restore AuthDebuggerState.resource as URL
2025-08-20 07:19:07 -07:00
Ola Hungerford
bb95fccdf1
Merge branch 'main' into halter73/restore-resource 2025-08-20 07:16:19 -07:00
Jenn Newton
650f3090d2
fix: add validation for OAuth redirect URLs
- Create shared validateRedirectUrl utility to centralize URL validation
- Only allow HTTP and HTTPS protocols in OAuth authorization URLs
- Fix three vulnerable redirect paths that bypassed validation:
  - AuthDebugger.tsx: Direct window.location.href redirect
  - OAuthFlowProgress.tsx: window.open() without validation
  - OAuthFlowProgress.tsx: Direct anchor href attribute
- Add comprehensive test coverage for URL validation
- Update existing auth.ts to use shared validation utility

This prevents malicious MCP servers from injecting javascript: or data:
protocol URLs that would execute XSS attacks when users are redirected
to the authorization endpoint.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-20 10:08:20 -03:00
Ola Hungerford
0e30df8801
Merge branch 'main' into fix-704-trim-command-whitespace 2025-08-19 21:12:41 -07:00
Cameron Roberts
1f73530573
Merge branch 'main' into tool-search 2025-08-19 22:22:01 +01:00
Cliff Hall
7fc3de7648
Merge pull request #731 from olaservo/setup-prettier-precommit
Setup prettier precommit
2025-08-19 13:03:01 -04:00
Ola Hungerford
df6152ee35
Update npm prepare script to include husky 2025-08-19 06:57:09 -07:00
Ola Hungerford
fa9b99b5df
Update .husky/pre-commit
Co-authored-by: Cliff Hall <cliff@futurescale.com>
2025-08-19 06:55:29 -07:00
Cameron Roberts
092f2ed6e3
Merge branch 'main' into tool-search 2025-08-18 23:08:55 +01:00
Stephen Halter
36a30fa3db prettier --write client/src/components/OAuthDebugCallback.tsx 2025-08-18 13:01:13 -07:00
olaservo
420f9a7b9a Remove test formatting file 2025-08-18 08:53:49 -07:00
olaservo
de1754633e Test pre-commit formatting hook with intentionally bad formatting 2025-08-18 08:52:33 -07:00
olaservo
b33dabe8dc Fix: restore original 'prepare' script that was overwritten by husky init
- Restore 'prepare': 'npm run build' for proper package installation
- Husky pre-commit hooks remain functional via existing .husky directory
2025-08-18 08:50:57 -07:00
olaservo
610cbddd35 Merge remote-tracking branch 'upstream/main' into setup-prettier-precommit 2025-08-18 08:45:53 -07:00
olaservo
f7b1cd6f43 Setup prettier pre-commit formatting with husky and lint-staged
- Install husky and lint-staged dev dependencies
- Configure pre-commit hook to run prettier on staged files
- Only format changed files to improve performance
- Prevents CI formatting failures by formatting locally
2025-08-18 08:43:09 -07:00
Ola Hungerford
50114363d5
Merge pull request #730 from cliffhall/bump-to-version-0.16.5 0.16.5
bump version to 0.16.5
2025-08-18 08:41:38 -07:00
cliffhall
2f93d70364 bump version to 0.16.5 2025-08-18 11:37:41 -04:00
Ola Hungerford
e2fe3da358
Merge pull request #677 from JLLeitschuh/patch-1
Add warning for DANGEROUSLY_OMIT_AUTH usage
2025-08-18 08:19:52 -07:00
Cliff Hall
8be6d90830
Merge pull request #722 from cliffhall/align-oauth-flows
Align Quick OAuth Flow and Simple Connect Flow with Guided OAuth Flow behavior
2025-08-18 11:17:39 -04:00
cliffhall
28c0bf176a Update Typescript SDK version to latest 2025-08-18 11:13:49 -04:00
Ola Hungerford
44a40cdd57
Merge branch 'main' into align-oauth-flows 2025-08-18 07:49:27 -07:00
Cameron Roberts
ae9246314c
Merge branch 'main' into tool-search 2025-08-18 15:30:15 +01:00
Ola Hungerford
6330cb4b17
Merge pull request #421 from olaservo/reverse-env-order-for-cli-stdio
Reverse env variable sourcing order
2025-08-18 07:08:38 -07:00