Back to MCP directory
publicPublicdnsLocal runtime

mcgravity

McGravity是一个将多个MCP服务器连接成统一服务的工具,提供单点访问和负载均衡功能,未来将发展为完整的MCP代理服务。

article

README

🚀 McGravity 重力场

McGravity 是一款强大的工具,它能将多个 MCP(模型上下文协议)服务器整合为统一服务。借助它,用户可重复利用同一 MCP 服务器,还能近乎无限地扩展底层的 MCP 服务器连接。当前虽只是基础的 CLI 工具,但未来将发展成完整的 MCP 服务器代理,就像 Gen AI 领域的 Nginx。

🚀 快速开始

McGravity 能让你轻松连接多个 MCP 服务器,以下是使用前的安装和基本配置。

✨ 主要特性

  • 服务器整合:将多个 MCP 服务器连接成一个统一服务,方便管理和使用。
  • 无限扩展:可重复使用同一 MCP 服务器,并几乎无限扩展底层的 MCP 服务器连接。
  • 未来可期:后续将添加 Web 界面监控、高级负载均衡、健康检查、认证和访问控制、插件系统等功能。

📦 安装指南

使用以下命令安装 McGravity:

bun add mcgravity

💻 使用示例

基本用法

查看帮助信息:

mcgravity --help

配置

在项目根目录中创建一个 mcgravity.config.ts 文件,内容如下:

// mcgravity.config.ts
export default {
  port: 3000,
  upstreamUrl: 'http://localhost:5000'
}

📚 详细文档

测试

运行测试

运行以下命令以执行所有测试:

bun test

运行以下命令以仅执行集成测试:

bun test:integration

未来计划

McGravity 将会扩展以下功能:

  • Web 界面用于监控
  • 高级负载均衡
  • MCP 服务器健康检查
  • 认证和访问控制
  • 插件系统用于自定义集成

开发

TypeScript 和代码风格

此项目使用:

  • TypeScript 并基于 Bun 运行时
  • ESLint 用于代码检查,带有 TypeScript 特定规则
  • Prettier 用于代码格式化

运行以下命令:

# 使用 Prettier 格式化代码
bun run format

# 检查代码是否正确格式化
bun run format:check

# 使用 ESLint 检查代码
bun run lint

# 修复可自动修正的 ESLint 问题
bun run lint:fix

VS Code 配置为保存时自动格式化代码,并在安装推荐插件后提供代码检查信息。

贡献

欢迎贡献!请随意提出问题或提交拉取请求。

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