Commit graph typescript-sdk/src/client
Author SHA1 Message Date
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