消息协调协议服务器

MCP服务器是一个用于分布式系统通信和动作协调的参考实现,支持客户端注册、消息处理和路由、系统监控等功能。

  • by ckz
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 ckz/mcp_server_research

使用说明

MCP服务器研究项目

本项目包含与MCP(消息协调协议)服务器实现相关的研究和演示。

概述

消息协调协议(MCP)为分布式系统提供了一种标准化的通信和协调动作的方式。该存储库包括一个参考实现和协议的实际演示。

项目结构

mcp_server_research/
├── docs/          # Documentation files
├── src/           # Source code
│   └── demo/      # Demo implementations
└── requirements.txt

入门指南

先决条件

  • Python 3.8+
  • 烧瓶
  • 请求:

安装

# Clone the repository
git clone https://github.com/ckz/mcp_server_research.git
cd mcp_server_research

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

# Install dependencies
pip install -r requirements.txt

运行演示

要使用默认设置运行MCP服务器,请执行以下操作:

cd src/demo
python simple_mcp_server.py

要使用环境变量使用自定义设置运行,请执行以下操作:

cd src/demo
DEBUG=true PORT=5001 python simple_mcp_server.py

然后访问http://localhost:5001(或您指定的自定义端口)查看仪表板。

要在单独的终端中运行客户端演示:

cd src/demo
python client_demo.py --server http://localhost:5001 --duration 30 --interval 2

您应该看到服务器接受连接,客户端成功发送消息。

演示功能

简单的MCP服务器演示实现了一个基本的消息协调协议服务器,该服务器:

  • 注册和跟踪连接的客户端
  • 处理各种消息类型(心跳、数据、命令)
  • 将消息路由到适当的目的地
  • 提供用于监视系统活动的web仪表板
  • 维护内存中的消息历史记录

许可证

麻省理工学院

贡献

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

更新日志

2024-02-24

  • 为连接失败的客户端代码添加了适当的错误处理
  • 在客户端中使用会话以实现更好的连接管理
  • 为服务器添加了跨源请求的CORS支持
  • 为API调用实现超时以防止挂起
  • 通过环境变量使调试模式可配置
  • 通过添加flask cors和指定werkzeug版本修复了依赖关系问题
  • 改进了代码注释中的文档