Back to MCP directory
publicPublicdnsLocal runtime

selector-mcp-server

Selector AI的MCP协议实现,提供实时交互的AI服务

article

README

🚀 选择器AI快速上下文协议(Selector AI FastMCP)

此仓库提供了Selector AI的Model Context Protocol(MCP)的完整实现。它包含一个支持实时流式传输的服务器,以及一个基于Docker的交互式客户端,客户端通过stdin/stdout进行通信,为用户提供便捷的交互体验。

🚀 快速开始

先决条件

  • Python 3.8及以上版本
  • Docker
  • Selector AI API密钥
  • Selector API URL

安装

  1. 克隆仓库:
git clone https://github.com/automateyournetwork/selector-mcp-server
cd selector-ai-mcp
  1. 安装Python依赖项:
pip install -r requirements.txt
  1. 设置环境变量:创建一个.env文件:
SELECTOR_URL=https://your-selector-api-url
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

🧠 使用客户端

启动客户端:

python mcp_client.py

示例CLI会话

You> What is AIOps?
Selector> AIOps指的是将AI应用于IT运维...

程序化访问

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集成

运行服务器:

python mcp_server.py

在Claude Desktop中配置本地端点。确保消息格式如下:

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

🛠️ 自定义构建

  1. 叉取或克隆此仓库
  2. 修改selector_fastmcp_server.py以集成您首选的模型或路由逻辑
  3. 重建Docker镜像:
docker build -t your-image-name .
  1. 配置客户端设置,例如在.env文件中指定API密钥和URL

✨ 主要特性

✅ 服务器

  • FastMCP兼容且基于Python构建
  • 实时SSE流式传输支持
  • 与Selector AI的交互式AI聊天
  • 最小化样板代码
  • 内置健康检查,适用于容器编排
  • 请求/响应日志记录和重试功能

✅ 客户端

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

📚 详细文档

📁 项目结构

  • selector_fastmcp_server.py: 主服务器逻辑
  • selector_client.py: 客户端功能实现
  • requirements.txt: Python依赖项列表
  • .env.example: 环境变量示例

✅ 要求

  • 必须安装Python 3.8或更高版本
  • 需要Docker用于容器化部署

📄 许可证

本项目使用Apache 2.0许可证。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client