Justin Spahr-Summers
92621516f8
Re-auth upon 401 when POSTing
2025-02-11 21:37:49 +00:00
Justin Spahr-Summers
03e583b70f
Add support for AuthProvider in SSEClientTransport
2025-02-11 20:35:36 +00:00
Justin Spahr-Summers
fceebdcf5a
Add MCP-Protocol-Version header
2025-02-11 17:58:58 +00:00
Justin Spahr-Summers
141f3f5532
Don't need full OAuth client metadata in response
2025-02-11 16:54:57 +00:00
Justin Spahr-Summers
9fea0af998
Correctly provide client ID (+ secret) to every auth step
2025-02-11 15:59:16 +00:00
Justin Spahr-Summers
47fd6df229
Higher-level auth flow
2025-02-11 15:13:17 +00:00
Justin Spahr-Summers
fa50204a11
Fix import of auth.js in test
2025-02-11 14:17:10 +00:00
Justin Spahr-Summers
4c87fb50ab
Prefix client metadata + info with OAuth
2025-02-11 14:17:02 +00:00
Justin Spahr-Summers
d17a382a65
Auth tests and fixes
2025-02-11 13:47:58 +00:00
Justin Spahr-Summers
2b9a58182c
Add dynamic client registration
2025-02-11 13:32:10 +00:00
Justin Spahr-Summers
62d67ad874
Add refresh token support
2025-02-06 16:37:47 +00:00
Justin Spahr-Summers
fe24aa5c26
Remove nested folder for auth
2025-02-06 16:34:33 +00:00
Justin Spahr-Summers
956f6658e8
Implement token exchange
2025-02-06 14:52:37 +00:00
Justin Spahr-Summers
8a26e2d9e8
Validate auth flow is supported
2025-02-06 14:39:50 +00:00
Justin Spahr-Summers
c39c8bf62b
WIP start authorization flow
2025-02-06 13:44:41 +00:00
Justin Spahr-Summers
0bc3a74ac3
OAuth metadata discovery
2025-02-06 13:38:21 +00:00
Justin Spahr-Summers
63f8f07a22
Add SseError class for easier introspection
2025-01-24 11:26:12 +00:00
Justin Spahr-Summers
9923aecf29
Report SSE error codes
2025-01-23 17:29:46 +00:00
Justin Spahr-Summers
edfdea539f
Merge pull request #134 from modelcontextprotocol/justin/sse-auth
...
Use `eventsource` package, to permit custom headers for SSE
2025-01-23 13:56:41 +00:00
Justin Spahr-Summers
87bfb61544
Try a different way of waiting for close
2025-01-23 11:53:41 +00:00
Justin Spahr-Summers
742b8b43a0
General tests for SSE client transport
...
Since we're here anyway…
2025-01-22 18:55:47 +00:00
Justin Spahr-Summers
e2723d30b8
Tests for passing custom SSE headers
2025-01-22 18:51:00 +00:00
Justin Spahr-Summers
c828067171
Use eventsource package
2025-01-22 18:49:04 +00:00
Kalvin Chau
5087087190
style: fix linting error on String vs string
2025-01-22 09:25:28 -08:00
Kalvin Chau
443c0829ed
feat: add mcp client instruction support
2025-01-22 09:17:59 -08:00
Justin Spahr-Summers
1506bd1b51
Allow capabilities to be dynamically registered after initialization
2025-01-07 14:34:00 +00:00
Chris Dickinson
d55f966562
feat(client/sse): add {EventSource,Request}Init options param
...
This enables users of the SSE client to optionally send cookie-based credentials
to the event source MCP server using `EventSourceInit` [1] parameters and set
the outgoing request headers for the POST call.
[1]: https://developer.mozilla.org/en-US/docs/Web/API/EventSource/EventSource#options
2024-12-30 23:11:00 -08:00
Justin Spahr-Summers
1962943b22
Revert "Remove CompatibilityCallToolResult"
2024-12-04 17:09:31 +00:00
Justin Spahr-Summers
e911ece970
Remove CompatibilityCallToolResult
...
Resolves #82 .
2024-12-03 16:03:26 +00:00
Anaïs Betts
9fd52c861e
Use windowsHide because detached seems to break stdio redirection on npx
2024-11-26 15:41:23 +01:00
Justin Spahr-Summers
1025b3fc55
Add way to get child process stderr pipe
2024-11-20 21:19:06 +00:00
Anaïs Betts
e0c821cad9
Special-case this fix to Electron apps
2024-11-20 15:55:11 +01:00
Anaïs Betts
17a32b14d4
Use detached: true on Windows
...
Unfortunately, the fix in #55 was not sufficient - the behavior of spawn
depends on the "console'ness" of the originally launched process, which has the
effect of development behavior for Claude Desktop on Windows being
different than in production, since the launching process is Claude.exe
(a Win32 Subsystem app) vs `yarn start` which is effectively a Console
Subsystem app.
2024-11-20 14:41:53 +01:00
Justin Spahr-Summers
437a870029
Tests for request timeout
2024-11-16 16:37:24 +00:00
Justin Spahr-Summers
7d50d8ca16
Add missing options to request methods
2024-11-16 15:59:03 +00:00
Justin Spahr-Summers
c3495d2f7a
Merge pull request #56 from modelcontextprotocol/justin/configurable-stderr
...
Make stderr behavior configurable
2024-11-15 13:39:30 +00:00
Justin Spahr-Summers
9db00579b0
Merge pull request #54 from modelcontextprotocol/justin/cancellation
...
Implement cancellation notifications and handling
2024-11-15 13:39:17 +00:00
Justin Spahr-Summers
b59c381abf
Make stderr behavior configurable
2024-11-14 20:13:13 +00:00
Anaïs Betts
8e2e917992
Don't open a terminal window on Windows
2024-11-14 16:11:10 +01:00
Justin Spahr-Summers
6ec4c09325
Add tests for issuing cancellation notifications
2024-11-14 14:11:11 +00:00
Justin Spahr-Summers
1451d0ea24
Explicitly allow cancelled notifications without any capability
2024-11-14 14:07:28 +00:00
Justin Spahr-Summers
54d146bbdc
Support passing an AbortSignal to request()
2024-11-14 13:42:18 +00:00
Justin Spahr-Summers
70cfb0f0d4
Unify error text
2024-11-12 12:17:35 +00:00
Justin Spahr-Summers
8b307a5d62
Check capabilities when request handlers are set
2024-11-12 12:16:43 +00:00
Justin Spahr-Summers
64c2862883
Check and add tests for notification capabilities too
2024-11-12 12:02:10 +00:00
Justin Spahr-Summers
dc45f5d148
Handle capabilities checks at the request() level, make non-strict by default
2024-11-12 10:57:59 +00:00
Justin Spahr-Summers
7ab5880569
Use explicit capabilities lists for now
2024-11-11 22:38:43 +00:00
Justin Spahr-Summers
90e91cdd62
Tests and assertions for client/server capabilities
...
Resolves #45 .
2024-11-11 22:30:50 +00:00
Justin Spahr-Summers
c82d633d8d
Disconnect from client side if initialization fails
...
Resolves #24 .
2024-11-11 22:08:46 +00:00
Justin Spahr-Summers
8ea66e7df9
Tests for protocol version negotiation
...
Resolves #44 .
2024-11-11 22:05:13 +00:00