Commit graph

417 commits

Author SHA1 Message Date
Jerome
170e656dcb
Merge pull request #163 from modelcontextprotocol/ashwin/claudemd
Add CLAUDE.md with SDK development guide
2025-02-27 09:47:34 +00:00
Ashwin Bhat
ac72918951
Add CLAUDE.md with SDK development guide
🤖 Generated with [Claude Code](https://docs.anthropic.com/s/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-02-26 16:10:31 -08:00
Jerome
42b1738d54
Merge pull request #157 from modelcontextprotocol/jerome/fix/no-mcp-header-in-metadata-fetching
* Check token expiry in requireAuth middleware
* Gracefully handle cors issues in metadata fetching (experienced due to MCP-Protocol-Version header)
* Don't set client secret expiry for public clients
2025-02-25 09:54:32 +00:00
Jerome
c521710b86
Lint 2025-02-25 09:51:17 +00:00
Justin Spahr-Summers
5c07636405
Merge pull request #152 from Ozamatash/feature/progress-timeout-reset
Add timeout reset on progress notifications
2025-02-24 20:54:18 +00:00
Jerome
8dfa64338e
Fixing up tests 2025-02-24 13:48:24 +00:00
Jerome
885590c099
Fixing tests 2025-02-24 13:39:58 +00:00
Jerome
26b47438c6
Tidy up CORS error catching 2025-02-24 10:39:38 +00:00
Jerome
aad2badb2f
Removed nested ternaries 2025-02-24 10:26:59 +00:00
Jerome
d5906b7cf2
Bumping version for auth release 1.6.0 2025-02-24 09:17:26 +00:00
Jerome
3b12961e2e
Added tests 2025-02-23 14:55:30 +00:00
Jerome
8a222e8b38
Don't set client secret expiry if public client 2025-02-23 10:59:05 +00:00
Jerome
2dc7fa5df8
Check token expiry in bearer auth 2025-02-23 10:57:26 +00:00
Jerome
1b8e94ca40
During metadata fetching, try with the MCP header, then without, then return undefined if both fail 2025-02-22 16:20:41 +00:00
Justin Spahr-Summers
80e148491c
Merge pull request #151 from modelcontextprotocol/justin/server-auth
Server implementation of MCP auth
2025-02-21 15:47:43 +00:00
Justin Spahr-Summers
f0777d2d1f
Client secrets should not be removed, but expiry checked in middleware 2025-02-21 12:11:51 +00:00
Justin Spahr-Summers
094b81f70d
Throw error if scopes are requested and client has none 2025-02-21 11:55:46 +00:00
Justin Spahr-Summers
fadcee3f14
Remove tests that are just testing a mock 2025-02-21 11:48:46 +00:00
Justin Spahr-Summers
529d017d94
Merge branch 'main' into justin/server-auth 2025-02-21 11:44:57 +00:00
Tuomas
b09240bc10 only return early from progress notification on actual timeout errors 2025-02-20 15:36:57 -06:00
Tuomas
28415d3917 Refactor progress notification timeout handling in protocol 2025-02-19 12:23:16 -06:00
Justin Spahr-Summers
506ae06b03
Merge pull request #150 from disintegrator/zod-to-json-schema-strict-unions
fix: drop unresolved union members in zod schemas
2025-02-19 14:26:13 +00:00
Justin Spahr-Summers
89bb5e8a8e
Merge pull request #154 from modelcontextprotocol/justin/esbuild-update
Update `esbuild` to resolve security advisory
2025-02-19 14:23:21 +00:00
Justin Spahr-Summers
bb5045bf90
Update esbuild to resolve security advisory 2025-02-19 14:21:09 +00:00
Justin Spahr-Summers
b8b816ca9f
Bearer auth middleware 2025-02-18 16:09:51 +00:00
Justin Spahr-Summers
c8f4d621a9
Render /authorize errors as JSON 2025-02-18 15:06:54 +00:00
Justin Spahr-Summers
7fb8e4a099
Catch and format standard error types in responses 2025-02-18 15:01:29 +00:00
Justin Spahr-Summers
57fe3b3fb0
Use standard error types in middleware 2025-02-18 14:18:13 +00:00
Justin Spahr-Summers
1dfb9aa709
Classes for standard OAuth error types 2025-02-18 14:15:47 +00:00
Justin Spahr-Summers
f6e47c4751
Add missing name to McpError 2025-02-18 14:15:22 +00:00
Justin Spahr-Summers
63db32236e
Set Cache-Control: no-store 2025-02-18 14:08:07 +00:00
Justin Spahr-Summers
7b81b4f672
Handle POST bodies in /authorize 2025-02-18 13:55:20 +00:00
Justin Spahr-Summers
85e3cadc6f
Fix Request type extension to not use namespacing 2025-02-18 13:18:50 +00:00
Justin Spahr-Summers
5d7bc7a035
Fix unused variable lint 2025-02-18 13:18:03 +00:00
Justin Spahr-Summers
8d62612479
Extract middleware for 405 Method Not Allowed 2025-02-18 13:13:05 +00:00
Justin Spahr-Summers
07e8ce9cd1
Fix router test after metadata key removed 2025-02-18 13:12:50 +00:00
Justin Spahr-Summers
48cddd9488
Pass through rate limits and other options cleanly from router 2025-02-18 11:25:42 +00:00
Justin Spahr-Summers
1415c2db92
Rate limiting on individual handlers 2025-02-18 11:21:07 +00:00
Justin Spahr-Summers
4d02ed9c97
Install express-rate-limit 2025-02-18 11:16:20 +00:00
Justin Spahr-Summers
36f9c6b260
Get tests passing 2025-02-18 11:00:46 +00:00
Justin Spahr-Summers
76938c77e8
Claude-authored tests 2025-02-18 10:57:24 +00:00
Justin Spahr-Summers
6a6dcbaf3c
Install supertest and @jest-mock/express 2025-02-18 10:34:29 +00:00
Justin Spahr-Summers
76b9781c85
Use URL.canParse instead of custom isValidUrl 2025-02-18 10:33:21 +00:00
Justin Spahr-Summers
f292b12eec
Remove generateToken until needed 2025-02-18 10:20:33 +00:00
Justin Spahr-Summers
bb49189bdf
Router for all MCP auth endpoints + behaviors 2025-02-18 10:16:32 +00:00
Justin Spahr-Summers
a6e78b7426
Add handler for auth server metadata 2025-02-18 09:52:45 +00:00
Justin Spahr-Summers
43f433c934
Match style for registration request handler 2025-02-18 09:47:11 +00:00
Justin Spahr-Summers
6830c92f76
Remove redundant comment 2025-02-18 09:45:19 +00:00
Justin Spahr-Summers
bff65e6746
Add client information to all OAuth provider methods 2025-02-18 09:44:25 +00:00
Justin Spahr-Summers
9abcccf2ed
Token revocation endpoint 2025-02-18 09:41:35 +00:00