go-sdk/mcp
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Robert Findley 18cd63599d
auth, mcp: add UserID to TokenInfo for session hijacking prevention (#695)
Add a UserID field to auth.TokenInfo that TokenVerifiers can populate
from JWT "sub" claims or token introspection. The streamable HTTP
transport uses this to bind sessions to users, rejecting requests where
the user ID doesn't match the session's original user.

Fixes #589
2025-12-08 14:32:33 -05:00
..
testdata Implement SEP-973 (#570) 2025-11-12 16:52:44 -05:00
client.go all: expose JSON-RPC error codes, and support URLElicitationRequired errors (#655) 2025-12-01 11:29:17 -05:00
client_example_test.go mcp: fix goroutine leaks in unit tests (#496) 2025-10-16 11:13:30 -04:00
client_list_test.go mcp: allow any value for schemas (#517) 2025-09-26 11:55:54 -04:00
client_test.go all: expose JSON-RPC error codes, and support URLElicitationRequired errors (#655) 2025-12-01 11:29:17 -05:00
cmd.go mcp: speed up TestCommandTransportDuration 2025-09-12 12:00:29 -04:00
cmd_export_test.go mcp: speed up TestCommandTransportDuration 2025-09-12 12:00:29 -04:00
cmd_test.go mcp: fix goroutine leaks in unit tests (#496) 2025-10-16 11:13:30 -04:00
conformance_go124_test.go internal/mcp: update protocol versions 2025-06-18 08:11:16 -07:00
conformance_go125_test.go internal/mcp: update protocol versions 2025-06-18 08:11:16 -07:00
conformance_test.go Implement SEP-973 (#570) 2025-11-12 16:52:44 -05:00
content.go Implement SEP-973 (#570) 2025-11-12 16:52:44 -05:00
content_nil_test.go mcp: add CallToolResult.getError (#481) 2025-09-18 08:08:23 -04:00
content_test.go Implement SEP-973 (#570) 2025-11-12 16:52:44 -05:00
elicitation_test.go all: expose JSON-RPC error codes, and support URLElicitationRequired errors (#655) 2025-12-01 11:29:17 -05:00
error_test.go all: expose JSON-RPC error codes, and support URLElicitationRequired errors (#655) 2025-12-01 11:29:17 -05:00
event.go mcp: support SSE polling and server disconnects (SEP-1699) (#663) 2025-12-01 16:21:37 -05:00
event_test.go mcp: remove the StreamID type (#490) 2025-09-18 12:01:07 -04:00
features.go mcp: minor cleanup of some TODOs (#332) 2025-08-20 12:55:19 -04:00
features_test.go mcp: change tool handler design (#325) 2025-08-20 19:36:34 -04:00
logging.go mcp/server: enable server logging (#501) 2025-10-02 14:44:32 -04:00
mcp.go mcp: fix inaccurate package doc (#534) 2025-09-26 14:16:10 -04:00
mcp_example_test.go docs: add feature and troubleshooting documentation (#463) 2025-09-16 11:13:40 -04:00
mcp_test.go mcp/mcp_test: tests for elicit content validation (#676) 2025-12-03 10:12:07 -05:00
prompt.go mcp: align PromptHandler args with other handlers (#348) 2025-08-22 10:44:05 -04:00
protocol.go mcp: support url mode elicitation (#646) 2025-11-23 12:58:28 -05:00
protocol_test.go mcp: add CallToolResult.getError (#481) 2025-09-18 08:08:23 -04:00
requests.go mcp: support url mode elicitation (#646) 2025-11-23 12:58:28 -05:00
resource.go all: expose JSON-RPC error codes, and support URLElicitationRequired errors (#655) 2025-12-01 11:29:17 -05:00
resource_go124.go internal/mcp: add the FileResourceHandler method 2025-05-19 11:15:23 -07:00
resource_pre_go124.go internal/mcp: add the FileResourceHandler method 2025-05-19 11:15:23 -07:00
resource_test.go mcp/Resource: Refactor URI Template Matching with uritemplate Library (#100) 2025-07-08 15:52:54 -04:00
server.go all: expose JSON-RPC error codes, and support URLElicitationRequired errors (#655) 2025-12-01 11:29:17 -05:00
server_example_test.go doc: document logging (#497) 2025-09-19 11:58:58 -04:00
server_test.go mcp: validate tool names (#640) 2025-11-19 17:01:50 -05:00
session.go mcp: support stateless streamable sessions (#277) 2025-08-11 16:43:46 -04:00
shared.go mcp: support SSE polling and server disconnects (SEP-1699) (#663) 2025-12-01 16:21:37 -05:00
shared_test.go all: remove ServerRequest[T] for concrete T (#342) 2025-08-21 12:10:53 -04:00
sse.go SSE: Add support for SSE handler options (#508) 2025-09-19 13:01:57 -04:00
sse_example_test.go SSE: Add support for SSE handler options (#508) 2025-09-19 13:01:57 -04:00
sse_test.go SSE: Add support for SSE handler options (#508) 2025-09-19 13:01:57 -04:00
streamable.go auth, mcp: add UserID to TokenInfo for session hijacking prevention (#695) 2025-12-08 14:32:33 -05:00
streamable_bench_test.go mcp: don't persist failed streamable sessions (#605) 2025-10-27 16:29:16 -04:00
streamable_client_test.go mcp: better handling for streamable context cancellation (#677) 2025-12-03 12:26:50 -05:00
streamable_example_test.go mcp: fix goroutine leaks in unit tests (#496) 2025-10-16 11:13:30 -04:00
streamable_test.go auth, mcp: add UserID to TokenInfo for session hijacking prevention (#695) 2025-12-08 14:32:33 -05:00
tool.go mcp: validate tool names (#640) 2025-11-19 17:01:50 -05:00
tool_example_test.go mcp: allow any value for schemas (#517) 2025-09-26 11:55:54 -04:00
tool_test.go all: expose JSON-RPC error codes, and support URLElicitationRequired errors (#655) 2025-12-01 11:29:17 -05:00
transport.go mcp: better handling for streamable context cancellation (#677) 2025-12-03 12:26:50 -05:00
transport_example_test.go mcp: fix goroutine leaks in unit tests (#496) 2025-10-16 11:13:30 -04:00
transport_test.go fix: handle Windows CRLF in MCP client(#664) (#665) 2025-12-01 12:16:39 -05:00
util.go mcp: allow any value for schemas (#517) 2025-09-26 11:55:54 -04:00