Justin Spahr-Summers
5a6823a0db
Stick with %20, don't replace with +
2025-01-16 11:24:39 +00:00
Justin Spahr-Summers
2e35b15353
Merge branch 'main' into justin/simplified-api
2025-01-13 20:34:08 +00:00
Kalvin Chau
1bb51d0fca
style: remove private getter for getInstructions
2025-01-13 09:50:02 -08:00
Kalvin Chau
54472d2ae1
feat: add optional instructions field to server _oninitialize
2025-01-13 09:09:05 -08:00
Justin Spahr-Summers
7629c70ef9
Remove unused import
2025-01-08 22:02:00 +00:00
Justin Spahr-Summers
2289dbc0d0
Factor out convenience APIs into another class
2025-01-08 21:59:38 +00:00
Jerome
e72ff8d97f
Merge pull request #115 from modelcontextprotocol/jerome/fix/clean-stdio-shutdown
...
Added clean shutdown + tests
2025-01-08 18:07:28 +00:00
Justin Spahr-Summers
189cc84113
Autocomplete on resource template variables
2025-01-08 15:46:43 +00:00
Justin Spahr-Summers
8635c6384f
Autocomplete on prompt arguments
2025-01-08 15:19:16 +00:00
Justin Spahr-Summers
02fa78728c
Add completable wrapper for Zod schemas
2025-01-08 15:00:33 +00:00
Justin Spahr-Summers
9b95fa8203
Server.prompt() convenience API
2025-01-08 14:20:44 +00:00
Justin Spahr-Summers
5ddfa0a0d9
Add extra to resource request handlers
2025-01-08 14:20:43 +00:00
Justin Spahr-Summers
f090c93127
Move Server helper definitions to bottom of file
2025-01-08 13:47:38 +00:00
Justin Spahr-Summers
8356cb900c
Create ResourceTemplate class and move listCallback into it
2025-01-08 13:44:12 +00:00
Justin Spahr-Summers
45f99e6590
Make Variables non-optional with resource template URIs
2025-01-07 22:36:20 +00:00
Justin Spahr-Summers
3f9acec31e
Add a test for listCallback
2025-01-07 22:10:05 +00:00
Justin Spahr-Summers
1970509131
Method documentation
2025-01-07 22:05:55 +00:00
Justin Spahr-Summers
098266ae22
Add simplified API for registering resources and resource templates
2025-01-07 22:01:41 +00:00
Justin Spahr-Summers
e4b382044e
Add UriTemplate.toString
2025-01-07 22:01:40 +00:00
Justin Spahr-Summers
1e040e9932
Add method to determine if a URI is a template or not
2025-01-07 22:01:40 +00:00
Justin Spahr-Summers
dc77d9cf47
More thorough handling of edge cases/pathologies
2025-01-07 18:40:53 +00:00
Justin Spahr-Summers
7f0cf7305d
URI Template parser and matcher
2025-01-07 16:42:13 +00:00
Justin Spahr-Summers
bb28c9b519
Minor tweak to make test code more idiomatic
2025-01-07 15:57:10 +00:00
Justin Spahr-Summers
aac1959855
Errors invoking tools should be erroneous tool results, not McpErrors
2025-01-07 14:53:56 +00:00
Justin Spahr-Summers
ff22f255ad
Tests for Server.tool
2025-01-07 14:44:23 +00:00
Justin Spahr-Summers
b538731af0
Fix string type check
2025-01-07 14:40:53 +00:00
Justin Spahr-Summers
c14a5d44bf
Tests for mergeCapabilities
2025-01-07 14:34:00 +00:00
Justin Spahr-Summers
7ac5a5fcf5
Automatically register tools capability
2025-01-07 14:34:00 +00:00
Justin Spahr-Summers
1506bd1b51
Allow capabilities to be dynamically registered after initialization
2025-01-07 14:34:00 +00:00
Justin Spahr-Summers
4bf5c5358a
Assert tool request handlers do not already exist
2025-01-07 14:34:00 +00:00
Justin Spahr-Summers
f8f5686966
Server.tool() convenience API
2025-01-07 14:33:56 +00:00
Justin Spahr-Summers
0c5d6c4f18
Missed one
2025-01-06 21:37:30 +00:00
Jerome
a2157dcbd4
Removed unneeded test
2025-01-03 19:09:11 +00:00
Jerome
8a077474a6
Pause stdin if we were the only listeners to the data events
2025-01-03 19:05:38 +00:00
Jerome
6ebf67ea73
Don't remove drain listeners
2025-01-03 18:47:07 +00:00
Jerome
7c91349363
Added clean shutdown + tests
2025-01-03 16:29:06 +00:00
Justin Spahr-Summers
b5711be1ad
Can just reuse z.infer instead of using ReturnType
2025-01-03 14:01:17 +00:00
Justin Spahr-Summers
73ea68cf13
Disable ESLint warning
2025-01-03 13:49:07 +00:00
Justin Spahr-Summers
9b5efc4286
Recursively flatten types for better inference
2025-01-03 13:47:19 +00:00
Sumitesh Naithani
ca319138b9
chore: pulled upstream origin branch
2025-01-03 07:36:18 +05:30
Sumitesh Naithani
21e3d465ca
chore: updated documentation comment in ErrorCode enum and set protocol test timeout to 0
2025-01-03 06:59:01 +05:30
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
Sumitesh Naithani
8fa0a5c88b
test: added tests for checking correct error codes are thrown on request timeout and connection closed scenarios
2024-12-23 00:10:14 +05:30
Sumitesh Naithani
d77cd0deb3
style: fixed linting issues
2024-12-22 23:20:35 +05:30
Sumitesh Naithani
e7d08c738e
fix(protocol): restrict SDK error codes to JSON-RPC server error range
...
The SDK's custom error codes were previously using arbitrary negative numbers
(-1, -2) which could conflict with application-specific error codes. This change:
- Updates ConnectionClosed from -1 to -32000
- Updates RequestTimeout from -2 to -32001
- Keeps standard JSON-RPC error codes unchanged
- Adds documentation explaining the server error range usage
This modification ensures compliance with the JSON-RPC 2.0 specification, which
reserves -32000 to -32099 for implementation-defined server errors. This change
allows applications to freely use other error code ranges without potential
conflicts with SDK-generated errors.
Issue: #85
2024-12-22 23:12:22 +05:30
Jerome
881a0ce0e8
Destructured progress and total from notification params object
2024-12-16 16:50:05 +00:00
Justin Spahr-Summers
1f835e044f
Whitespace tweaks
2024-12-09 13:43:17 +00:00
brn
6535f93f2d
feat: Add a parsedBody optional parameter
...
Please enter the commit message for your changes. Lines starting
2024-12-05 13:18:52 +09:00
Eric Fritz
3d15050960
Fix cancellation notification mismatch
...
The server registers a notification handler on `CancelledNotificationSchema`, but is never called on client cancellation because of a mismatch in the method name. This fixes that mismatch.
2024-11-27 23:48:44 -06:00
Anaïs Betts
9fd52c861e
Use windowsHide because detached seems to break stdio redirection on npx
2024-11-26 15:41:23 +01:00