Swagger MCP について
Swagger MCP は、SmartBear が提供する MCP サーバーで、AI アシスタントから Swagger にアクセスできるようにします。AI ワークフローで Swagger のデータを利用したい開発者向けです。
主な機能
- 01Swagger 機能への MCP アクセス
- 02OAuth 認証によるホスト型リモートサーバー
- 03@smartbear/mcp npm パッケージによるローカル実行
活用シーン
- 01AI アシスタントから Swagger 情報を照会
- 02開発ワークフローへの Swagger データの接続
MCP 対応
本プロジェクトは MCP サーバーであり、Swagger に関連するツールとリソースを MCP クライアントに公開します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://swagger.mcp.smartbear.com/mcpclaude mcp add --transport http com-smartbear-swagger https://swagger.mcp.smartbear.com/mcp{"mcpServers":{"com-smartbear-swagger":{"type":"http","url":"https://swagger.mcp.smartbear.com/mcp"}}}Cursor で開く{"servers":{"com-smartbear-swagger":{"type":"http","url":"https://swagger.mcp.smartbear.com/mcp"}}}VS Code で開く{"mcpServers":{"com-smartbear-swagger":{"type":"http","url":"https://swagger.mcp.smartbear.com/mcp"}}}{"mcpServers":{"com-smartbear-swagger":{"serverUrl":"https://swagger.mcp.smartbear.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
AI アシスタントが、BearQ、BugSnag、Reflect、Swagger、PactFlow、Pact Broker、QMetry、QTM4J、Zephyr、Collaboratorなど、SmartBear のテストおよびモニタリングツール群をシームレスに利用できるようにする、Model Context Protocol(MCP)サーバーです。
MCP とは?
Model Context Protocol(MCP)は、AI アシスタントが外部のデータソースやツールに安全に接続できるようにするオープン標準です。このサーバーは、自然言語インターフェイスを通じて SmartBear の API を公開し、AI ワークフローからテストデータの検索、パフォーマンス指標の分析、テスト自動化の管理を直接行えるようにします。
対応ツール
推奨されるプロンプトと対応ツールおよびリソースについては、各ガイドをご覧ください。
- BearQ - AI を活用した QA テスト管理および実行機能
- BugSnag - 包括的なエラーモニタリングおよびデバッグ機能
- Reflect - テスト管理および実行機能
- Swagger
- Portal - ポータルおよび製品管理機能
- Studio - API およびドメイン管理機能。プロンプトからの AI を活用した API 生成と、自動標準化を含みます
- コントラクトテスト(PactFlow) - コントラクトテスト機能
- 機能テスト - API テストの検出機能
- QMetry - QMetry テスト管理機能
- Zephyr - Zephyr テスト管理機能
- Collaborator - レビューおよびリモートシステム設定の管理機能
- QTM4J - Jira 向け QTM4J テスト管理機能
リモート MCP サーバー
BugSnag、Swagger、Zephyr については、SmartBear がリモート MCP サーバーをホストしています。MCP クライアントから URL を使って直接接続でき、インストール、Node.js、API トークンは不要です。認証は OAuth のブラウザーフローを通じて行われます。
| 製品 | サーバー URL |
|---|---|
| Swagger | https://swagger.mcp.smartbear.com/mcp |
| BugSnag | https://bugsnag.mcp.smartbear.com/mcp |
| Zephyr | https://zephyr.mcp.smartbear.com/mcp |
クライアントごとのセットアップ手順については、リモート MCP サーバーガイドをご覧ください。複数のリモートサーバーに同時に接続できます。
BearQ、Reflect、QMetry、QTM4J、PactFlow、Collaborator、Functional Testing をお使いですか? これらの製品は、以下のローカル npm パッケージでのみ利用できます。このパッケージには、すべての製品が単一の MCP サーバーにまとめられています。
前提条件
- Node.js 22+ と npm
- SmartBear 製品(BugSnag、Reflect、Swagger、QMetry、QTM4J、または Zephyr)へのアクセス
- 統合する製品の有効な API トークン
ローカル MCP サーバーのインストール(npm)
すべての製品を利用する場合、またはサーバーをローカルで実行したい場合は、MCP サーバーが npm パッケージ @smartbear/mcp として配布されており、開発ワークフローに簡単に統合できます。
サーバーは、SmartBear 製品で使用している API キーまたは認証トークンを指定して起動します。これらは任意の項目であり、その製品を使用しない場合は設定から削除できます。BugSnag の場合、プロジェクト API キーを指定すると、BugSnag ダッシュボード内の検索対象が単一のプロジェクトに限定されます。複数のプロジェクトを横断して操作する場合は、この項目を空欄のままにしてください。
Copilot を使用した VS Code
最も簡単にセットアップするには、コマンド パレットの「MCP: Add server…」コマンドを使って、@smartbear/mcp npm パッケージを追加します。
📋 手動インストール
または、npx を使用するか、@smartbear/mcp パッケージをグローバルにインストールしてサーバーを実行し、以下を .vscode/mcp.json ファイルに追加できます。
{
"servers": {
"smartbear": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@smartbear/mcp@latest"
],
"env": {
"BEARQ_API_TOKEN": "${input:bearq_api_token}",
"BEARQ_API_BASE_URL": "${input:bearq_api_base_url}",
"BUGSNAG_AUTH_TOKEN": "${input:bugsnag_auth_token}",
"BUGSNAG_PROJECT_API_KEY": "${input:bugsnag_project_api_key}",
"REFLECT_API_TOKEN": "${input:reflect_api_token}",
"SWAGGER_API_KEY": "${input:swagger_api_key}",
"SWAGGER_PORTAL_BASE_PATH": "${input:swagger_portal_base_path}",
"SWAGGER_REGISTRY_BASE_PATH": "${input:swagger_registry_base_path}",
"SWAGGER_UI_BASE_PATH": "${input:swagger_ui_base_path}",
"PACT_BROKER_BASE_URL": "${input:pact_broker_base_url}",
"PACT_BROKER_TOKEN": "${input:pact_broker_token}",
"PACT_BROKER_USERNAME": "${input:pact_broker_username}",
"PACT_BROKER_PASSWORD": "${input:pact_broker_password}",
"QMETRY_API_KEY": "${input:qmetry_api_key}",
"QMETRY_BASE_URL": "${input:qmetry_base_url}",
"ZEPHYR_API_TOKEN": "${input:zephyr_api_token}",
"ZEPHYR_BASE_URL": "${input:zephyr_base_url}",
"COLLABORATOR_BASE_URL": "${input:collab_base_url}",
"COLLABORATOR_USERNAME": "${input:collab_username}",
"COLLABORATOR_LOGIN_TICKET": "${input:collab_login_ticket}",
"QTM4J_API_KEY": "${input:qtm4j_api_key}",
"QTM4J_BASE_URL": "${input:qtm4j_base_url}",
"QTM4J_AUTOMATION_API_KEY": "${input:qtm4j_automation_api_key}",
"SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "${input:swagger_functional_testing_api_token}",
"SWAGGER_FUNCTIONAL_TESTING_BASE_PATH": "${input:swagger_functional_testing_base_path}"
}
}
},
"inputs": [
{
"id": "bearq_api_token",
"type": "promptString",
"description": "BearQ workspace API token - leave blank to disable BearQ tools",
"password": true
},
{
"id": "bearq_api_base_url",
"type": "promptString",
"description": "BearQ API base URL - leave blank to use the default (https://api.bearq.smartbear.com)",
"password": false
},
{
"id": "bugsnag_auth_token",
"type": "promptString",
"description": "BugSnag Auth Token - leave blank to disable BugSnag tools",
"password": true
},
{
"id": "bugsnag_project_api_key",
"type": "promptString",
"description": "BugSnag Project API Key - for single project interactions",
"password": false
},
{
"id": "reflect_api_token",
"type": "promptString",
"description": "Reflect API Token - leave blank to disable Reflect tools",
"password": true
},
{
"id": "swagger_api_key",
"type": "promptString",
"description": "Swagger API Key - leave blank to disable Swagger tools",
"password": true
},
{
"id": "swagger_portal_base_path",
"type": "promptString",
"description": "Swagger Portal API base path - only needed for on-premise installations (leave blank for cloud)",
"password": false
},
{
"id": "swagger_registry_base_path",
"type": "promptString",
"description": "Swagger Registry API base path - only needed for on-premise installations (leave blank for cloud)",
"password": false
},
{
"id": "swagger_ui_base_path",
"type": "promptString",
"description": "Swagger UI base path - only needed for on-premise installations (leave blank for cloud)",
"password": false
},
{
"id": "pact_broker_base_url",
"type": "promptString",
"description": "PactFlow or Pact Broker base url - leave blank to disable the tools",
"password": true
},
{
"id": "pact_broker_token",
"type": "promptString",
"description": "PactFlow Authentication Token",
"password": true
},
{
"id": "pact_broker_username",
"type": "promptString",
"description": "Pact Broker Username",
"password": true
},
{
"id": "pact_broker_password",
"type": "promptString",
"description": "Pact Broker Password",
"password": true
},
{
"id": "qmetry_api_key",
"type": "promptString",
"description": "QMetry Open API Key",
"password": true
},
{
"id": "qmetry_base_url",
"type": "promptString",
"description": "By default, connects to https://testmanagement.qmetry.com. Change to a custom QMetry server URL or a region-specific endpoint if needed.",
"password": false
},
{
"id": "zephyr_api_token",
"type": "promptString",
"description": "Zephyr API token - leave blank to disable Zephyr tools",
"password": true
},
{
"id": "zephyr_base_url",
"type": "promptString",
"description": "Zephyr API base URL. By default, connects to https://api.zephyrscale.smartbear.com/v2. Change to region-specific endpoint if needed.",
"password": false
},
{
"id": "collab_base_url",
"type": "promptString",
"description": "Collab base url",
"password": true
},
{
"id": "collab_username",
"type": "promptString",
"description": "Collab username",
"password": true
},
{
"id": "collab_login_ticket",
"type": "promptString",
"description": "Collab login ticket",
"password": true
},
{
"id": "qtm4j_api_key",
"type": "promptString",
"description": "QTM4J API Key",
"password": true
},
{
"id": "qtm4j_base_url",
"type": "promptString",
"description": "US region (default): https://qtmcloud.qmetry.com. Australia region: https://syd-qtmcloud.qmetry.com.",
"password": false
},
{
"id": "qtm4j_automation_api_key",
"type": "promptString",
"description": "QTM4J Automation API Key - required for automation tools, leave blank to disable them",
"password": true
},
{
"id": "swagger_functional_testing_api_token",
"type": "promptString",
"description": "Swagger Functional Testing API Token - leave blank to disable Functional Testing tools",
"password": true
},
{
"id": "swagger_functional_testing_base_path",
"type": "promptString",
"description": "Swagger Functional Testing API Base URL - leave blank to use the default (https://api.reflect.run/v1)",
"password": false
}
]
}
Claude Desktop
MCP サーバーを npx 経由で起動するには、以下の設定を claude_desktop_config.json に追加します。
{
"mcpServers": {
"smartbear": {
"command": "npx",
"args": [
"-y",
"@smartbear/mcp@latest"
],
"env": {
"BEARQ_API_TOKEN": "your_bearq_api_token",
"BUGSNAG_AUTH_TOKEN": "your_personal_auth_token",
"BUGSNAG_PROJECT_API_KEY": "your_project_api_key",
"REFLECT_API_TOKEN": "your_reflect_token",
"SWAGGER_API_KEY": "your_swagger_key",
"SWAGGER_PORTAL_BASE_PATH": "https://api.portal.swaggerhub.com/v1",
"SWAGGER_REGISTRY_BASE_PATH": "https://api.swaggerhub.com",
"SWAGGER_UI_BASE_PATH": "https://app.swaggerhub.com",
"PACT_BROKER_BASE_URL": "your_pactflow_or_pactbroker_base_url",
"PACT_BROKER_TOKEN": "your_pactflow_token",
"PACT_BROKER_USERNAME": "your_pact_broker_username",
"PACT_BROKER_PASSWORD": "your_pact_broker_password",
"QMETRY_API_KEY": "your_qmetry_api_key",
"QMETRY_BASE_URL": "https://testmanagement.qmetry.com",
"ZEPHYR_API_TOKEN": "your_zephyr_api_token",
"ZEPHYR_BASE_URL": "https://api.zephyrscale.smartbear.com/v2",
"COLLABORATOR_BASE_URL": "your collab base url",
"COLLABORATOR_USERNAME": "your collab user name",
"COLLABORATOR_LOGIN_TICKET": "your collab login ticket",
"QTM4J_API_KEY": "your_qtm4j_key",
"QTM4J_BASE_URL": "https://qtmcloud.qmetry.com",
"QTM4J_AUTOMATION_API_KEY": "your_qtm4j_automation_api_key",
"SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "your_swagger_functional_testing_api_token",
"SWAGGER_FUNCTIONAL_TESTING_BASE_PATH": "https://api.reflect.run/v1"
}
}
}
}
使用する製品のみを読み込む
MCP_CLIENTS に製品名をカンマ区切りで指定すると(大文字と小文字は区別されません。例:"MCP_CLIENTS": "QMetry")、指定した製品のみが読み込まれます。これにより起動時間が短縮され、initialize のタイムアウトが短いクライアントで役立ちます。有効な名前は BearQ、BugSnag、Collaborator、Contract Testing、QMetry、QTM4J、Reflect、Swagger、Zephyr です。設定しない場合は、すべての製品が読み込まれます。
サーバー設定(HTTP モード)
| 変数 | デフォルト | 用途 |
|---|---|---|
BASE_URL | (リクエストから導出) | サーバー自身の公開 URL。例:https://mcp.example.com。プロキシまたはロードバランサーの背後にデプロイする場合は設定してください。設定しないと、OAuth ディスカバリー用に通知されるアドレスは、クライアントから送信された Host ヘッダーから導出されます。 |
TRUST_PROXY | false | サーバーの前段にあるプロキシが X-Forwarded-Host を設定し、クライアントから送信された値を削除する場合にのみ true に設定してください。 |
MCP_SERVER_AMPLITUDE_API_KEY | (未設定 — 分析は無効) | SmartBear の共有 Amplitude プロジェクト用 API キーです。設定すると、サーバーは Server Initialized、Session Started、Session Ended、Tool Called、Tools Listed の使用イベントを報告します(記録されるのはツールの結果と所要時間のみで、ツールの引数、結果、認証情報、生のメールアドレスは一切含まれません)。未設定の場合、何も記録されません。HTTP モードのみ。 |
ドキュメント
詳しい紹介、例、高度な設定については、📖 完全なドキュメントをご覧ください。
ローカルでの開発
SmartBear MCP サーバーへの貢献を希望する開発者は、CONTRIBUTING.md ガイドをご覧ください。
ライセンス
この MCP サーバーは MIT License のもとでライセンスされています。つまり、MIT License の利用規約に従うことを条件に、ソフトウェアを自由に使用、変更、配布できます。詳しくは、プロジェクトリポジトリの LICENSE ファイルをご覧ください。
サポート
SmartBear MCP Server - SmartBear のテストおよび監視エコシステムの力を、AI を活用した開発ワークフローにお届けします。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。