Flowise协议服务器

mcp-flowise是一个实现模型上下文协议(MCP)的Python包,与Flowise API集成,提供标准化且灵活的方式来列出聊天流、创建预测以及动态注册工具。

  • by andydukes
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 andydukes/mcp-flowise

使用说明

mcp流程

mcp-flowise 是实现与Flowise API集成的模型上下文协议(MCP)服务器的Python包。它提供了一种标准化和灵活的方式来列出聊天流、创建预测,并为Flowise聊天流或助手动态注册工具。

它支持两种操作模式:

  • 低电平模式(默认):为从Flowise API检索的所有聊天流动态注册工具。
  • 快速MCP模式:提供静态工具,用于列出聊天流和创建预测,适用于更简单的配置。

特性

  • 动态工具曝光:低级模式为每个聊天流或助手动态创建工具。
  • 更简单的配置:FastMCP模式暴露 list_chatflows 和 create_prediction 用于最小设置的工具。
  • 灵活过滤:这两种模式都支持通过白名单和黑名单按ID或名称(正则表达式)过滤聊天流。
  • MCP集成:无缝集成到MCP工作流程中。

安装

通过Smithery安装

通过以下方式自动安装Claude Desktop的mcp-flowise 史密瑟里:

npx -y @smithery/cli install @andydukes/mcp-flowise --client claude

先决条件

  • Python 3.12或更高版本
  • uvx 包管理器

通过安装和运行 uvx

确认您可以使用以下命令直接从GitHub存储库运行服务器 uvx:

uvx --from git+https://github.com/andydukes/mcp-flowise mcp-flowise

添加到MCP生态系统(mcpServers 配置)

您可以集成 mcp-flowise 通过将其添加到MCP生态系统中 mcpServers 配置。例子:

{
    "mcpServers": {
        "mcp-flowise": {
            "command": "uvx",
            "args": [
                "--from",
                "git+https://github.com/andydukes/mcp-flowise",
                "mcp-flowise"
            ],
            "env": {
                "FLOWISE_API_KEY": "${FLOWISE_API_KEY}",
                "FLOWISE_API_ENDPOINT": "${FLOWISE_API_ENDPOINT}"
            }
        }
    }
}

操作模式

1.快速MCP模式(简单模式)

通过设置启用 FLOWISE_SIMPLE_MODE=true.此模式:

  • 显示两个工具: list_chatflows 和 create_prediction.
  • 允许使用静态配置 FLOWISE_CHATFLOW_ID 或 FLOWISE_ASSISTANT_ID.
  • 通过列出所有可用的聊天流 list_chatflows.

2.低电平模式(FLOWISE_SIMPLE_Mode=假)

特性:

  • 将所有聊天流动态注册为单独的工具。
  • 工具以聊天流名称命名(规范化)。
  • 使用来自 FLOWISE_CHATFLOW_DESCRIPTIONS 变量,如果没有提供描述,则回退到聊天流名称。

示例:

  • my_tool(question: str) -> str 为聊天流动态创建。

在Windows上运行 uvx

如果你正在使用 uvx 在Windows上遇到问题 --from git+https,建议的解决方案是在本地克隆存储库并配置 mcpServers 完整的路径 uvx.exe 以及克隆的存储库。此外,包括 APPDATA, LOGLEVEL,以及所需的其他环境变量。

MCP生态系统的示例配置(mcpServers 在Windows上)

{
  "mcpServers": {
    "flowise": {
      "command": "C:\\Users\\matth\\.local\\bin\\uvx.exe",
      "args": [
        "--from",
        "C:\\Users\\matth\\downloads\\mcp-flowise",
        "mcp-flowise"
      ],
      "env": {
        "LOGLEVEL": "ERROR",
        "APPDATA": "C:\\Users\\matth\\AppData\\Roaming",
        "FLOWISE_API_KEY": "your-api-key-goes-here",
        "FLOWISE_API_ENDPOINT": "http://localhost:3010/"
      }
    }
  }
}

备注

  • 完整路径:对两者都使用完整路径 uvx.exe 以及克隆的存储库。
  • 环境变量:点 APPDATA 添加到您的Windows用户配置文件(例如。, C:\\Users\\<username>\\AppData\\Roaming)如果需要的话。
  • 日志级别:调整 LOGLEVEL 根据需要(ERROR, INFO, DEBUG等等)。

环境变量

将军

  • FLOWISE_API_KEY:您的Flowise API Bearer代币(必需的).
  • FLOWISE_API_ENDPOINT:Flowise的基本URL(默认值: http://localhost:3010).

低电平模式(默认)

  • FLOWISE_CHATFLOW_DESCRIPTIONS:逗号分隔的列表 chatflow_id:description 对。例子:
    FLOWISE_CHATFLOW_DESCRIPTIONS="abc123:Chatflow One,xyz789:Chatflow Two"
    

快速MCP模式(FLOWISE_SIMPLE_MODE=true)

  • FLOWISE_CHATFLOW_ID:单个聊天流ID(可选)。
  • FLOWISE_ASSISTANT_ID:单个助理ID(可选)。
  • FLOWISE_CHATFLOW_DESCRIPTION:暴露的单个工具的可选描述。

过滤聊天流

使用以下环境变量,可以在两种模式下应用过滤器:

  • 按ID列出的白名单:
    FLOWISE_WHITELIST_ID="id1,id2,id3"
  • 按ID列出黑名单:
    FLOWISE_BLACKLIST_ID="id4,id5"
  • 按名称列出的白名单(Regex):
    FLOWISE_WHITELIST_NAME_REGEX=".*important.*"
  • 按名称列出的黑名单(Regex):
    FLOWISE_BLACKLIST_NAME_REGEX=".*deprecated.*"

备注:白名单优先于黑名单。如果两者都设置,则应用最严格的规则。

安全

  • 保护您的API密钥:确保 FLOWISE_API_KEY 保持安全,不会暴露在日志或存储库中。
  • 环境配置:使用 .env 敏感配置的文件或环境变量。

添加 .env 到你的 .gitignore:

# .gitignore
.env

故障排除

  • 缺少API密钥:确保 FLOWISE_API_KEY 设置正确。
  • 配置无效:如果两者都有 FLOWISE_CHATFLOW_ID 和 FLOWISE_ASSISTANT_ID 如果设置了,服务器将拒绝启动。
  • 连接错误:验证 FLOWISE_API_ENDPOINT 是可达的。

许可证

该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。

全部

  • [x] Fastmcp模式
  • [x] 低电平模式
  • [x] 过滤
  • [x] Claude桌面集成
  • []助理