mcpField
M
MCPClientMock

MCPClientMock

ローカル
github.com/Akkshay10開発ツール145 週間前に更新

MCPClientMock について

AI アシスタントやテストワークフローから James Bloom MockServer を操作する MCP サーバーです。HTTP の期待値設定、リクエストの確認と検証、サーバー状態の管理に対応します。

主な機能

  1. 01HTTP の期待値を作成
  2. 02メソッド、パス、ヘッダー、クエリ、本文で照合
  3. 03受信リクエスト数を検証
  4. 04記録済みリクエストを取得
  5. 05MockServer の状態を消去またはリセット
  6. 06接続状態を確認

活用シーン

  1. 01バックエンド完成前の API モック
  2. 02連携処理が期待する HTTP リクエストを送ったか検証
  3. 03テスト中に記録された通信を確認

MCP 対応

MCP クライアントに、MockServer の期待値作成、リクエストの検証と取得、状態管理、ステータス確認のツールを提供します。稼働中の MockServer インスタンスに接続します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"akkshay10-mcpclientmock": {
"command": "npx",
"args": [
"-y",
"mockserver-mcp"
],
"env": {
"MOCKSERVER_HOST": "<MOCKSERVER_HOST>",
"MOCKSERVER_PORT": "<MOCKSERVER_PORT>"
}
}
}
}
起動コマンドnpx -y mockserver-mcp
設定が必要な環境変数
MOCKSERVER_HOSTMockServer hostname
MOCKSERVER_PORTMockServer port

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmmockserver-mcp1.0.2

ツール

6

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
idstringいいえ任意の期待値識別子
timesobjectいいえこの期待値が一致する回数
times.unlimitedbooleanいいえ
times.remainingTimesnumberいいえ
timeToLiveobjectいいえこの期待値が有効な期間
timeToLive.timeUnitenumいいえMILLISECONDS | SECONDS | MINUTES
timeToLive.timeToLivenumberいいえ
httpRequestobjectはいリクエストの照合条件(メソッド、パス、ヘッダー、本文など)
httpRequest.bodyobjectいいえ本文マッチャーの設定
httpRequest.body.typeenumいいえSTRING | JSON | REGEX | XPATH | JSON_PATH
httpRequest.body.valuestringいいえ
httpRequest.body.matchTypeenumいいえSTRICT | ONLY_MATCHING_FIELDS
httpRequest.pathstringいいえ照合する URL パス
httpRequest.methodstringいいえ照合する HTTP メソッド(GET、POST、PUT、DELETE など)
httpRequest.headersobjectいいえ照合するヘッダー
httpRequest.pathParametersobjectいいえ照合するパスパラメーター
httpRequest.queryStringParametersobjectいいえ照合するクエリ文字列パラメーター
httpResponseobjectいいえレスポンス設定
httpResponse.bodyanyいいえレスポンス本文(文字列またはオブジェクト)
httpResponse.delayobjectいいえレスポンス遅延の設定
httpResponse.delay.valuenumberいいえ
httpResponse.delay.timeUnitenumいいえMILLISECONDS | SECONDS
httpResponse.headersobjectいいえレスポンスヘッダー
httpResponse.statusCodenumberいいえ返す HTTP ステータスコード

詳細

mockserver-mcp

James Bloom's MockServer と連携するための MCP(Model Context Protocol)サーバーです。AI アシスタントを使って、HTTP のモック期待値の作成、リクエストの検証、状態のクリア、MockServer インスタンスのプログラムによる管理ができます。

前提条件

実行中の MockServer インスタンスが必要です。

# Using Docker (easiest)
docker run -d -p 1080:1080 mockserver/mockserver

インストール

npx を使用する(推奨)
npx mockserver-mcp
グローバルインストール
npm install -g mockserver-mcp
mockserver-mcp

設定

環境変数
変数説明デフォルト
MOCKSERVER_HOSTMockServer のホスト名localhost
MOCKSERVER_PORTMockServer のポート1080
MCP クライアントの設定

MCP クライアントの設定ファイル(例:Claude Desktop、Kiro、Cursor)に追加します。

{
  "mcpServers": {
    "mockserver": {
      "command": "npx",
      "args": ["-y", "mockserver-mcp"],
      "env": {
        "MOCKSERVER_HOST": "localhost",
        "MOCKSERVER_PORT": "1080"
      }
    }
  }
}

チームで共有する MockServer の場合は、MOCKSERVER_HOST をサーバーのアドレスに変更してください。

利用可能なツール

mockserver_create_expectation

MockServer に HTTP のモック期待値を作成します。

パラメーター:

  • httpRequest(必須):リクエストの照合条件
    • method:HTTP メソッド(GET、POST、PUT、DELETE など)
    • path:照合する URL パス
    • queryStringParameters:照合するクエリパラメーター
    • headers:照合するヘッダー
    • body:type(STRING、JSON、REGEX、XPATH、JSON_PATH)と value を指定するボディマッチャー
  • httpResponse:レスポンスの設定
    • statusCode:HTTP ステータスコード
    • headers:レスポンスヘッダー
    • body:レスポンスボディ(文字列またはオブジェクト)
    • delay:timeUnit と value を指定するレスポンスの遅延
  • times:照合する回数(remainingTimes、unlimited)
  • timeToLive:期待値の有効期間(timeUnit、timeToLive)

例:

{
  "httpRequest": {
    "method": "GET",
    "path": "/api/users"
  },
  "httpResponse": {
    "statusCode": 200,
    "body": { "users": [] }
  }
}
mockserver_verify

条件に一致するリクエストを MockServer が受信したことを検証します。

パラメーター:

  • httpRequest(必須):リクエストの照合条件(create_expectation と同じ)
  • times:予期されるリクエスト数
    • atLeast:リクエストの最小数
    • atMost:リクエストの最大数
    • exactly:リクエストの正確な数

例:

{
  "httpRequest": {
    "method": "POST",
    "path": "/api/orders"
  },
  "times": {
    "atLeast": 1
  }
}
mockserver_clear

MockServer から期待値と記録済みリクエストをクリアします。

パラメーター:

  • httpRequest(任意):特定の期待値をクリアするリクエストマッチャーです。指定しない場合はすべてクリアします。

例:

{
  "httpRequest": {
    "path": "/api/users"
  }
}
mockserver_reset

すべての期待値と記録済みリクエストをクリアし、MockServer を完全にリセットします。

パラメーター: なし

mockserver_retrieve_requests

MockServer から記録済みリクエストを取得します。

パラメーター:

  • httpRequest(任意):記録済みリクエストを絞り込むリクエストマッチャー

例:

{
  "httpRequest": {
    "method": "GET"
  }
}
mockserver_status

MockServer の接続状態と設定を取得します。

パラメーター: なし

モックを使う理由

API のモックを使えば、早い段階からテストできます。バックエンドの準備が整う前に、フロントエンドや連携機能の構築とテストを始められます。もう待つ必要はありません。より早くリリースできます。

要件

  • Node.js >= 18.0.0
  • 実行中の MockServer インスタンス

リンク

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。