mcpField
A
Apidog Tests Mcp

Apidog Tests Mcp

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

Apidog Tests Mcp について

Apidog の API テストを管理する非公式 MCP サーバーです。AI アシスタントからテストケース、シナリオ、スイート、テストデータを読み書きでき、環境やエンドポイント、カバレッジの参照にも対応します。

主な機能

  1. 01テストケースの作成・参照・更新・削除
  2. 02複数ステップのテストシナリオ作成
  3. 03スイートとフォルダーの管理
  4. 04CSV テストデータの管理
  5. 05エンドポイントとカバレッジの確認

活用シーン

  1. 01API エンドポイントのテストケースを一括作成
  2. 02実行可能なテストスイートの整理と保守
  3. 03API 呼び出しを連結したシナリオの作成
  4. 04環境とテストカバレッジの確認

MCP 対応

Apidog のテスト管理機能を MCP クライアント向けのツールとして公開します。テスト資産の読み書きに加え、環境やエンドポイントの読み取り専用参照が可能です。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"apidog-tests": {
"command": "npx",
"args": [
"-y",
"apidog-tests-mcp"
],
"env": {
"APIDOG_ACCESS_TOKEN": "<APIDOG_ACCESS_TOKEN>",
"APIDOG_PROJECT_ID": "<APIDOG_PROJECT_ID>",
"APIDOG_BRANCH_ID": "<APIDOG_BRANCH_ID>",
"APIDOG_DEVICE_ID": "<APIDOG_DEVICE_ID>"
}
}
}
}
起動コマンドnpx -y apidog-tests-mcp
設定が必要な環境変数
APIDOG_ACCESS_TOKENシークレット
APIDOG_PROJECT_ID
APIDOG_BRANCH_ID
APIDOG_DEVICE_ID

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

パッケージ
npmapidog-tests-mcp

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

apidog-tests-mcp

Apidog のテストケース、シナリオ、スイート、テストデータを管理する MCP(Model Context Protocol)サーバーです。AI アシスタントに Apidog のテスト管理機能への完全な読み取り/書き込みアクセスを提供します。

このプロジェクトは、Apidog の公式インテグレーションではありません。

機能

  • テストケース -- API エンドポイントのテストケースを作成、読み取り、更新、削除、一括作成します
  • テストシナリオ -- 複数の API 呼び出しを連鎖させた、複数ステップのテストフローを構築します
  • テストスイート -- CI/CD で実行できるスイートにテストを整理します
  • テストデータ -- CSV 形式のデータを使ったデータ駆動型テストの反復を管理します
  • フォルダー -- シナリオとスイートをネストしたフォルダー構造に整理します
  • 読み取り専用ツール -- 環境、エンドポイント、カテゴリ、タグ、ランナー、カバレッジ統計を一覧表示します

ドキュメント

  • docs/PRACTICAL-USAGE.md -- 安定したテストケース/シナリオ/スイートを作成するための実証済みパターン
  • SECURITY.md -- 脆弱性の報告と安全な使用に関するガイドライン
  • CONTRIBUTING.md -- 貢献のワークフロー
  • CHANGELOG.md -- リリースノート

インストール

npm install -g @acabala/apidog-tests-mcp

または、npx で直接使用します。

npx @acabala/apidog-tests-mcp

設定

サーバーには次の環境変数が必要です。

変数必須説明
APIDOG_ACCESS_TOKENはいApidog アクセストークン
APIDOG_PROJECT_IDはいApidog プロジェクト ID
APIDOG_BRANCH_IDはい操作対象のブランチ ID
APIDOG_BASE_URLいいえAPI ベース URL の上書き(デフォルト:https://api.apidog.com/api/v1)
MCP クライアントの設定

MCP クライアントの設定(例:Claude Desktop の claude_desktop_config.json)に追加します。

{
	"mcpServers": {
		"apidog-tests": {
			"command": "npx",
			"args": ["@acabala/apidog-tests-mcp"],
			"env": {
				"APIDOG_ACCESS_TOKEN": "your-token",
				"APIDOG_PROJECT_ID": "your-project-id",
				"APIDOG_BRANCH_ID": "your-branch-id"
			}
		}
	}
}
推奨するトークンの運用方法
  • 自動化専用のトークンを使用します。
  • アクセス範囲を、必要最小限の Apidog プロジェクトに限定します。
  • トークンを定期的にローテーションします。
  • MCP クライアントの設定ファイルはローカルに保管し、非公開にします。

利用可能なツール

読み取り専用
ツール説明
list_environmentsベース URL を含むすべての環境を一覧表示します
list_api_endpointsAPI エンドポイントのツリーを一覧表示します(モジュールと名前で絞り込み可能)
list_test_case_categoriesテストケースのカテゴリを一覧表示します
list_test_case_tags利用可能なタグを一覧表示します
list_runnersセルフホスト型のテストランナーを一覧表示します
get_endpoint_statisticsテストカバレッジの統計を取得します
テストケース
ツール説明
list_test_casesすべてのテストケースを一覧表示します(エンドポイントで絞り込み可能)
get_test_caseテストケースの詳細をすべて取得します
create_test_caseエンドポイントのテストケースを作成します
create_test_cases_bulk複数のテストケースを一度に作成します
update_test_caseテストケースを更新します(GET 後にマージ)
delete_test_caseテストケースを削除します
テストシナリオ
ツール説明
list_test_scenariosフォルダー構造とともにシナリオを一覧表示
get_test_scenario_stepsシナリオのステップを取得
create_test_scenario複数ステップのテストシナリオを作成
update_test_scenario_stepsシナリオのステップを設定/置換
delete_test_scenarioシナリオを削除
テストスイート
ツール説明
list_test_suitesフォルダー構造とともにスイートを一覧表示
get_test_suiteスイートの詳細全体を取得
create_test_suiteテストスイートを作成
update_test_suite_itemsスイートの項目を設定(静的/動的グループ)
delete_test_suiteスイートを削除
テストデータ
ツール説明
list_test_dataテストケースのテストデータレコードを一覧表示
get_test_dataCSV の行と列を含むテストデータを取得
create_test_dataテストケースのテストデータを作成
update_test_dataテストデータを更新(取得後にマージ)
delete_test_dataテストデータレコードを削除
フォルダー
ツール説明
create_scenario_folderシナリオフォルダーを作成
delete_scenario_folderシナリオフォルダーを削除
create_suite_folderスイートフォルダーを作成

開発

# Install dependencies
npm install

# Run in development mode
npm run start:dev

# Type check
npm run typecheck

# Format
npm run format

# Run tests
npm test

# Run tests with coverage
npm run test:coverage

# Build for production
npm run build

セキュリティ

  • 必要最小限の権限を持つ専用の自動化トークンを使用してください。
  • APIDOG_ACCESS_TOKEN や環境固有の ID をコミットしないでください。
  • ローカルの MCP クライアント設定ファイルは非公開にしてください。
  • 報告および対応ポリシーについては SECURITY.md を参照してください。

リリースとバージョン管理

このリポジトリでは、Changesets と GitHub Actions のリリースワークフローを使用しています。

  • ユーザーに見える変更には変更セットを追加してください:npm run changeset
  • リリースの自動化により、main にバージョン PR が作成/更新されます
  • リリース PR がマージされると、プロベナンス付きで npm に公開されます

オープンソースのガイドライン

  • 貢献ガイド:CONTRIBUTING.md
  • 行動規範:CODE_OF_CONDUCT.md
  • 変更履歴:CHANGELOG.md

実践的なヒント

  • ルートパラメーターを含むテストケースを作成するときは、必ず path と parameters.path を指定してください。
  • 更新操作では、未加工の全置換ペイロードよりも、このサーバーのマージ形式のツールを優先してください。
  • 宣言型アサーションに関するランナーの問題を避けるため、アサーションには customScript のポストプロセッサーを使用してください。
  • 詳細な例については docs/PRACTICAL-USAGE.md を参照してください。

プロジェクト構成

src/
  index.ts          Entry point, registers tools and starts MCP server
  client.ts         ApidogClient HTTP wrapper with auth headers
  types.ts          Shared TypeScript interfaces and MCP result helpers
  errors.ts         Custom error classes (ApidogApiError, ApidogConfigError)
  schemas.ts        Shared Zod schemas for request parameters
  tools/
    read.ts         Read-only tools (environments, endpoints, categories, etc.)
    test-cases.ts   Test case CRUD tools
    test-scenarios.ts  Test scenario CRUD tools
    test-suites.ts  Test suite CRUD tools
    test-data.ts    Test data CRUD tools
    folders.ts      Folder management tools

ライセンス

MIT ライセンス

コメント

MCP は初めてですか?

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

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