Open MCP Server
A service framework supporting the Model Context Protocol (MCP) to integrate enterprise systems and AI platforms via RESTful, gRPC, and Dubbo protocols.
Open MCP Server
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®istryType=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 文件。
Related Servers
MCP Software Engineer Server
An MCP server that enables an AI to function as a full-stack software engineer with complete development capabilities.
Facets Module
Create and manage Terraform modules for cloud-native infrastructure using the Facets.cloud FTF CLI.
IDA Pro
Interact with IDA Pro for reverse engineering and binary analysis tasks.
MCP迭代管理工具
An iteration management tool to automate the collection and submission of iteration information to a CodeReview system.
Abstract MCP Server
Caches large tool responses to files and returns compact resource links to save LLM context window space.
PostHog MCP
Integrates with PostHog for feature flag management and error tracking.
Game Asset Generator
Generate 2D and 3D game assets using AI models hosted on Hugging Face Spaces.
CPAN Package README MCP Server
Fetch READMEs, metadata, and search for CPAN packages.
Next.js MCP Server
A Next.js-based MCP server with OAuth 2.1 authentication support using Google as the default provider. Requires a PostgreSQL database and optionally Redis for SSE transport.
CodebaseIQ Pro
Provides AI assistants with a comprehensive, one-time analysis for complete codebase context and understanding.