LangSmith 远程 MCP 是由 LangSmith 托管的 模型上下文协议(MCP)服务器。它提供与独立 LangSmith MCP 服务器相同的工具(对话历史、提示、运行和追踪、数据集、实验、计费),无需单独部署。交互式 MCP 客户端通过 OAuth 连接,无需配置 API 密钥或请求头;程序化客户端可以通过 X-Api-Key 请求头使用 LangSmith API 密钥进行身份验证。 远程 MCP 可用于所有 LangSmith Cloud 区域,以及运行 v0.16 或更高版本的 自托管 LangSmith 部署(自托管部署还需要配置签名 JWKS——请参阅自托管 LangSmith)。使用早期版本的自托管部署应继续使用独立 LangSmith MCP 服务器。

端点

LangSmith Cloud:
Region
GCP US
GCP EU
GCP APAC
AWS US
服务器通过同一主机上的 /.well-known/oauth-authorization-server,根据 RFC 8414 自动发现其余 OAuth 元数据,因此兼容的 MCP 客户端只需要使用上述 URL。 自托管 LangSmith: https://<your-langsmith-host>/api/mcp,其中 <your-langsmith-host> 是 LangSmith 实例的主机名。

身份验证

远程 MCP 支持两种身份验证方式。交互式 MCP 客户端(Claude Code、Cursor 及类似客户端)使用 OAuth;无法完成基于浏览器登录的程序化或无头客户端使用 API 密钥。

OAuth

带有动态客户端注册(RFC 7591)的 OAuth 2.1 是交互式客户端的默认方式。兼容的 MCP 客户端会在首次使用时自动注册自身——无需预先配置客户端 ID,也无需管理 API 密钥。 注册后:
  1. 客户端会在浏览器中打开授权 URL。
  2. 你登录 LangSmith(或使用已有会话)并同意授权。
  3. 客户端会收到访问令牌和刷新令牌。
  4. 访问令牌过期后,客户端会自动刷新。
会话的权限范围受 LangSmith 用户和工作区权限限制——通过 MCP 服务器发起的调用只能查看你的账户有权查看的内容。

API 密钥

在每个请求的 X-Api-Key 请求头中发送 LangSmith API 密钥。这种方式适用于后端服务、脚本和 SDK,例如 AI SDK,因为这些场景不便使用交互式 OAuth 流程。 请求会以 API 密钥所有者的身份进行授权,并受该密钥的工作区和权限限制——与该密钥在 LangSmith API 其他位置拥有的授权相同。接受 workspace_id 参数的工具可以针对特定工作区;否则会使用该密钥所属的工作区。
X-Api-Key 请求头专用于远程 MCP。独立 LangSmith MCP 服务器使用不同的请求头 LANGSMITH-API-KEY。

快速开始

Claude Code

将服务器添加到项目的 .mcp.json 文件中(或者运行 claude mcp add --transport http -s user langsmith https://api.smith.langchain.com/mcp,以便将其安装到用户级别):
然后运行 /mcp 并选择 langsmith,完成 OAuth 流程。工具会以 mcp__langsmith__<tool_name> 的形式提供。

Deep Agents Code (dcode)

将服务器添加到用户级别的 ~/.deepagents/.mcp.json 文件中,使其在每个 Deep Agents Code 项目中都可用;或者将其添加到项目级别的 .mcp.json 文件中,使其仅在该项目中可用。有关发现位置和优先级规则,请参阅 Deep Agents Code MCP 工具文档。
然后通过以下两种方式之一完成 OAuth 登录流程:
  • 在 Deep Agents Code TUI 中运行 /mcp,选择 langsmith,并按照登录提示操作。
  • 在 shell 中运行:
启动 dcode,或重启正在运行的会话,以加载 LangSmith MCP 工具。在交互式会话中,运行 /mcp 可查看服务器状态和已加载的工具。

Cursor

添加到 Cursor 的 mcp.json:
Cursor 会在首次使用时提示你完成 OAuth 流程。

LangSmith CLI

LangSmith CLI 使用同一个 OAuth 服务器进行身份验证,因此 langsmith auth login 会通过 OAuth 设备流程登录,无需 API 密钥:
CLI 会输出一个激活 URL;打开该 URL 并批准授权后,CLI 会完成登录,并按配置文件将令牌存储在 ~/.langsmith/config.json 中。之后,它可以使用与远程 MCP 服务器相同的项目、追踪、运行、数据集、实验和线程。

AI SDK

要从 AI SDK 进行程序化使用,请通过 X-Api-Key 请求头使用 API 密钥进行身份验证,并使用内置的 http(可流式 HTTP)传输:
将 tools 直接传递给 streamText 或 generateText。远程 MCP 是无状态的,并通过标准可流式 HTTP 传输以 JSON 响应,因此内置传输可以直接使用——无需自定义传输。

其他客户端

任何支持可流式 HTTP 传输的 MCP 客户端,都可以仅使用上述 URL 进行连接——使用带动态客户端注册的 OAuth 2.1,或在 X-Api-Key 请求头中提供 LangSmith API 密钥。

已知的客户端不兼容性

OpenAI Codex CLI 无法与 LangSmith 远程 MCP 配合使用。Codex 在 OAuth 流程中遗漏了 MCP 授权规范要求的 RFC 8707 resource 参数,因此登录看似成功,但签发的令牌并未绑定到 LangSmith MCP,导致 initialize 因需要身份验证而失败。Codex 中有两个上游问题会影响令牌交换和授权请求(请参阅 openai/codex#20729 和 openai/codex#13891)。在此期间,请在 Codex 中使用 LangSmith CLI。LangSmith CLI 支持与 MCP 服务器相同的项目、追踪、运行、数据集、实验和线程,并支持原生 OAuth 登录。

可用工具

远程 MCP 提供与独立服务器相同的工具:
  • 对话和线程: get_thread_history
  • 提示管理: list_prompts、get_prompt_by_name、push_prompt
  • 追踪和运行: fetch_runs、list_projects
  • 数据集和示例: list_datasets、list_examples、read_dataset、read_example、create_dataset、update_examples
  • 实验和评估: list_experiments、run_experiment
  • 计费: get_billing_usage
有关参数和分页的详细信息,请参阅独立服务器参考——两个服务器共享相同的工具实现。

重新进行身份验证

如果客户端丢失会话(例如,在 LangSmith 账户中撤销访问权限,或刷新令牌失效),请从客户端触发重新身份验证:
  • Claude Code: 运行 /mcp,选择 langsmith,然后选择重新进行身份验证。
  • Cursor: 在 MCP 设置中禁用并重新启用服务器。
  • 其他客户端: 查看客户端的 MCP 设置界面。

自托管 LangSmith

运行 v0.16 或更高版本的自托管 LangSmith 部署会在 https://<your-langsmith-host>/api/mcp 提供远程 MCP。启用后,身份验证方式和工具集与 LangSmith Cloud 完全相同。

启用远程 MCP

设置 config.hostname 后,远程 MCP 及其 OAuth 授权服务器会自动连接,但在提供签名 JWKS 之前,它们会保持**未启用(404)**状态。这是 LangSmith Cloud 会为你处理的唯一配置项。启用方法如下:
  1. 生成 Ed25519(OKP)JWKS。 RSA 密钥会被拒绝。例如,可以使用 step:
  2. 将其提供给 chart,作为 config.signingJwks(存储在 chart secret 中),或作为现有 secret中的 langsmith_signing_jwks 密钥:
    不要通过 commonEnv 或 extraEnv 直接设置 LANGSMITH_SIGNING_JWKS——chart 已经从 secret 中为其完成配置,手动复制会因重复的环境变量而导致安装失败。请改用 config.signingJwks 或 config.existingSecretName。
升级后,OAuth 发现端点和 /api/mcp 将处于启用状态。使用以下命令验证:
对于使用早期版本的部署,请在自己的环境中运行独立 LangSmith MCP 服务器,并将其 LANGSMITH_ENDPOINT 指向你的自托管实例。