open-mcp-server

open-mcp-server

3.2

If you are the rightful owner of open-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Open-MCP-Server is a service framework supporting the Model Context Protocol (MCP), designed to simplify the integration of enterprise systems with AI platforms, providing business data support for AI systems.

Open MCP Server

English Version

Open-MCP-Server 是一个支持模型上下文协议(Model Context Protocol, MCP)的服务框架,旨在简化企业系统与AI平台的集成,为AI系统提供业务数据支持。本框架原生兼容各类开放API、内部系统API、Dubbo接口等多协议接入,赋能AI系统实现定制化需求。

核心功能

  • 公/私有API统一适配(支持 RESTful、gRPC、Dubbo、SOAP 等协议)
  • AI工作流上下文感知数据编排
  • 可扩展的业务逻辑架构
  • 在保持异构系统兼容性的同时,实现定制化AI解决方案
  • 智能AI助手会话管理
  • 第三方API集成(聚合数据、股票、新闻、视频等)
  • 代码自动生成功能

对外接口功能

1. API测试接口

接口测试
POST /api/test
Content-Type: application/json

{
    "apiUrl": "http://api.example.com/data",
    "method": "GET",
    "cookie": "session=abc123",
    "requestData": "{\"param1\": \"value1\"}"
}

功能说明:

  • 支持测试任意HTTP API接口
  • 自动处理GET请求的URL参数拼接
  • 支持Cookie认证
  • 支持所有HTTP方法(GET、POST、PUT、DELETE等)
  • 返回JSON格式的测试结果

2. 代码生成功能

生成代码
POST /api/generate
Content-Type: application/json

{
    "apiUrl": "http://api.example.com/data",
    "method": "GET",
    "packagePath": "com.open.mcp.server.api",
    "apiName": "ExampleApi",
    "requestData": "{\"param1\": \"value1\"}",
    "responseData": "{\"result\": \"success\"}"
}
下载生成的代码
POST /api/download
Content-Type: application/json

{
    "apiUrl": "http://api.example.com/data",
    "method": "GET",
    "packagePath": "com.open.mcp.server.api",
    "apiName": "ExampleApi",
    "requestData": "{\"param1\": \"value1\"}",
    "responseData": "{\"result\": \"success\"}"
}

功能说明:

  • 自动生成API接口定义
  • 生成请求/响应DTO类
  • 生成服务实现类
  • 自动处理参数映射和类型转换
  • 支持文件下载功能
  • 生成完整的Spring Boot集成代码

3. AI助手功能

单次问答
GET /ai-assistant/ai/ask?question=你的问题
创建会话
POST /ai-assistant/session/create
会话聊天
POST /ai-assistant/session/chat
Content-Type: application/x-www-form-urlencoded

sessionId=xxx&message=用户消息&systemPrompt=系统提示词
获取会话历史
GET /ai-assistant/session/history?sessionId=xxx
清理会话
POST /ai-assistant/session/clear
Content-Type: application/x-www-form-urlencoded

sessionId=xxx&reset=true

功能说明:

  • 支持单次问答和会话模式
  • 动态注入MCP工具
  • 会话状态管理
  • 系统提示词自定义
  • 完整的对话历史记录

4. AI生成功能

文本生成
GET /ai/generate?message=生成内容
流式生成
GET /ai/generateStream?message=生成内容
MCP工具调用
GET /ai/mcp?message=使用工具的问题

功能说明:

  • 基于Azure OpenAI的文本生成
  • 支持流式响应
  • 集成MCP工具调用
  • 支持多种部署模型

5. 多协议服务管理

HTTP服务管理
# 获取服务列表
GET /api/http/list

# 获取单个服务
GET /api/http/{id}

# 创建服务
POST /api/http/save
Content-Type: application/json

# 更新服务
PUT /api/http/{id}
Content-Type: application/json

# 删除服务
DELETE /api/http/{id}
Dubbo服务管理
# 获取服务列表
GET /api/dubbo/list

# 获取单个服务
GET /api/dubbo/{id}

# 创建服务
POST /api/dubbo/save
Content-Type: application/json

# 更新服务
PUT /api/dubbo/{id}
Content-Type: application/json

# 删除服务
DELETE /api/dubbo/{id}
gRPC服务管理
# 获取服务列表
GET /api/grpc/list

# 获取单个服务
GET /api/grpc/{id}

# 创建服务
POST /api/grpc/save
Content-Type: application/json

# 更新服务
PUT /api/grpc/{id}
Content-Type: application/json

# 删除服务
DELETE /api/grpc/{id}
SOAP服务管理
# 获取服务列表
GET /api/soap/list

# 获取单个服务
GET /api/soap/{id}

# 创建服务
POST /api/soap/save
Content-Type: application/json

# 更新服务
PUT /api/soap/{id}
Content-Type: application/json

# 删除服务
DELETE /api/soap/{id}

6. 注册中心连接管理

基础CRUD操作
# 获取连接列表
GET /api/registry/list

# 获取单个连接
GET /api/registry/{id}

# 创建连接
POST /api/registry/save
Content-Type: application/json

# 更新连接
PUT /api/registry/{id}
Content-Type: application/json

# 删除连接
DELETE /api/registry/{id}
高级功能
# 分页查询
GET /api/registry/page?connectionName=xxx&registryType=xxx&host=xxx&pageNum=1&pageSize=10

# 批量保存
POST /api/registry/batch-save
Content-Type: application/json

# 批量删除
POST /api/registry/batch-delete
Content-Type: application/json

7. 语言设置

POST /api/setLanguage
Content-Type: application/json

{
    "language": "zh_CN"
}

MCP工具功能

Dubbo服务工具

获取服务信息
# 工具名称: getDubboServiceInfo
# 参数说明:
{
    "interfaceName": "com.example.DemoService"  # Dubbo服务接口全限定名
}
调用服务方法
# 工具名称: invokeDubboService
# 参数说明:
{
    "interfaceName": "com.example.DemoService",  # Dubbo服务接口全限定名
    "methodName": "sayHello",                    # 要调用的方法名
    "version": "1.0.0",                         # 服务版本(可选)
    "params": {                                 # 方法参数(JSON格式)
        "param1": "value1",
        "param2": 123
    }
}

配置说明

Dubbo配置

dubbo:
  application:
    name: ${spring.application.name}
    qos-enable: false
  registry:
    address: zookeeper://127.0.0.1:2181
    timeout: 30000
  protocol:
    name: dubbo
    port: -1
  consumer:
    check: false
    timeout: 30000
    retries: 0

聚合数据API配置

juhe:
  news:
    apikey: your_api_key
    baseUrl: http://v.juhe.cn
  video:
    apikey: ${juhe.news.apikey}
    baseUrl: ${juhe.news.baseUrl}

MCP服务器配置

"mcpServers": {
    "open-mcp-server": {
        "command": "java",
        "args": [
            "-Dspring.ai.mcp.server.stdio=true",
            "-jar",
            "/jar包路径/open-mcp-server-1.0-SNAPSHOT.jar",
            "juhe.news.api-key=您的聚合密钥"
        ]
    }
}

特性支持

多协议支持

  • HTTP/RESTful: 完整的CRUD操作和API测试
  • Dubbo: 泛化调用、服务发现、参数转换
  • gRPC: 服务管理和调用
  • SOAP: Web服务支持

AI集成

  • Azure OpenAI: 文本生成和对话
  • MCP工具: 动态工具注入和调用
  • 会话管理: 多会话支持和状态保持
  • 流式响应: 实时数据流处理

开发工具

  • 代码生成: 自动生成API集成代码
  • 接口测试: 在线API测试工具
  • 注册中心管理: 多注册中心连接管理
  • 国际化: 多语言支持

第三方API

  • 聚合数据: 新闻、视频、股票等数据服务
  • 可扩展: 支持添加更多第三方API

License

open-mcp-server 采用 MIT 许可证授权。 根据 MIT 许可证条款,您可以自由使用、修改和分发本软件。具体条款请参阅项目仓库中的 LICENSE 文件。