Open MCP Server について
Open MCP Serverは、MCPを介して業務システムやAPIをAIプラットフォームに接続するフレームワークです。RESTful、gRPC、Dubbo、SOAPに対応し、APIテスト、コード生成、AIとの対話機能も備えています。
主な機能
- 01RESTful、gRPC、Dubbo、SOAP対応
- 02APIテストとサービス管理
- 03API連携コードの生成
- 04AIセッションと会話履歴
- 05MCPツールの動的注入と呼び出し
- 06テキストのストリーミング生成
活用シーン
- 01企業APIのAIプラットフォームへの接続
- 02HTTPまたはRPCサービスのテストと管理
- 03Spring Boot API連携コードの生成
- 04MCPツール経由でのDubboサービス利用
MCP 対応
Dubboサービス情報の取得やメソッド呼び出しを行うMCPツールを提供し、AIセッションでMCPツールを動的に利用できます。READMEではstdio経由でMCPサーバーとして設定する方法も説明されています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
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 アシスタント機能
1 回限りの質問と回答
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
機能の説明:
- 1 回限りの質問と回答、およびセッションモードに対応
- 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 の追加に対応
ライセンス
open-mcp-server は MIT ライセンスの下で提供されています。 MIT ライセンスの条項に基づき、本ソフトウェアは自由に使用、変更、配布できます。詳細な条項については、プロジェクトリポジトリー内の LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。