grpc-mcp.ja.prompt.md•5.13 kB
# MCPサーバー grpc-mcp AI指示用README
このドキュメントは、grpc-mcpをAIで操作するための手順・テンプレート・サンプルをまとめたものです。AIが自然言語の依頼から最適なgRPCリクエストを自動選定・実行できます。
---
## 1. 事前準備
実行に必要な以下の情報をユーザーから入力してもらうようにしてください。
- **protoディレクトリ**: Protoファイルの絶対パス(カンマ区切り可)
- **サーバーアドレス**: gRPCサーバーのURL(host:port)
- **SSL**: true(使用する)/false(使用しない)(省略化:デフォルト値true)
- **タイムアウト**: ミリ秒(省略化:デフォルト値180000)
- **デフォルトヘッダー**: 例 `{ "X-HOGE-HEADER": "1234", "X-FOO-HEADER": "XXX" }`(省略化)
- **プロキシ利用時**: 環境変数 `HTTP_PROXY`または`HTTPS_PROXY` をへ実行マシーンのProxyを設定してください
#### 入力テンプレート
ユーザーへ入力してもらう際に使用してください。
```
- protoディレクトリ: C:/path/to/proto
- サーバーアドレス: host:port
- SSL: true
- タイムアウト: 180000
- デフォルトヘッダー:
{ "X-HOGE-HEADER": "1234", "X-FOO-HEADER": "XXX" }
```
---
## 2. Protoファイルの読み込み
- 事前準備で設定したprotoディレクトリを使用して`loadProto` でProto情報を読み込む(複数ある場合は複数回実行する)
---
## 3. APIリクエスト手順
1. Protoファイルの読み込みで取得したProto情報から対象のgRPCメソッドを選定
2. `getMethodInformation` でリクエスト・レスポンスの詳細情報(フィールド、型、説明など)を取得
3. `sendRequest` で指定パラメータのgRPC APIを実行
---
## 4. APIリクエスト例(自然言語指示例)
- hogeId「AAA」のfoo名を取得して
- SampleAPIの応答項目「HogeKey」を使用して、AnotheAPIを実行して
このように自然言語で依頼できます。AIは内容から最適なgRPCサービス・メソッド・リクエストを自動選定します。
---
## 5. APIレスポンス解析手順
レスポンスは以下の形式で返却されます。
```json
{
"analyze": {
"time": 1728701234567 // ミリ秒単位のUNIXタイムスタンプ(Date.now()と同じ)
},
"response": {
"ok": true, // エラーの場合はfalse
"body": "" // JSON形式でレスポンスが返却される
}
}
```
- `ok`がfalseの場合はエラー内容が`error`フィールドに格納されます。
- `body`はJSON文字列として返却されるため、必要に応じてパースして利用してください。
---
## 6. フィールド説明・日本語解説依頼例
- protoのフィールドやレスポンス内容の日本語解説もAIに依頼可能
- 例: `"hogeId": { "value": "1234" } // hogeId(数値文字列)`
---
## 7. トラブルシュート
- 接続エラー、ビジネスロジックエラー時はAIが原因・対策を説明
- リクエスト前にproto/method情報の確認もAIに依頼可能
---
## 8. 追加指示例
以下のような追加依頼も可能です。
- 任意のprotoファイル・サービス・メソッド・リクエストボディでデータを取得したい
- protoの各フィールドや型の意味を日本語で解説してほしい、gRPCレスポンスの内容を日本語で要約してほしい
- サンプルとなるリクエストボディを作成してほしい
- 取得したAPIレスポンスを使って、さらに別のAPIリクエストを自動で実行してほしい
- 複数のパラメータでAPIを繰り返し実行し、`analyze.time`(実行時間)を使ってAPIの性能を調査してほしい
- リクエスト・レスポンス内容からAPI仕様を推測して説明してほしい
- ドキュメントからのAPIインターフェース設計書からリクエスト項目を理解し、APIリクエストに活用してほしい
## 9. API選定・リクエスト例の提案
どのAPI・メソッド・リクエストボディを使えば目的の情報が取得できるか分からない場合も、自然言語で「このような情報を取得したい」とAIに依頼してください。AIが最適なgRPCサービス・メソッド・リクエスト例を提案します。
- 取得したい情報(例:「ユーザー名を検索したい」など)を自然言語でAIに依頼すると、AIが適切なgRPCサービス・メソッド・リクエスト例を提案します
- API仕様やprotoファイルが不明な場合でも、AIが内容を推測し、どのAPI・リクエストを使えばよいか案内します
---
## 10. 制約事項・注意
- 本ツールはgRPCのStream(サーバーストリーミング、クライアントストリーミング、双方向ストリーミング)には対応していません。
単一リクエスト・単一レスポンス型(Unary)のみサポートしています。