跳到主要内容

Use Langflow as an MCP server

Langflow 与 Model Context Protocol (MCP) 集成,既可以作为 MCP 服务器,也可以作为 MCP 客户端。

本文介绍如何使用 Langflow 作为 MCP 服务器,将您的流程暴露为 工具,供 MCP 客户端 在生成响应时使用。

有关使用 Langflow 作为 MCP 客户端以及在流程中管理 MCP 服务器连接的信息,请参阅 使用 Langflow 作为 MCP 客户端

前提条件

将流程作为 MCP 工具提供服务

MCP 流程要求

流程必须包含 Chat Output 组件 才能被 MCP 客户端用作工具。

每个 Langflow 项目 都有一个 MCP 服务器,将项目的流程暴露为供 MCP 客户端使用的工具。

默认情况下,项目中的所有流程都会作为工具暴露在项目的 MCP 服务器上。 您可以通过管理 MCP 服务器设置来更改暴露的流程和工具元数据:

  1. 项目页面 上点击 MCP Server 选项卡,或者在编辑流程时,点击 Share,然后选择 MCP Server

    MCP server projects page

    Flows/Tools 部分列出了当前在此 MCP 服务器上作为工具提供的流程。

  2. 要切换暴露的流程,点击 Edit Tools,然后选择您希望作为工具暴露的流程。 要防止流程被用作工具,请清除第一列中的复选框。

  3. 关闭 MCP Server Tools 对话框以保存您的更改。

    MCP Server Tools

编辑流程工具名称和描述

工具名称和描述帮助 MCP 客户端确定您的流程提供哪些操作以及何时使用这些操作。 建议为所有提供给 MCP 客户端的工具提供清晰、描述性的名称和描述。

要编辑 Langflow MCP 服务器上流程工具的名称和描述,请执行以下操作:

  1. 项目页面 上点击 MCP Server 选项卡,或者在编辑流程时,点击 Share,然后选择 MCP Server

  2. 点击 Edit Tools

  3. 点击您要编辑的 DescriptionTool

    • 工具名称:输入一个名称,使代理在使用该流程作为工具时能够清楚地了解流程的功能。

    • 工具描述:输入一个完整、准确地描述流程执行的具体操作的描述。

  4. 关闭 MCP Server Tools 对话框以保存您的更改。

工具名称和描述的重要性

MCP 客户端使用工具名称和描述来确定在生成响应时使用哪些操作。

因为 MCP 客户端将您的 Langflow 项目视为一个单一的 MCP 服务器,其中所有启用的流程都列为工具,所以不清晰的名称和描述可能导致代理错误或不一致地选择工具。

例如,流程的默认工具名称是流程 ID,例如 adbbf8c7-0a34-493b-90ea-5e8b42f78b66。 这不会向代理提供有关流程类型或其用途的任何信息。

为了提供有关您流程的更多上下文,请在配置 Langflow 项目的 MCP 服务器时,确保清晰地命名和描述您的流程。

将这些名称和描述视为函数名称和代码注释。 使用清晰的语句来描述您的流程解决的问题。

示例:工具名称和描述的使用

例如,假设您基于 Document Q&A 模板创建了一个流程,该流程使用 LLM 来聊天讨论简历,然后您给该流程以下名称和描述:

  • 工具名称: document_qa_for_resume

  • 工具描述: A flow for analyzing Emily's resume.

将您的 Langflow MCP 服务器连接到 Cursor 后,您可以询问 Cursor 关于简历的信息,例如 What job experience does Emily have?。 使用您的工具名称和描述提供的上下文,代理可以决定使用 document_qa_for_resume MCP 工具来创建关于 Emily 简历的响应。 如有必要,代理会在生成响应之前请求使用流程工具的权限。

如果您询问不同的简历,例如 What job experience does Alex have?,代理可以确定 document_qa_for_resume 与此请求无关,因为工具描述指定该流程适用于 Emily 的简历。 在这种情况下,代理可能会使用另一个可用的工具,或者它可以通知您它没有访问 Alex 信息权限。

例如:


_10
I notice you're asking about Alex's job experience.
_10
Based on the available tools, I can see there is a Document QA for Resume flow that's designed for analyzing resumes.
_10
However, the description mentions it's for "Emily's resume" not Alex's. I don't have access to Alex's resume or job experience information.

将客户端连接到您的 Langflow MCP 服务器

Langflow 提供自动安装和代码片段,帮助您将 Langflow MCP 服务器部署到本地 MCP 客户端。

信息

自动安装选项仅适用于特定的 MCP 客户端,并且客户端必须安装在您的 Langflow 服务器本地。 如果您的客户端不受支持或从您的 Langflow 服务器远程安装,请使用 JSON 选项。

  1. 在您的 Langflow 实例本地安装 Cursor、Claude 或 Windsurf。

  2. 建议:为您的 MCP 服务器配置 authentication

  3. 在 Langflow 中,在 Projects 页面上,点击 MCP Server 标签页。

  4. Auto install 标签页上,找到您的 MCP 客户端提供商,然后点击 Add

您的 Langflow 项目的 MCP 服务器会自动添加到本地 Cursor、Claude 或 Windsurf 客户端的配置文件中。 例如,使用 Cursor 时,服务器配置会添加到 mcp.json 配置文件中。

即使所选客户端未安装,Langflow 也会尝试添加此配置。 要验证安装,请检查您客户端中的可用 MCP 服务器。

当您的 MCP 客户端连接到您的 Langflow 项目的 MCP 服务器后,您的流程将注册为工具。 Cursor 根据您的查询确定何时使用工具,并在必要时请求权限。 有关更多信息,请参阅您客户端的 MCP 文档,例如 Cursor 的 MCP 文档

MCP 服务器认证和环境变量

如果您的 Langflow 服务器启用了认证,您必须在 MCP 客户端配置中提供 Langflow API 密钥。

在这种情况下,您项目 MCP 服务器 选项卡中的代码模板会自动包含 --headerx-api-key 参数:


_14
{
_14
"mcpServers": {
_14
"PROJECT_NAME": {
_14
"command": "uvx",
_14
"args": [
_14
"mcp-proxy",
_14
"--headers",
_14
"x-api-key",
_14
"YOUR_API_KEY",
_14
"http://LANGFLOW_SERVER_ADDRESS/api/v1/mcp/project/PROJECT_ID/sse"
_14
]
_14
}
_14
}
_14
}

点击 生成 API 密钥,将新的 Langflow API 密钥自动插入到代码模板中。 或者,您可以用现有的 Langflow API 密钥替换 YOUR_API_KEY

显示生成 API 密钥按钮的 MCP 服务器选项卡

要在 MCP 服务器命令中包含其他环境变量,请使用包含键值对的环境变量的 env 对象:


_14
{
_14
"mcpServers": {
_14
"PROJECT_NAME": {
_14
"command": "uvx",
_14
"args": [
_14
"mcp-proxy",
_14
"http://LANGFLOW_SERVER_ADDRESS/api/v1/mcp/project/PROJECT_ID/sse"
_14
],
_14
"env": {
_14
"KEY": "VALUE"
_14
}
_14
}
_14
}
_14
}

在外部部署您的 Langflow MCP 服务器

要在外部部署您的 Langflow MCP 服务器,请参阅 部署公共 Langflow 服务器

使用 MCP Inspector 测试和调试流程

MCP Inspector 是用于测试和调试 MCP 服务器的常用工具。 您可以使用 MCP Inspector 监控您的流程,并深入了解它们如何被 MCP 服务器使用:

  1. 安装 MCP Inspector:


    _10
    npx @modelcontextprotocol/inspector

    有关配置 MCP Inspector 的更多信息,包括指定代理端口,请参阅 MCP Inspector GitHub 项目

  2. 打开网页浏览器并导航到 MCP Inspector UI。 默认地址是 http://localhost:6274

  3. 在 MCP Inspector UI 中,输入您的 Langflow 项目 MCP 服务器的连接详情:

    • 传输类型:选择 SSE
    • URL:输入 Langflow MCP 服务器的 sse 端点。例如:http://localhost:7860/api/v1/mcp/project/d359cbd4-6fa2-4002-9d53-fa05c645319c/sse

    如果您 已为 MCP 服务器配置了认证,请填写以下额外字段:

    • 传输类型:选择 STDIO
    • 命令uvx
    • 参数:输入以下参数列表,用空格分隔。将 YOUR_API_KEYLANGFLOW_SERVER_ADDRESSPROJECT_ID 的值替换为您的 Langflow MCP 服务器中的值。例如:

    _10
    mcp-proxy --headers x-api-key YOUR_API_KEY http://LANGFLOW_SERVER_ADDRESS/api/v1/mcp/project/PROJECT_ID/sse

  4. 点击 连接

    如果连接成功,您应该在 工具 选项卡中看到您项目的流程。 在此选项卡中,您可以监控您的流程如何被 MCP 注册为工具,并使用自定义输入值测试这些工具。

  5. 要退出 MCP Inspector,请在启动它的同一个终端窗口中按下 Control+C

排查 Langflow MCP 服务器问题

如果 Claude for Desktop 没有正确使用您服务器的工具,您可能需要在 claude_desktop_config.json 配置文件中明确指定本地 uvxnpx 可执行文件的路径。

  1. 要查找您的 UVX 路径,请运行 which uvx

    要查找您的 NPX 路径,请运行 which npx

  2. Replicate该路径,然后在您的 claude_desktop_config.json 文件中替换 PATH_TO_UVXPATH_TO_NPX


    _11
    {
    _11
    "mcpServers": {
    _11
    "PROJECT_NAME": {
    _11
    "command": "PATH_TO_UVX",
    _11
    "args": [
    _11
    "mcp-proxy",
    _11
    "http://LANGFLOW_SERVER_ADDRESS/api/v1/mcp/project/PROJECT_ID/sse"
    _11
    ]
    _11
    }
    _11
    }
    _11
    }

另请参阅

Search