Paul Carleton
ca0c774ec9
Use token introspection instead of hardcoded token validation
...
Replace the hardcoded token prefix validation with OAuth 2.0 Token
Introspection (RFC 7662). The server now:
- Discovers the introspection endpoint from AS metadata
- Calls the introspection endpoint to validate each token
- Extracts client_id, scopes, and expiry from the response
This properly integrates with the authorization server rather than
relying on hardcoded token patterns.
2026-01-14 12:14:24 +00:00
Paul Carleton
327930fe75
Add conformance auth server for OAuth server authentication testing
...
Adds a new example server that implements OAuth bearer token authentication
for use with the MCP conformance test framework's server auth tests.
The server:
- Returns 401 with WWW-Authenticate header for unauthenticated requests
- Serves Protected Resource Metadata at /.well-known/oauth-protected-resource
- Validates tokens starting with 'test-token' or 'cc-token'
- Implements echo and test-tool tools for testing authenticated calls
Usage:
MCP_CONFORMANCE_AUTH_SERVER_URL=http://localhost:3000 \
uv run mcp-conformance-auth-server
2026-01-14 11:57:34 +00:00
Yugan
2aa1ad2a69
feat: standardize timeout values to floats in seconds ( #1766 )
2025-12-19 12:22:56 +00:00
Marcelo Trylesinski
a3a4b8d11a
Add streamable_http_client which accepts httpx.AsyncClient instead of httpx_client_factory ( #1177 )
...
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com >
2025-12-10 16:39:00 +00:00
Tyler Mailman
72a34002aa
fix: add lifespan context manager to StreamableHTTP mounting examples ( #1669 )
...
Co-authored-by: TheMailmans <tyler@example.com >
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com >
2025-12-03 22:08:21 +00:00
Felix Weinberger
fa851d93a2
feat: backwards-compatible create_message overloads for SEP-1577 ( #1713 )
2025-12-02 13:17:45 +00:00
Paul Carleton
f82b0c9371
Support client_credentials flow with JWT and Basic auth ( #1663 )
...
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com >
2025-12-02 12:53:55 +00:00
Felix Weinberger
281fd4765e
Add SSE polling support (SEP-1699) ( #1654 )
2025-12-02 11:44:49 +00:00
Max Isbey
c92bb2f7ff
SEP-1686: Tasks ( #1645 )
2025-11-28 18:51:58 +00:00
Chris Coutinho
02b7889929
Implement SEP-1036: URL mode elicitation for secure out-of-band interactions ( #1580 )
...
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com >
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com >
2025-11-25 11:00:21 +00:00
Paul Carleton
f22501315e
feat: implement SEP-991 URL-based client ID (CIMD) support ( #1652 )
...
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com >
2025-11-24 17:21:03 +00:00
Paul Carleton
998f0ee4db
[auth][conformance] add conformance auth client ( #1640 )
...
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com >
2025-11-24 13:52:04 +00:00
Tapan Chugh
b19fa6f279
SEP-1330: Elicitation Enum Schema Improvements and Standards Compliance ( #1246 )
...
Co-authored-by: Tapan Chugh <tapanc@cs.washington.edu >
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com >
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com >
2025-11-23 23:32:08 +00:00
Olivier Chafik
71c475588f
Implement SEP-1577 - Sampling With Tools ( #1594 )
...
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com >
Co-authored-by: Claude <noreply@anthropic.com >
2025-11-22 23:58:14 -05:00
Jon Shea
c51936f61f
Add client_secret_basic authentication support ( #1334 )
...
Co-authored-by: Paul Carleton <paulc@anthropic.com >
2025-11-20 20:53:37 +00:00
adam jones
fcffa14b5b
docs: Update examples to use stateless HTTP with JSON responses ( #1499 )
Main branch checks / checks (push) Failing after 0s
2025-11-20 15:06:37 +00:00
Felix Weinberger
be730674ad
Add SEP-1034 conformance test support to everything-server ( #1604 )
...
Co-authored-by: Max Isbey <224885523+maxisbey@users.noreply.github.com >
2025-11-11 17:44:23 +00:00
Max Isbey
a864840825
Add end-of-file-fixer pre-commit hook ( #1610 )
2025-11-11 13:23:08 +00:00
Felix Weinberger
da4fce2195
Add everything-server for comprehensive MCP conformance testing ( #1587 )
2025-11-09 13:45:37 +00:00
Paul Carleton
6f2cd0cef0
Fix auth client example URL handling for oauth provider ( #1549 )
Main branch checks / checks (push) Failing after 0s
2025-10-30 15:35:44 +00:00
Luca Chang
f161149680
Implement RFC 7523 JWT flows ( #1247 )
...
Co-authored-by: Yann Jouanin <yann.jouanin@valueandco.com >
2025-10-29 16:48:08 +00:00
Yukuan Jia
673423da0d
fix: replace deprecated dev-dependencies in examples/clients ( #1518 )
2025-10-28 14:09:14 +00:00
Yukuan Jia
340af403bd
Replace deprecated dev-dependencies with dependency-groups ( #1488 )
...
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com >
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com >
2025-10-23 17:22:16 -07:00
Brandon Shar
1200ba0082
Allow CallToolResult to be returned directly to support _meta field for OpenAI Apps ( #1459 )
...
Co-authored-by: Max Isbey <224885523+maxisbey@users.noreply.github.com >
2025-10-21 18:52:08 +00:00
Luca Chang
c733eec5d9
Make client examples workspaces to reflect package code ( #1466 )
2025-10-17 17:13:39 +01:00
Felix Weinberger
de89457683
fix: send params as empty object for list methods without cursor ( #1453 )
2025-10-14 11:11:38 +01:00
Rocky Haotian Du
eb34ab7c72
fix: Remove unnecessary constructor from ResourceServerSettings ( #1424 )
...
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com >
2025-10-14 09:21:15 +02:00
Felix Weinberger
7a933fe5da
Fix workspace configuration error with structured_output_lowlevel.py ( #1471 )
...
Co-authored-by: lorenss-m <saeclmusic@gmail.com >
2025-10-13 15:53:46 +01:00
Marcus Shu
df3e428ee8
Improve OAuth protected resource metadata URL construction per RFC 9728 ( #1407 )
2025-10-06 13:52:44 +01:00
Yukuan Jia
c81ff64e94
fix: fix the system message in simple-chatbot example ( #1394 )
2025-09-30 12:22:33 +01:00
Peter Alexander
80c0d23d48
Update Icon.sizes to use string array format ( #1411 )
2025-09-29 14:27:32 +01:00
Peter Alexander
71889d7387
Implementation of SEP 973 - Additional metadata + icons support ( #1357 )
Main branch checks / checks (push) Failing after 1s
2025-09-24 20:29:04 +01:00
Max Isbey
c0f165776d
Use streamable-http consistently in examples ( #1389 )
2025-09-23 20:19:14 +01:00
Max Isbey
4fb975c6dc
feat: add paginated list decorators for prompts, resources, and tools ( #1286 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-09-23 14:58:06 +01:00
Steve Billings
03e19f1c90
Fastmcp logging progress example ( #1270 )
...
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com >
2025-09-23 14:48:38 +01:00
Peter Alexander
356dfa692b
Update simple-resource example to use non-deprecated read_resource return type ( #1331 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-09-01 17:58:01 +01:00
jess
1644b822b3
changes structured temperature to not deadly ( #1328 )
2025-08-31 23:09:49 +00:00
Jerome
09e3a05e13
feat: Add CORS configuration for browser-based MCP clients ( #1059 )
...
Main branch checks / checks (push) Failing after 1s
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com >
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com >
2025-08-21 14:34:45 +01:00
Felix Weinberger
ff02c596a4
docs: clarify streamable_http_path configuration when mounting servers ( #1172 )
2025-08-21 14:15:37 +01:00
David Soria Parra
0926613714
Update dependencies and fix type issues ( #1268 )
...
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com >
2025-08-14 10:40:47 +01:00
Marcelo Trylesinski
c7671e470c
Add pyright strict mode on the whole project ( #1254 )
2025-08-11 18:56:37 +01:00
Inna Harper
41184ba6c8
README - replace code snippets with examples -- auth examples ( #1164 )
2025-07-17 18:36:20 +01:00
Dagang Wei
dd792977dd
Docs: Update CallToolResult parsing in README ( #812 )
...
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com >
2025-07-17 12:48:19 +01:00
Inna Harper
e975d0550b
README - replace code snippets with examples - streamable http ( #1155 )
2025-07-16 21:45:40 +01:00
Inna Harper
0b4ce00be2
README - replace code snippets with examples - add lowlevel to snippets ( #1150 )
2025-07-16 15:26:16 +01:00
Inna Harper
a10fec7fa6
README - replace code snippets with examples - direct execution and display utilities ( #1137 )
2025-07-14 15:54:36 +01:00
Inna Harper
9bf5160eea
README - replace code snippets with examples ( #1136 )
2025-07-14 13:57:47 +01:00
Stanley Law
6d092af6fd
chore: add markdownlint on pre-commit hook and lint md files ( #996 )
...
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com >
2025-07-10 09:43:49 +01:00
Inna Harper
4fee123e72
clean up log.error ( #1109 )
2025-07-09 11:15:14 +01:00
Inna Harper
adf327164a
Embed code snippets for README from executable examples ( #1055 )
2025-07-04 17:25:54 +01:00