fastmcp/docs/clients
nate nowack 2a2080c6c7
add independent client groups (#4904)
* feat(client): add experimental independent client groups

🤖 Generated with Pi

* refactor(client): narrow client group naming policy

🤖 Generated with Pi

* fix(client): avoid repeated discovery for unknown tools

🤖 Generated with Pi

* feat(client): expose client group tool routes

🤖 Generated with Pi

* docs(client): compare client and session groups

🤖 Generated with Pi

* docs(client): clarify modern session group gap

🤖 Generated with OpenAI Codex

* refactor(client): align client group call signatures with Client

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DrQJXPeMepQgJay5xF91yE

* docs(client): cross-link client groups from multi-server config docs

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DrQJXPeMepQgJay5xF91yE

* refactor(client): promote client group out of experimental

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DrQJXPeMepQgJay5xF91yE

* fix(client): harden client group invariants

Immutable membership, race-free group entry, and per-route connection checks so one dead server does not fail calls routed to healthy servers.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DrQJXPeMepQgJay5xF91yE

* test(client): satisfy ty on immutable membership test

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DrQJXPeMepQgJay5xF91yE

* perf(client): connect group clients concurrently

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DrQJXPeMepQgJay5xF91yE

* fix(client): refresh group catalog past client response caches

Explicit group.list_tools() now defaults to cache_mode='refresh' via a new cache_mode parameter on Client.list_tools, so a cache-hinted server cannot leave the documented refresh mechanism serving a stale catalog. Lazy cold-start discovery still allows cache hits.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DrQJXPeMepQgJay5xF91yE

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-27 21:21:48 -05:00
..
auth Add machine-to-machine client authentication (#4583) 2026-07-21 12:27:08 -04:00
client-groups.mdx add independent client groups (#4904) 2026-08-27 21:21:48 -05:00
client-only-package.mdx fix(docs): use valid FA icon on client-only package page (#4139) 2026-05-14 22:14:38 -04:00
client.mdx add independent client groups (#4904) 2026-08-27 21:21:48 -05:00
elicitation.mdx Elicitation: state the era split once, not twice 2026-07-27 09:43:52 -04:00
fastmcp-remote.mdx Align client, Apps, and integration docs (#4261) 2026-07-19 14:30:51 -04:00
logging.mdx Improve the v4 docs (#4707) 2026-07-29 09:51:13 -04:00
notifications.mdx Use mcp.types directly instead of aliasing to mcp_types in docs (#4696) 2026-07-28 19:08:44 -04:00
progress.mdx Restructure documentation for FastMCP 3.0 (#2951) 2026-01-19 21:33:35 -05:00
prompts.mdx Trim fastmcp.types to FastMCP-unique types only 2026-07-20 20:53:11 -04:00
resources.mdx Improve the v4 docs (#4707) 2026-07-29 09:51:13 -04:00
roots.mdx Keep the sampling conformance scenario live; fix roots example URIs 2026-07-27 09:35:30 -04:00
sampling.mdx Move to the stable MCP Python SDK 2.0.0 (#4655) 2026-07-28 16:31:49 -04:00
tasks.mdx v4 docs quality pass: stale task/era claims, broken links, polish (#4619) 2026-07-23 20:42:13 -04:00
tools.mdx Trim fastmcp.types to FastMCP-unique types only 2026-07-20 20:53:11 -04:00
transports.mdx Merge remote-tracking branch 'origin/main' into feature/client-auto-default 2026-07-20 12:02:38 -04:00