test_auto_append_betas_for_mcp_servers() — langchain Function Reference
Architecture documentation for the test_auto_append_betas_for_mcp_servers() function in test_chat_models.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 4d8481b5_0a40_c0d9_0e0a_5c081905d698["test_auto_append_betas_for_mcp_servers()"] 18428dc5_a41b_90c6_88ad_615296ee3311["test_chat_models.py"] 4d8481b5_0a40_c0d9_0e0a_5c081905d698 -->|defined in| 18428dc5_a41b_90c6_88ad_615296ee3311 style 4d8481b5_0a40_c0d9_0e0a_5c081905d698 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/anthropic/tests/unit_tests/test_chat_models.py lines 1971–2052
def test_auto_append_betas_for_mcp_servers() -> None:
"""Test that `mcp-client-2025-11-20` beta is automatically appended
for `mcp_servers`."""
model = ChatAnthropic(model=MODEL_NAME) # type: ignore[call-arg]
mcp_servers = [
{
"type": "url",
"url": "https://mcp.example.com/mcp",
"name": "example",
}
]
payload = model._get_request_payload(
"Test query",
mcp_servers=mcp_servers, # type: ignore[arg-type]
)
assert payload["betas"] == ["mcp-client-2025-11-20"]
assert payload["mcp_servers"] == mcp_servers
# Test merging with existing betas
model = ChatAnthropic(
model=MODEL_NAME,
betas=["context-management-2025-06-27"],
)
payload = model._get_request_payload(
"Test query",
mcp_servers=mcp_servers, # type: ignore[arg-type]
)
assert payload["betas"] == [
"context-management-2025-06-27",
"mcp-client-2025-11-20",
]
# Test that it doesn't duplicate if beta already present
model = ChatAnthropic(
model=MODEL_NAME,
betas=["mcp-client-2025-11-20"],
)
payload = model._get_request_payload(
"Test query",
mcp_servers=mcp_servers, # type: ignore[arg-type]
)
assert payload["betas"] == ["mcp-client-2025-11-20"]
# Test with mcp_servers set on model initialization
model = ChatAnthropic(
model=MODEL_NAME,
mcp_servers=mcp_servers, # type: ignore[arg-type]
)
payload = model._get_request_payload("Test query")
assert payload["betas"] == ["mcp-client-2025-11-20"]
assert payload["mcp_servers"] == mcp_servers
# Test with existing betas and mcp_servers on model initialization
model = ChatAnthropic(
model=MODEL_NAME,
betas=["context-management-2025-06-27"],
mcp_servers=mcp_servers, # type: ignore[arg-type]
)
payload = model._get_request_payload("Test query")
assert payload["betas"] == [
"context-management-2025-06-27",
"mcp-client-2025-11-20",
]
# Test that beta is not appended when mcp_servers is None
model = ChatAnthropic(model=MODEL_NAME)
payload = model._get_request_payload("Test query")
assert "betas" not in payload or payload["betas"] is None
# Test combining mcp_servers with tool types that require betas
model = ChatAnthropic(model=MODEL_NAME)
tool = {"type": "web_fetch_20250910", "name": "web_fetch"}
model_with_tools = model.bind_tools([tool])
payload = model_with_tools._get_request_payload( # type: ignore[attr-defined]
"Test query",
mcp_servers=mcp_servers,
**model_with_tools.kwargs, # type: ignore[attr-defined]
)
assert set(payload["betas"]) == {
"web-fetch-2025-09-10",
"mcp-client-2025-11-20",
Domain
Subdomains
Source
Frequently Asked Questions
What does test_auto_append_betas_for_mcp_servers() do?
test_auto_append_betas_for_mcp_servers() is a function in the langchain codebase, defined in libs/partners/anthropic/tests/unit_tests/test_chat_models.py.
Where is test_auto_append_betas_for_mcp_servers() defined?
test_auto_append_betas_for_mcp_servers() is defined in libs/partners/anthropic/tests/unit_tests/test_chat_models.py at line 1971.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free