langflow mcp服务器
](https://www.npmjs.com/package/langflow-mcp-server) ](https://www.npmjs.com/package/langflow-mcp-server) ](https://github.com/nobrainer-tech/langflow-mcp/releases)   ](https://lobehub.com/mcp/nobrainer-tech-langflow-mcp)
模型上下文协议(MCP)服务器,为AI助手提供对Langflow工作流自动化平台的全面访问。
概述
langflow mcp服务器是langflow工作流自动化平台和人工智能模型之间的桥梁,使它们能够有效地理解和使用langflow流程。
API兼容性:此服务器基于 API文件 并支持Langflow API版本 1.7.2.
v3.0.0-合并工具模式
3.0.0版本引入 整合工具模式 -一种新的架构,将93个单独的工具组合在一起 15个基于行动的工具这大大减少了令牌的使用,并改善了AI助手的上下文管理。
| 模式 | 工具 | 最适合 |
|---|---|---|
| 标准 | 93种工具 | 全粒度控制 |
| 整合 | 15个工具 | 减少令牌使用,改善上下文 |
要启用合并模式,请执行以下操作:
LANGFLOW_CONSOLIDATED_TOOLS=true整合工具:
flow-所有流程操作(列表、获取、创建、更新、删除、下载、上传等)flow_execution-运行流(运行、Run_advanced、Run_session、webhook、进程、预测)build-构建操作(开始、状态、取消、顶点)folder-文件夹管理(列表、获取、创建、更新、删除、下载、上传)project-项目管理(列表、获取、创建、更新、删除、下载、上传)variable-变量操作(列表、创建、更新、删除)knowledge_base-知识库管理(列表、获取、删除、批量删除、上传)file-文件操作(列表、上传、下载、删除、获取图像)monitor-监控(构建、消息、会话、事务)user-用户管理(列表、获取、get_current、更新、重置密码)auth-身份验证(登录、自动登录、注销、刷新、api密钥)store-组件存储(列表、获取、标签、点赞)registration-用户注册(获取、注册)validation-代码/提示验证(代码、提示)system-系统信息(运行状况、版本、日志、图片、声音)
它提供结构化访问:
- 流量管理 -创建、读取、更新、删除和执行Langflow流
- 流程执行 -使用输入运行流并触发webhooks
- 构建操作 -编译、验证和监控流构建
- 导入/导出 -上传和下载流程和项目
- 组织 -管理文件夹和项目
- 配置 -管理全局变量
- 知识库 -管理RAG文件收集
- 组件发现 -列出所有可用的Langflow组件
快速开始
先决条件
- 系统上已安装Node.js
- 一个正在运行的Langflow实例
- Langflow API密钥
安装
# Install from npm
npm install -g langflow-mcp-server
# OR clone the repository
git clone https://github.com/nobrainer-tech/langflow-mcp.git
cd langflow-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Configure environment
cp .env.example .env
# Edit .env with your Langflow instance URL and API key配置
编辑 .env 文件:
LANGFLOW_BASE_URL=http://localhost:7860
LANGFLOW_API_KEY=your-api-key-here
MCP_MODE=stdio
LOG_LEVEL=infoClaude桌面设置
添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"langflow": {
"command": "npx",
"args": ["-y", "langflow-mcp-server"],
"env": {
"LANGFLOW_BASE_URL": "http://localhost:7860",
"LANGFLOW_API_KEY": "your-api-key-here",
"LANGFLOW_CONSOLIDATED_TOOLS": "true",
"MCP_MODE": "stdio",
"LOG_LEVEL": "error"
}
}
}
}替代方案(本地安装):
{
"mcpServers": {
"langflow": {
"command": "node",
"args": ["/absolute/path/to/langflow-mcp/dist/mcp/index.js"],
"env": {
"LANGFLOW_BASE_URL": "http://localhost:7860",
"LANGFLOW_API_KEY": "your-api-key-here",
"MCP_MODE": "stdio",
"LOG_LEVEL": "error"
}
}
}
}更新配置后重新启动Claude Desktop。
Docker部署
MCP服务器可以在Docker容器中运行,以便于部署和隔离。
Docker快速入门
# Clone the repository
git clone https://github.com/nobrainer-tech/langflow-mcp.git
cd langflow-mcp
# Create .env file with your configuration
cp .env.example .env
# Edit .env with your Langflow instance URL and API key
# Build and run with docker-compose
docker-compose up -d
# View logs
docker-compose logs -f
# Stop the server
docker-compose down构建Docker镜像
# Build the image
docker build -t langflow-mcp-server:latest .
# Run in stdio mode (for Claude Desktop)
docker run -it --rm \
-e LANGFLOW_BASE_URL=http://localhost:7860 \
-e LANGFLOW_API_KEY=your-api-key \
langflow-mcp-server:latest
# Run in HTTP mode (for remote access)
docker run -d \
-p 3000:3000 \
-e MCP_MODE=http \
-e PORT=3000 \
-e AUTH_TOKEN=your-secure-token \
-e LANGFLOW_BASE_URL=http://langflow:7860 \
-e LANGFLOW_API_KEY=your-api-key \
langflow-mcp-server:latestDocker编写配置
包括 docker-compose.yml 支持stdio和HTTP模式:
# STDIO mode (default)
environment:
- MCP_MODE=stdio
- LANGFLOW_BASE_URL=http://localhost:7860
- LANGFLOW_API_KEY=your-key
# HTTP mode
environment:
- MCP_MODE=http
- PORT=3000
- AUTH_TOKEN=your-secure-token弃用的工具
⚠️ 重要:此服务器包含4个不推荐使用的工具,这些工具与Langflow API 1.6.4中不推荐的终结点相匹配:
build_vertices-使用build_flow相反get_vertex-使用build_flow或get_flow相反stream_vertex_build-使用get_build_status改为流媒体get_task_status-使用get_build_status相反
这些工具是 默认启用 但标有⚠️ 警告。要禁用它们,请设置:
ENABLE_DEPRECATED_TOOLS=false可用的MCP工具
连接后,Claude可以使用:
- 标准模式:93个单独的工具(97个启用了已弃用的工具)
- 合并模式:15个基于行动的工具(建议减少代币使用)
标准模式工具(93个工具)
流量管理(6个工具)
create_flow-创建新的Langflow流程list_flows-列出所有带有分页和过滤功能的流get_flow-按ID获取特定流的详细信息update_flow-更新现有流delete_flow-删除单个流delete_flows-一次删除多个流
流执行(2个工具)
run_flow-使用输入配置执行流(支持流式传输)trigger_webhook-通过webhook端点触发流
导入/导出(3个工具)
upload_flow-从JSON数据上传流download_flows-下载多个流作为JSON导出get_basic_examples-获取预构建的示例流
文件夹管理(5个工具)
list_folders-列出所有带分页的文件夹create_folder-创建新文件夹get_folder-按ID获取文件夹详细信息update_folder-更新文件夹名称、描述或父文件夹delete_folder-删除文件夹
项目管理(7个工具)
list_projects-列出所有分页项目create_project-创建新项目get_project-按ID获取项目详细信息update_project-更新项目名称或描述delete_project-删除项目upload_project-从JSON数据上传项目download_project-将项目下载为JSON导出
变量管理(4个工具)
list_variables-列出所有全局变量create_variable-创建新变量update_variable-更新变量属性delete_variable-删除变量
构建操作(3个工具)
build_flow-构建/编译一个流并返回job_id以进行异步执行get_build_status-轮询特定作业的构建状态和事件cancel_build-取消正在运行的生成作业
知识库管理(4个工具)
list_knowledge_bases-列出所有可用的知识库get_knowledge_base-获取特定知识库的详细信息delete_knowledge_base-删除特定知识库bulk_delete_knowledge_bases-一次删除多个知识库
组件发现(1个工具)
list_components-列出所有可用的Langflow组件
文件管理(5个工具)
upload_file-将文件上传到特定流download_file-从流中下载文件list_files-列出流中的所有文件delete_file-从流中删除文件get_file_image-从流中获取图像文件
监控和分析(9个工具)
get_monitor_builds-获取流的构建执行历史记录get_monitor_messages-通过过滤查询聊天/消息历史记录get_monitor_message-获取特定消息的详细信息get_monitor_sessions-列出所有聊天会话IDget_monitor_session_messages-获取会话的所有消息migrate_monitor_session-在会话之间迁移消息get_monitor_transactions-列出流的事务日志delete_monitor_builds-删除流的生成历史记录delete_monitor_messages-按ID删除多条消息
顶点操作⚠️ *已弃用* (3个工具)
build_vertices⚠️ *已弃用* -获取流的顶点构建顺序(使用build_flow相反)get_vertex⚠️ *已弃用* -获取特定顶点/组件的详细信息(使用build_flow或get_flow相反)stream_vertex_build⚠️ *已弃用* -流式传输顶点的实时构建事件(使用get_build_status用流媒体代替)
用户管理(5个工具)
list_users-列出所有用户(仅限管理员)get_current_user-获取当前经过身份验证的用户信息get_user-获取特定用户的详细信息update_user-更新用户配置文件信息reset_user_password-重置用户密码(仅限管理员)
API密钥管理(3个工具)
list_api_keys-列出用户的所有API密钥create_api_key-创建新的API密钥delete_api_key-删除API密钥
自定义组件(2个工具)
list_custom_components-列出所有自定义组件create_custom_component-创建新的自定义组件
身份验证(4个工具)
login-使用用户名和密码进行身份验证auto_login-使用存储的凭据自动登录refresh_token-刷新身份验证令牌logout-注销并使会话无效
商店和市场(6个工具)
check_store-检查组件存储是否已启用check_store_api_key-验证存储API密钥list_store_components-浏览商店中的可用组件get_store_component-获取商店组件的详细信息list_store_tags-列出商店中的所有组件标签get_user_likes-获取用户喜欢的组件
验证工具(2个工具)
validate_code-验证自定义组件的Python代码validate_prompt-验证提示模板语法
高级执行(3个工具)
run_flow_advanced-具有完全控制的高级流执行process_flow-流的遗留流程端点predict_flow-流的传统预测端点
批处理和公共操作(3个工具)
get_public_flow-无需身份验证即可获取公共流batch_create_flows-在一个操作中创建多个流get_task_status⚠️ *已弃用* -获取异步任务的状态(使用get_build_status相反)
文件夹操作(2个工具)
download_folder-将整个文件夹下载为存档upload_folder-从存档上载文件夹
初学者和模板(2个工具)
list_starter_projects-列出可用的初学者模板upload_knowledge_base-上传文件以创建/更新知识库
简介和媒体(2个工具)
list_profile_pictures-列出可用的个人资料图片get_profile_picture-获取特定的个人资料图片
集成工具(1个工具)
list_elevenlabs_voices-列出ElevenLabs的文本转语音
系统与健康(3个工具)
get_version-获取Langflow API版本信息health_check-检查Langflow实例运行状况get_logs-检索系统日志(支持流式传输)
示例用法
// Create a new flow
create_flow({
name: "My Automation Flow",
description: "A flow that processes data"
})
// List all flows
list_flows({
page: 1,
size: 50
})
// Get flow details
get_flow({
flow_id: "flow-uuid-here"
})
// Update a flow
update_flow({
flow_id: "flow-uuid-here",
name: "Updated Flow Name"
})
// Execute a flow
run_flow({
flow_id_or_name: "my-flow-name",
input_request: {
input_value: "Hello World",
output_type: "chat",
input_type: "chat"
},
stream: false
})
// Trigger via webhook
trigger_webhook({
flow_id_or_name: "my-flow",
input_request: {
input_value: "Process this data"
}
})
// Build a flow (compile/validate)
build_flow({
flow_id: "flow-uuid-here",
log_builds: true,
event_delivery: "polling"
})
// Check build status
get_build_status({
job_id: "job-uuid-from-build",
event_delivery: "polling"
})
// List knowledge bases (RAG)
list_knowledge_bases()
// Get knowledge base details
get_knowledge_base({
kb_name: "my-documents"
})
// Create a folder
create_folder({
name: "My Flows",
description: "Organized flows"
})
// Create a project
create_project({
name: "My Project",
description: "Project description"
})
// Manage variables
create_variable({
name: "API_KEY",
value: "secret-key",
type: "string"
})
// Get basic examples
get_basic_examples()
// List all components
list_components()发展
# Build
npm run build
# Run in development mode
npm run dev
# Run tests
npm test
# Type checking
npm run typecheck项目结构
langflow-mcp/
├── src/
│ ├── mcp/
│ │ ├── index.ts # MCP server entry point
│ │ ├── server.ts # MCP server implementation
│ │ └── tools.ts # Tool definitions
│ ├── services/
│ │ └── langflow-client.ts # Langflow API client
│ ├── types/
│ │ └── index.ts # TypeScript types
│ └── utils/
│ └── logger.ts # Logging utility
├── .env.example # Example configuration
├── package.json
├── tsconfig.json
└── README.md归因
该项目的灵感来自并遵循以下结构 n8n mcp 罗穆阿尔德·楚隆科夫斯基。特别感谢n8n mcp项目提供了出色的mcp服务器架构和实现模式。
许可证
MIT许可证-有关详细信息,请参阅许可证。
贡献
欢迎投稿!拜托:
- 克隆该仓库
- 创建要素分支
- 运行测试(
npm test) - 提交拉取请求
致谢
- 郎福 工作流自动化平台团队
- Anthropic 对于模型上下文协议
- 会员/n8n-mcp 灵感与建筑
______________________________________________________________________
内置于❤️ 为Langflow社区
