mcpField
M
MCP Server Research Project

MCP Server Research Project

本地服务
github.com/ckz数据与分析087 周前更新

关于 MCP Server Research Project

这是一个包含 MCP 研究资料和演示实现的项目,面向探索服务端实现与消息协调的开发者。其 Python 演示可注册客户端、路由消息,并通过网页仪表板查看活动和消息历史。

主要功能

  1. 01MCP 服务参考实现
  2. 02客户端注册与跟踪
  3. 03处理心跳、数据和命令
  4. 04消息路由
  5. 05网页活动仪表板
  6. 06内存消息历史

适用场景

  1. 01运行消息协调服务演示
  2. 02测试客户端消息发送
  3. 03监控连接与系统活动
  4. 04观察消息历史记录

MCP 相关

项目描述的是 Message Coordination Protocol,并提供相应服务端和客户端演示;输入未说明其与 Model Context Protocol 的兼容关系。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP 服务研究项目

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

概述

消息协调协议(MCP)为分布式系统提供了一种标准化的通信和协调操作方式。此代码库包含该协议的参考实现及其运行演示。

项目结构

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

开始使用

前提条件
  • Python 3.8+
  • Flask
  • Requests
安装
# 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 仪表板
  • 在内存中维护消息历史记录

许可证

MIT

参与贡献

欢迎贡献!请随时提交 Pull Request。

更新日志

2024-02-24
  • 为客户端代码添加了完善的错误处理,以应对连接失败
  • 在客户端中使用会话,以便更好地管理连接
  • 为服务添加了 CORS 支持,以处理跨域请求
  • 为 API 调用实现了超时机制,防止调用挂起
  • 使调试模式可通过环境变量配置
  • 添加 flask-cors 并指定 werkzeug 版本,修复依赖问题
  • 改进了代码注释中的文档说明

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。