AI代理集成服务

Wordware MCP是一个模型上下文协议服务器,将Wordware强大的代理功能与Claude和其他MCP兼容的AI助手集成,实现动态工具加载和智能参数处理。

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

使用说明

软件MCP

一个模型上下文协议(MCP)服务器,将Wordware强大的代理功能与Claude和其他兼容MCP的AI助手集成在一起。

概述

该项目通过Anthropic的模型上下文协议(MCP)在Claude等人工智能助手和Wordware的专业代理功能之间架起了一座桥梁。该集成基于配置从Wordware API动态加载工具,允许Claude访问任何专门的Wordware流。

特性

  • 🔄 动态工具加载 -根据配置自动从Wordware API加载工具
  • 🧠 智能模式检测 -自动检测并适应不同的工具输入模式
  • 🔍 高级参数处理 -处理各种输入格式(JSON、嵌套结构、字符串)
  • ⚙️ 稳健的错误处理 -全面的错误记录和事件循环管理
  • 🔑 简单身份验证 -轻松设置以连接您的Wordware帐户

先决条件

  • Python 3.8+
  • Wordware API凭据
  • Claude Desktop或其他MCP兼容客户端

安装

# Clone the repository
git clone https://github.com/yourusername/wordware-mcp.git
cd wordware-mcp

# Create a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Set up environment variables
cp .env.example .env
# Edit .env with your Wordware API credentials

配置

创建一个 tools_config.json 具有以下结构的文件:

{
  "tools": [
    {
      "id": "your-tool-id-1"
    },
    {
      "id": "your-tool-id-2"
    },
    {
      "id": "your-tool-id-3"
    }
  ]
}

您可以在此配置文件中指定任何Wordware工具ID,服务器将动态加载并将其注册为MCP工具。工具元数据,包括输入模式和描述,将直接从Wordware API获取。

要指定自定义配置文件路径,请使用 CONFIG_PATH 环境变量。

运行服务器

# Run with default settings
python server.py

# Run with debug logging
python server.py --debug

# Run with SSE transport on a specific port
python server.py --transport sse --host 127.0.0.1 --port 8000

# Or install in Claude Desktop
mcp install python server.py --name "Wordware Tools"

运作原理

Wordware MCP服务器的操作如下:

  1. 工具配置加载 -从配置文件中读取工具ID列表
  2. 动态工具注册 -对于每个工具ID:
    • 从Wordware API获取元数据
    • 检测输入架构要求
    • 创建相应的MCP工具功能
    • 在MCP服务器上注册该工具
  3. 请求处理 -当调用工具时:
    • 处理各种格式的输入参数(JSON对象、字符串、嵌套结构)
    • 根据工具要求调整参数格式
    • 将格式正确的请求发送到Wordware API
  4. 响应处理 -处理Wordware API响应:
    • 解析服务器发送事件(SSE)流
    • 收集所有输出值
    • 以用户友好的方式为Claude格式化响应

高级功能

智能参数处理

服务器自动处理不同的输入参数格式:

  • 直接参数: {"Full Name": "John Doe", "Company": "Acme Inc."}
  • kwargs格式的JSON字符串: {"kwargs": "{\"Full Name\": \"John Doe\", \"Company\": \"Acme Inc.\"}"}
  • 嵌套参数: {"kwargs": {"Full Name": "John Doe", "Company": "Acme Inc."}}

输入模式检测

服务器分析每个工具的输入模式以确定正确的格式:

  • 检测工具是否需要包装在 kwargs 对象
  • 提取内部属性以获得更好的文档
  • 自动调整每个工具的参数格式

错误处理和恢复

稳健的错误处理包括:

  • 事件循环监控和恢复
  • 详细记录所有请求和响应
  • 妥善处理HTTP错误和超时
  • 用于故障排除的全面错误消息

故障排除

  • 工具未在Claude Desktop中显示:确保服务器正在运行并在Claude Desktop设置中正确注册
  • 身份验证错误:检查您的Wordware API密钥是否在 .env 文件
  • 参数验证错误:验证输入格式是否符合工具的要求
  • 事件循环错误:如果看到“事件循环已关闭”错误,请尝试重新启动服务器

发展

要扩展或修改服务器,请执行以下操作:

# Run with debug logging
python server.py --debug

# Check the logs for detailed information
tail -f /path/to/your/logs/mcp.log

贡献

欢迎投稿!请随时提交拉取请求。

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

致谢