S

Selector AI MCP服务

@automateyournetwork/selector-mcp-server
0 Stars 332 次浏览 automateyournetwork 更新于 2026-08-23

一种模型上下文协议(MCP)服务器,通过支持流式的服务器和基于Docker的客户端(通过标准输入/输出进行通信),实现与Selector AI的实时交互式AI聊天。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

Selector AI FastMCP

本仓库提供了Selector AI的Model Context Protocol (MCP)的完整实现。它包括一个支持流式处理的服务器和一个基于Docker的交互式客户端,该客户端通过stdin/stdout进行通信。

✨ 特性

✅ 服务器

  • 与FastMCP兼容并基于Python构建
  • 支持实时SSE流
  • 与Selector AI的交互式AI聊天
  • 最小化的样板代码
  • 内置健康检查以支持容器编排
  • 请求/响应日志记录及重试机制

✅ 客户端

  • Python客户端通过Docker启动服务器
  • 同时支持CLI和编程访问
  • 通过stdin和stdout读写
  • 使用.env文件配置环境变量

🚀 快速开始

前提条件

  • Python 3.8+
  • Docker
  • Selector AI API密钥
  • Selector API URL

⚙️ 安装

克隆仓库

git clone [https://github.com/automateyournetwork/selector-mcp-server](https://link.0)
cd selector-ai-mcp

安装Python依赖

pip install -r requirements.txt

设置环境变量 创建一个.env文件:

SELECTOR_URL=[https://your-selector-api-url](https://link.1)
SELECTOR_AI_API_KEY=your-api-key

🐳 Dockerfile

服务器在一个轻量级容器中运行,使用以下Dockerfile:

FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "-u", "mcp_server.py"]

HEALTHCHECK --interval=30s --timeout=30s --start-period=5s \
  CMD python -c "import socket; s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM); s.connect('/tmp/mcp.sock'); s.send(b'{\"tool_name\": \"ready\"}\\n'); data = s.recv(1024); s.close(); import json; result = json.loads(data); exit(0 if result.get('status') == 'ready' else 1)" || exit 1

构建Docker镜像

docker build -t selector-mcp .

🧠 使用客户端

启动客户端

这将启动Docker容器并打开一个交互式shell。

python mcp_client.py

示例CLI会话

You> What is AIOps?
Selector> AIOps refers to the application of AI to IT operations...

编程访问

from selector_client import call_tool, spawn_server

proc = spawn_server()

call_tool(proc, "ready")

response = call_tool(proc, "ask_selector", {"content": "What is AIOps?"})

print(response)

🖥️ 与Claude Desktop一起使用

如果您正在与Claude Desktop集成,可以运行此服务器并在本地暴露一个socket或HTTP端点:

使用Docker或原生方式运行服务器:

python mcp_server.py

从Claude Desktop的外部工具配置中连接到socket或HTTP端点。

确保您的消息格式如下:

{
  "method": "tools/call",
  "tool_name": "ask_selector",
  "content": "What can you tell me about device S6?"
}

Claude Desktop将通过stdout接收AI的结构化响应。

🛠️ 构建您自己的容器

要自定义此设置:

  • Fork或克隆此仓库

  • 修改selector_fastmcp_server.py以集成您首选的模型或路由逻辑

  • 重建Docker镜像:

    docker build -t my-custom-mcp .
    
  • 更新客户端以启动my-custom-mcp而不是默认镜像:

    "docker", "run", "-i", "--rm", "my-custom-mcp"
    

📁 项目结构

selector-ai-mcp/
├── selector_fastmcp_server.py     # Server: MCP + Selector AI integration
├── selector_client.py             # Client: Docker + stdin/stdout CLI
├── Dockerfile                     # Container config
├── requirements.txt               # Python deps
├── .env                           # Environment secrets
└── README.md                      # You are here

✅ 要求

requirements.txt 中的依赖项:

requests

python-dotenv

📜 许可证

Apache License 2.0

相关 MCP 服务