Back to MCP directory
publicPublicdnsLocal runtime

mcp-ectors

企业级高性能MCP服务器,支持Wasm和Rust,为LLM提供工具、资源和流程提示的集成平台。

article

README

🚀 企业级MCP SSE服务器(mcp - ectors)介绍

本项目是一个专为企业设计的高性价比、可扩展且易于使用的平台。它旨在通过行为体(actors)、Rust语言和简洁的多路由器管理架构,简化大型语言模型(LLMs)与工具及资源的集成,助力实现先进的代理式AI工作流程。

🚀 快速开始

本项目暂未提供快速开始的相关内容,你可以参考后续的架构概述、未来开发计划等内容了解项目详情。

✨ 主要特性

  • 高性价比:专为企业设计,以合理的成本提供强大的功能。
  • 可扩展性:通过多路由器管理架构,能够灵活支持各种功能扩展。
  • 易于使用:简化了大型语言模型与工具及资源的集成过程。

📚 详细文档

架构概述

  1. 服务器构建者
    • server_builder负责确定传输层。目前支持SSE(服务器发送事件),未来版本将加入stdiowasi传输。
    • 当前版本仅支持SSE作为客户端与服务器间通信的媒介。
  2. 路由器服务管理器
    • RouterServiceManager负责注册多个路由器,并确保每个路由器能够独立处理请求,无需新建连接。
    • 该架构允许在同一连接下部署多个路由器,显著提升了系统的高效性和扩展性。
  3. 日志配置
    • 服务器可配置为将日志存储在指定目录,支持自定义日志级别(如INFO、DEBUG等)以便监控和调试。
    • 示例配置:
let log_config = LogConfig {
    log_dir: "logs".to_string(),
    log_file: "server.log".to_string(),
    level: Level::INFO,
};
  1. 传输角色
    • 任何用于MCP服务器的传输都需要实现TransportActorTrait。该特性确保了不同传输方式(如SSE、stdio、wasi)能够正确处理请求和消息。
    • 关键消息类型:
      • TransportRequest:允许将新的JsonRPCMessages发送给客户端,负责服务器与客户端间的通信。
      • StartTransport:用于启动特定传输层,初始化相关后台任务(如建立连接或等待入站消息)。
      • StopTransport:用于停止传输层,优雅地关闭任何活动连接或关联的任务。
  2. 路由器
    • Router是一个需要由所有路由器实现的特征接口,紧密围绕MCP标准设计。通过RouterRegistry注册新路由后,每条路由都会被封装在特定的RouterActor中,负责处理对应的功能请求。
    • 例如,当收到tools/call请求时,持有相应路由器的RouterActor将根据预设逻辑进行响应。这种动态响应机制使服务器能够灵活支持各种功能扩展。
  3. 标准行为体
    • MCP定义了一系列标准行为体,负责实现诸如初始化和工具、提示、资源管理等基础功能。
    • 这些标准行为体承担着处理初始请求和响应列表请求(如工具、提示、资源的列举)的任务。这使得与这些核心组件交互变得统一且规范。

未来开发计划

  • MCP协议扩展:当前已实现基本功能,但通知机制仍在规划中。此外,未来的版本还将支持认证/授权、错误处理和日志记录等功能。
  • 传输扩展:计划增加对stdiowasi的支持,丰富服务器的通信方式。
  • 寻求帮助:欢迎社区贡献代码或提供反馈。若发现任何问题,请通过以下链接提交:[GitHub](https://github.com/your - repository) ,联系人:张三

如何贡献

我们热烈欢迎开源社区的积极参与!您可以通过以下方式贡献力量:

  1. 报告问题:在GitHub仓库中提交Issue。
  2. 功能开发:fork仓库,在新的分支中实现新功能。
  3. 代码审查:参与现有Pull Request的评审工作。

联系我们


加入我们,一起推动AI技术的发展!

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