mcpField
D
Deployhq

Deployhq

ローカル
github.com/deployhqクラウド・インフラ1331 週間前に更新

Deployhq について

Deployhqは、AIアシスタントからDeployHQのプロジェクトやデプロイを確認・管理するためのMCPサーバーです。アカウント共通のSSHキー、環境変数、設定テンプレートも扱い、認証情報は環境変数で渡します。

主な機能

  1. 01プロジェクト、サーバー、デプロイの確認
  2. 02デプロイの作成とログの確認
  3. 03SSHキーの管理
  4. 04グローバル環境変数の管理
  5. 05グローバル設定テンプレートの管理
  6. 06任意の読み取り専用モード

活用シーン

  1. 01複数プロジェクトのデプロイ状況確認
  2. 02ログを使ったデプロイ失敗の調査
  3. 03指定サーバーへのデプロイ開始
  4. 04アカウント共通のデプロイ設定更新

MCP 対応

DeployHQのプロジェクト、デプロイ、SSHキー、環境変数、設定ファイル操作をMCPクライアント向けのツールとして公開します。主にstdioを使い、任意でSSEとHTTPにも対応します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"deployhq": {
"command": "npx",
"args": [
"-y",
"deployhq-mcp-server"
],
"env": {
"DEPLOYHQ_EMAIL": "<DEPLOYHQ_EMAIL>",
"DEPLOYHQ_API_KEY": "<DEPLOYHQ_API_KEY>",
"DEPLOYHQ_ACCOUNT": "<DEPLOYHQ_ACCOUNT>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
起動コマンドnpx -y deployhq-mcp-server
設定が必要な環境変数
DEPLOYHQ_EMAILYour DeployHQ login email address
DEPLOYHQ_API_KEYシークレットYour DeployHQ password or API key
DEPLOYHQ_ACCOUNTYour DeployHQ account name (from URL: https://ACCOUNT.deployhq.com)
LOG_LEVELLog verbosity level (ERROR, INFO, or DEBUG)

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

パッケージ
npmdeployhq-mcp-server1.2.2

ツール

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

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

詳細

DeployHQ MCP Server

Claude Desktop や Claude Code などの AI アシスタントが DeployHQ のデプロイと連携できるようにする、DeployHQ 用の Model Context Protocol(MCP)サーバーです。

🚀 特長

  • DeployHQ API との完全な連携:プロジェクト、サーバー、デプロイにアクセスできます
  • 簡単にインストール:インストール不要で、npx を使って直接利用できます
  • Claude Desktop と Claude Code に対応:両方の MCP クライアントで stdio トランスポートを使用できます
  • セキュア:認証情報は環境変数を介して使用し、保存されません
  • 型安全:TypeScript と Zod による検証を使用して構築されています
  • 複数のトランスポート:stdio(主要)、SSE、HTTP(ホスティング用のオプション)
  • 本番環境対応:包括的なエラー処理とログ記録

📋 利用可能なツール

この MCP サーバーは、AI アシスタント向けに18 個のツールを提供します。

ツール説明パラメーター
list_projectsすべてのプロジェクトを一覧表示なし
get_projectプロジェクトの詳細を取得permalink
list_serversプロジェクトのサーバーを一覧表示project
list_deploymentsページネーション付きでデプロイを一覧表示project、page?、server_uuid?
get_deploymentデプロイの詳細を取得project、uuid
get_deployment_logデプロイログの出力を取得project、uuid
create_deployment新しいデプロイを作成project、parent_identifier、start_revision、end_revision、およびオプションのパラメーター
list_ssh_keysすべての SSH 公開鍵を一覧表示なし
create_ssh_key新しい SSH キーペアを作成title、key_type?
list_global_environment_variablesすべてのグローバル環境変数を一覧表示なし
create_global_environment_variableグローバル環境変数を作成name、value、locked?、build_pipeline?
update_global_environment_variableグローバル環境変数を更新id、name?、value?、locked?、build_pipeline?
delete_global_environment_variableグローバル環境変数を削除id
list_global_config_filesすべてのグローバル設定ファイルテンプレートを一覧表示なし
get_global_config_file本文を含むグローバル設定ファイルを取得id
create_global_config_fileグローバル設定ファイルテンプレートを作成path、body、description?、build?
update_global_config_fileグローバル設定ファイルテンプレートを更新id、path?、body?、description?、build?
delete_global_config_fileグローバル設定ファイルテンプレートを削除id
list_projects

DeployHQ アカウント内のすべてのプロジェクトを一覧表示します。

戻り値:リポジトリ情報とデプロイ状況を含むプロジェクトの配列。

get_project

特定のプロジェクトに関する詳細情報を取得します。

パラメーター:

  • permalink(string):プロジェクトのパーマリンクまたは識別子
list_servers

プロジェクトに設定されているすべてのサーバーを一覧表示します。

パラメーター:

  • project(string):プロジェクトのパーマリンク
list_deployments

ページネーションに対応した、プロジェクトのデプロイ一覧を取得します。

パラメーター:

  • project(string):プロジェクトのパーマリンク
  • page(number、任意):ページネーションのページ番号
  • server_uuid(string、任意):サーバー UUID で絞り込み
get_deployment

特定のデプロイに関する詳細情報を取得します。

パラメーター:

  • project(string):プロジェクトのパーマリンク
  • uuid(string):デプロイ UUID
get_deployment_log

特定のデプロイのデプロイログを取得します。失敗したデプロイのデバッグに役立ちます。

パラメーター:

  • project(string):プロジェクトのパーマリンク
  • uuid(string):デプロイ UUID

戻り値:テキスト形式のデプロイログ全文

create_deployment

プロジェクトの新しいデプロイメントを作成します。

パラメーター:

  • project(string):プロジェクトのパーマリンク
  • parent_identifier(string):サーバーまたはサーバーグループの UUID
  • start_revision(string):開始コミットハッシュ
  • end_revision(string):終了コミットハッシュ
  • branch(string、任意):デプロイ元のブランチ
  • mode(string、任意):「queue」または「preview」
  • copy_config_files(boolean、任意):設定ファイルをコピーします
  • run_build_commands(boolean、任意):ビルドコマンドを実行します
  • use_build_cache(boolean、任意):ビルドキャッシュを使用します
  • use_latest(string、任意):直近にデプロイされたコミットを開始点として使用します
list_ssh_keys

アカウントのすべての SSH 公開鍵を一覧表示します。

戻り値:公開鍵、フィンガープリント、鍵の種類を含む SSH 鍵の配列です。秘密鍵は返しません。

create_ssh_key

アカウント用の新しい SSH 鍵ペアを作成します。

パラメーター:

  • title(string):SSH 鍵のタイトル
  • key_type(string、任意):鍵の種類 — ED25519(デフォルト)または RSA
list_global_environment_variables

すべてのグローバル(アカウントレベル)環境変数を一覧表示します。

戻り値:名前、マスクされた値、設定を含む環境変数の配列です。

create_global_environment_variable

すべてのプロジェクトで使用できる新しいグローバル環境変数を作成します。

パラメーター:

  • name(string):変数名
  • value(string):変数の値
  • locked(boolean、任意):変更を防ぐために変数をロックします
  • build_pipeline(boolean、任意):ビルドパイプラインで使用できるようにします
update_global_environment_variable

既存のグローバル環境変数を更新します。

パラメーター:

  • id(string):環境変数の識別子
  • name(string、任意):変数名
  • value(string、任意):変数の値
  • locked(boolean、任意):ロック状態
  • build_pipeline(boolean、任意):ビルドパイプラインでの使用可否
delete_global_environment_variable

グローバル環境変数を削除します。この操作は取り消せません。

パラメーター:

  • id(string):環境変数の識別子
list_global_config_files

すべてのグローバル(アカウントレベル)設定ファイルテンプレートを一覧表示します。

戻り値:パス、説明、設定を含む設定ファイルの配列です。

get_global_config_file

本文の内容を含め、指定したグローバル設定ファイルテンプレートを取得します。

パラメーター:

  • id(string):設定ファイルの識別子(UUID)
create_global_config_file

新しいグローバル設定ファイルテンプレートを作成します。

パラメーター:

  • path(string):ファイルパス(例:config/database.yml)
  • body(string):ファイルの内容
  • description(string、任意):設定ファイルの説明
  • build(boolean、任意):ビルドパイプラインで使用します
update_global_config_file

既存のグローバル設定ファイルテンプレートを更新します。

パラメーター:

  • id(string):設定ファイルの識別子(UUID)
  • path(string、任意):ファイルパス
  • body(string、任意):ファイルの内容
  • description(string、任意):説明
  • build(boolean、任意):ビルドパイプラインのフラグ
delete_global_config_file

グローバル設定ファイルテンプレートを削除します。この操作は取り消せません。

パラメーター:

  • id(string):設定ファイルの識別子(UUID)

🚀 クイックスタート

Claude Code への簡単なインストール

Claude Code にインストールする最も簡単な方法:

claude mcp add --transport stdio deployhq --env [email protected] --env DEPLOYHQ_API_KEY=your-api-key --env DEPLOYHQ_ACCOUNT=your-account -- npx -y deployhq-mcp-server

[email protected]、your-api-key、your-account を実際の DeployHQ 認証情報に置き換えてください。

手動設定(Claude Desktop と Claude Code の両方で動作します)

同じ設定をどちらのクライアントでも使用できます。docs/claude-config.json の内容をコピーし、認証情報を追加してください。

Claude Desktop の場合:

設定ファイルを編集します。

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json

その後、Claude Desktop を再起動してください。

Claude Code の場合:

プロジェクトディレクトリにある .claude.json ファイルに追加し、Claude セッションを終了してから再起動してください(exit または Ctrl+D を入力し、その後 claude を実行します)。

設定:

{
  "mcpServers": {
    "deployhq": {
      "command": "npx",
      "args": ["-y", "deployhq-mcp-server"],
      "env": {
        "DEPLOYHQ_EMAIL": "[email protected]",
        "DEPLOYHQ_API_KEY": "your-password",
        "DEPLOYHQ_ACCOUNT": "your-account-name"
        // Optional: "LOG_LEVEL": "INFO"  (ERROR, INFO, or DEBUG)
      }
    }
  }
}

注記:必要なのは DeployHQ の認証情報 3 つだけです。LOG_LEVEL は省略可能で、デフォルトは INFO です。

使い始める

設定が完了したら、Claude に DeployHQ とのやり取りを依頼できます。

  • 「DeployHQ のプロジェクトをすべて一覧表示して」
  • 「プロジェクト X のサーバーを表示して」
  • 「プロジェクト Y の最新のデプロイ状況を取得して」
  • 「プロジェクト Z の新しいデプロイを作成して」
  • 「最新のデプロイのログを表示して」
  • 「グローバル環境変数を一覧表示して」
  • 「database.yml 用のグローバル設定ファイルのテンプレートを作成して」
  • 「SSH キーを表示して」

💡 よくある使用例

デプロイ状況を確認する
User: What's the status of my latest deployment for my-app?
Claude: [Uses list_deployments → get_deployment → shows status]
失敗したデプロイをデバッグする
User: Why did the last deployment fail for my-app?
Claude: [Uses list_deployments → get_deployment_log → analyzes log]
最新の変更をデプロイする
User: Deploy the latest changes to production for my-app
Claude: [Uses list_servers → list_deployments → create_deployment with use_latest]
ワークフロー全体の例
User: I want to deploy my-app to production with the latest changes

Claude will:
1. Use list_projects to find "my-app"
2. Use list_servers to find production server UUID
3. Use list_deployments with use_latest to get last revision
4. Use create_deployment to queue deployment
5. Use get_deployment to show status
6. Use get_deployment_log if anything fails

🔧 設定オプション

環境変数
必須
  • DEPLOYHQ_EMAIL:DeployHQ のログイン用メールアドレス
  • DEPLOYHQ_API_KEY:DeployHQ のパスワード/API キー
  • DEPLOYHQ_ACCOUNT:DeployHQ のアカウント名(URL https://ACCOUNT.deployhq.com から確認できます)
任意
  • LOG_LEVEL:ログの詳細度を制御します。ERROR、INFO、DEBUG のいずれかを指定します(デフォルト:INFO)
  • NODE_ENV:環境モード。production または development
  • DEPLOYHQ_READ_ONLY:true に設定すると、すべての変更操作がブロックされます(デフォルト:false)
ログレベル

LOG_LEVEL 環境変数でログの詳細度を制御します。

  • ERROR:エラーのみを表示します
  • INFO:情報とエラーを表示します(デフォルト)
  • DEBUG:詳細な API 呼び出しを含むすべてのログを表示します

例:

{
  "mcpServers": {
    "deployhq": {
      "command": "npx",
      "args": ["-y", "deployhq-mcp-server"],
      "env": {
        "DEPLOYHQ_EMAIL": "[email protected]",
        "DEPLOYHQ_API_KEY": "your-password",
        "DEPLOYHQ_ACCOUNT": "your-account-name",
        "LOG_LEVEL": "DEBUG"
      }
    }
  }
}

🐛 トラブルシューティング

サーバーが起動しない

問題:起動直後にサーバーが終了する

解決方法:

  • 必須の環境変数がすべて設定されていることを確認してください
  • Node.js のバージョンが 18 以上であることを確認してください:node --version
  • Claude Desktop/Code のログでエラーメッセージを確認してください
  • 詳細を確認するには、LOG_LEVEL=DEBUG を設定してみてください
認証エラー

問題:「Authentication failed」または 401/403 エラー

解決方法:

  • メールアドレスと API キーが正しいことを確認してください
  • API キーの有効期限が切れていないことを確認してください
  • アカウントで API アクセスが有効になっていることを確認してください
  • 同じ認証情報で DeployHQ のウェブインターフェースにログインしてみてください
プロジェクトが見つからない

問題:「Project not found」または 404 エラー

解決方法:

  • list_projects を使用して、正確なパーマリンク形式を確認してください
  • プロジェクトのパーマリンクでは大文字と小文字が区別されます
  • DeployHQ でそのプロジェクトへのアクセス権があることを確認してください
デプロイの作成がブロックされる

問題:デプロイを作成しようとすると、「Server is running in read-only mode」エラーが表示される

解決方法:

  • 読み取り専用モードはデフォルトで無効ですが、有効にしている可能性があります
  • 読み取り専用モードを無効にするには、環境変数で DEPLOYHQ_READ_ONLY=false を設定してください
  • または、--read-only=false CLI フラグを使用してください
  • 読み取り専用モードの詳しい手順については、セキュリティ セクションを参照してください
デプロイが失敗する

問題:デプロイが作成された直後に失敗する

解決方法:

  • get_deployment_log を使用して、詳細なエラーログを確認してください
  • list_servers でサーバー UUID が正しいことを確認してください
  • 開始リビジョンと終了リビジョンがリポジトリに存在することを確認してください
  • サーバーに正しいデプロイキーが設定されていることを確認してください
接続がタイムアウトする

問題:「Request timeout」エラー

解決方法:

  • インターネット接続を確認してください
  • DeployHQ API にアクセスできることを確認してください:curl https://YOUR_ACCOUNT.deployhq.com
  • デプロイのリストが大きい場合は時間がかかることがあります。ページネーションを使用してください
  • DeployHQ に問題が発生している場合は、少し時間をおいてから再試行してください
ログが表示されない

問題:ログ出力が表示されない

解決策:

  • ログは stdout ではなく stderr に出力されます(stdio トランスポートの場合)
  • Claude Desktop/Code のログの場所を確認してください:
    • macOS:~/Library/Logs/Claude/
    • Windows:%APPDATA%\Claude\logs\
  • 詳細な出力を有効にするには、LOG_LEVEL=DEBUG を設定してください
  • ホステッドモードの場合は、Digital Ocean のログを確認してください
DeployHQ の認証情報を取得する
  1. ユーザー名:DeployHQ のログイン用メールアドレス
  2. パスワード:DeployHQ のパスワード
  3. アカウント:DeployHQ のアカウント名(URL に表示されています:https://ACCOUNT.deployhq.com)

🏗️ アーキテクチャ

┌─────────────────┐                    ┌─────────────┐
│  Claude Desktop │    stdio/JSON-RPC  │  DeployHQ   │
│  or Claude Code │◄──────────────────►│  API        │
│                 │    (via npx)       │             │
│  Environment    │                    │             │
│  Variables ─────┼───────────────────►│ Basic Auth  │
└─────────────────┘                    └─────────────┘
  • Claude Desktop/Code:npx を介してサーバーを起動する MCP クライアント
  • MCP サーバー:環境変数から認証情報を読み取り、stdio で通信します
  • DeployHQ API:HTTP Basic Authentication を使用する REST API

📦 前提条件

  • Node.js 18+(Node 20+ を推奨)
  • API アクセスが可能な DeployHQ アカウント(すべての有料プランで利用可能)

注:このサーバーは HTTP リクエストに node-fetch を使用します。開発ツール(ESLint、Vitest)には Node 18+ が必要です。

🔧 ローカルでの開発

1. リポジトリをクローンする
git clone https://github.com/your-username/deployhq-mcp-server.git
cd deployhq-mcp-server
2. 依存関係をインストールする
npm install
3. テストを実行する
npm test              # Run tests once
npm run test:watch    # Run tests in watch mode
npm run test:coverage # Run tests with coverage report
npm run test:ui       # Run tests with UI
4. プロジェクトをビルドする
npm run build
5. stdio トランスポートをローカルでテストする
# Build first
npm run build

# Test with environment variables
DEPLOYHQ_EMAIL="[email protected]" \
DEPLOYHQ_API_KEY="your-api-key" \
DEPLOYHQ_ACCOUNT="your-account" \
node dist/stdio.js

サーバーが stdio モードで起動し、stdin 上の JSON-RPC メッセージを待ち受けます。

6. Claude Code でテストする

ビルドしたバージョンを使用するように、ローカルの .claude.json を設定します:

{
  "mcpServers": {
    "deployhq": {
      "command": "node",
      "args": ["/path/to/deployhq-mcp-server/dist/stdio.js"],
      "env": {
        "DEPLOYHQ_EMAIL": "[email protected]",
        "DEPLOYHQ_API_KEY": "your-password",
        "DEPLOYHQ_ACCOUNT": "your-account-name"
      }
    }
  }
}

🧪 テスト

このプロジェクトには、Vitest を使用した包括的なテストスイートが含まれています:

テストカバレッジ:

  • ✅ ツールスキーマの検証 - 18 個すべての MCP ツールスキーマについて、有効な入力と無効な入力を検証
  • ✅ API クライアントのメソッド - モックレスポンスを使って、DeployHQ API の全メソッドをテスト
  • ✅ エラー処理 - 認証、検証、ネットワークのエラー
  • ✅ MCP サーバーファクトリー - サーバーの作成と設定

テストの実行:

npm test              # Run all tests
npm run test:watch    # Watch mode for development
npm run test:coverage # Generate coverage report
npm run test:ui       # Interactive UI for debugging

テスト統計:

  • 10 個のテストスイートで合計 216 件のテスト
  • tools、api-client、mcp-server モジュールをカバー
  • 分離された単体テストにモック fetch を使用

🔒 セキュリティ

読み取り専用モード(任意)

デフォルトでは、MCP サーバーはデプロイの作成を含むすべての操作を許可します。 ほとんどのユーザーには、この設定を推奨します。

誤ってデプロイしてしまうことへの保護を強化したい場合は、デプロイの作成をブロックする任意の読み取り専用モードを有効にできます。

デフォルトの動作(設定不要):

  • ✅ デフォルトでデプロイが許可されます
  • ✅ 一覧表示、取得、デプロイの作成など、すべての操作が可能です
  • ✅ すぐにすべての機能を利用できます

読み取り専用モードを有効にした方がよい場合:

  • AI による誤ったデプロイを防ぐため、追加の保護が必要な場合
  • 本番環境に接続していて、追加の安全対策を設けたい場合
  • デプロイを監視するための読み取りアクセスのみが必要な場合
  • 連携をテスト中で、慎重に進めたい場合

重要: 読み取り専用モードは完全に任意です。このモードを有効にしなくても、サーバーのすべての機能を利用できます。

読み取り専用モードを有効にする方法:

環境変数を使用する場合:

{
  "mcpServers": {
    "deployhq": {
      "command": "npx",
      "args": ["-y", "deployhq-mcp-server"],
      "env": {
        "DEPLOYHQ_EMAIL": "[email protected]",
        "DEPLOYHQ_API_KEY": "your-api-key",
        "DEPLOYHQ_ACCOUNT": "your-account",
        "DEPLOYHQ_READ_ONLY": "true"
      }
    }
  }
}

CLI フラグを使用する場合:

{
  "mcpServers": {
    "deployhq": {
      "command": "npx",
      "args": [
        "-y",
        "deployhq-mcp-server",
        "--read-only"
      ],
      "env": {
        "DEPLOYHQ_EMAIL": "[email protected]",
        "DEPLOYHQ_API_KEY": "your-api-key",
        "DEPLOYHQ_ACCOUNT": "your-account"
      }
    }
  }
}

設定の優先順位:

  1. CLI フラグ --read-only(最優先)
  2. 環境変数 DEPLOYHQ_READ_ONLY
  3. デフォルト値:false(デプロイを許可)
追加のセキュリティに関する注意事項
  • デプロイログにシークレットが含まれる場合があります:デプロイログには、環境変数、API キー、その他の機密情報が含まれることがあります。ログを取得するツールを使用する際は、特にサードパーティの AI サービスを利用する場合、十分に注意してください。

  • 最小権限の API キーを使用する:MCP アクセスに必要な最小限の権限を持つ専用の API キーを作成してください。読み取り専用操作と読み書き操作には、別々のキーを使用することを検討してください。

  • MCP の利用状況を監査する:特に本番環境では、MCP の利用状況を監視してください。予期しない動作がないか、定期的にログを確認してください。

  • 環境変数:認証情報は保存されず、環境変数を介して渡されるだけです

  • HTTPS:npx を使用する場合、認証情報はお使いのマシン内にとどまります

  • テレメトリなし:DeployHQ API 以外にデータが送信されることはありません


🌐 オプション:ホステッドデプロイ

サーバーは、SSE/HTTP トランスポートを使用してホステッドサービスとしてデプロイすることもできます。ウェブ連携やチームでの共有アクセスに便利です。

🚀 Digital Ocean へのデプロイ
オプション 1:ダッシュボードを使用する
  1. リポジトリを準備する:

    git add .
    git commit -m "Initial commit"
    git push origin main
    
  2. 新しいアプリを作成する:

    • Digital Ocean Apps にアクセスします
    • 「Create App」をクリックします
    • GitHub リポジトリを選択します
    • ブランチ(main)を選択します
  3. アプリを設定する:

    • Digital Ocean が Dockerfile を自動的に検出します
    • または .do/app.yaml 設定を使用します
  4. 環境変数を設定する:

    • App Settings → Environment Variables に移動します
    • 以下を暗号化された変数として追加します:
      • DEPLOYHQ_EMAIL
      • DEPLOYHQ_API_KEY
      • DEPLOYHQ_ACCOUNT
    • 以下を通常の変数として追加します:
      • NODE_ENV=production
      • PORT=8080
      • LOG_LEVEL=info
  5. デプロイする:

    • 「Next」と「Create Resources」をクリックします
    • デプロイが完了するまで待ちます
  6. カスタムドメインを設定する(任意):

    • Settings → Domains に移動します
    • mcp.deployhq.com を追加します
    • 指示に従って DNS レコードを更新します
オプション 2:doctl CLI を使用する
  1. doctl をインストールする:

    # macOS
    brew install doctl
    
    # Linux
    cd ~
    wget https://github.com/digitalocean/doctl/releases/download/v1.104.0/doctl-1.104.0-linux-amd64.tar.gz
    tar xf doctl-1.104.0-linux-amd64.tar.gz
    sudo mv doctl /usr/local/bin
    
  2. 認証する:

    doctl auth init
    
  3. .do/app.yaml を更新する:

    • github.repo フィールドを編集して、リポジトリを指定します
    • 必要に応じて、インスタンスのサイズを確認し、調整します
  4. アプリを作成する:

    doctl apps create --spec .do/app.yaml
    
  5. 環境シークレットを設定する:

    # Get your app ID
    doctl apps list
    
    # Update environment variables (replace APP_ID)
    doctl apps update APP_ID --spec .do/app.yaml
    
  6. ログを表示する:

    doctl apps logs APP_ID --follow
    
🔒 ホステッド環境のセキュリティ
  • 認証情報をコミットしないでください:ローカル開発では .env を使用します(.gitignore により除外されます)
  • Digital Ocean のシークレットを使用する:認証情報は暗号化された環境変数として保存します
  • HTTPS のみ:Digital Ocean が HTTPS を自動的に提供します
  • 最小限の権限:必要最小限の権限を持つ専用の DeployHQ ユーザーを使用します
📊 ホステッド環境の監視
ヘルスチェック

ホステッドサーバーには、/health のヘルスチェックエンドポイントが含まれています:

curl https://mcp.deployhq.com/health
ログ

Digital Ocean でログを表示します:

  • ダッシュボード:アプリ → Runtime Logs に移動します
  • CLI:doctl apps logs <APP_ID> --follow
アラート

Digital Ocean から次の問題についてアラートが届きます:

  • デプロイの失敗
  • ドメイン設定の問題
  • ヘルスチェックの失敗
🧪 ホステッドサーバーのテスト

SSE エンドポイントをテストします:

curl -N http://localhost:8080/sse \
  -H "X-DeployHQ-Email: [email protected]" \
  -H "X-DeployHQ-API-Key: your-api-key" \
  -H "X-DeployHQ-Account: your-account"

HTTP トランスポートのエンドポイントをテストします:

curl -X POST http://localhost:8080/mcp \
  -H "Content-Type: application/json" \
  -H "X-DeployHQ-Email: [email protected]" \
  -H "X-DeployHQ-API-Key: your-api-key" \
  -H "X-DeployHQ-Account: your-account" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/list",
    "params": {},
    "id": 1
  }'

テスト例の全容については、ホステッドデプロイのドキュメントを参照してください。

📚 プロジェクト構成

deployhq-mcp-server/
├── src/
│   ├── stdio.ts          # stdio transport entrypoint (for Claude Desktop/Code)
│   ├── index.ts          # Express server (for hosted deployment)
│   ├── mcp-server.ts     # Core MCP server factory (shared)
│   ├── tools.ts          # Tool definitions and schemas (shared)
│   ├── api-client.ts     # DeployHQ API client (shared)
│   ├── transports/       # SSE/HTTP handlers (for hosted)
│   └── utils/            # Logging and utilities
├── docs/
│   ├── claude-config.json          # Universal config template (Desktop & Code)
│   ├── USER_GUIDE.md               # User documentation
│   ├── DEPLOYMENT.md               # Hosted deployment guide
│   └── HTTP_TRANSPORT.md           # HTTP transport documentation
├── .do/
│   └── app.yaml          # Digital Ocean configuration (optional)
├── Dockerfile            # Container configuration (optional)
├── package.json          # Dependencies and scripts
├── tsconfig.json         # TypeScript configuration
├── STDIO_MIGRATION.md    # stdio migration documentation
└── README.md             # This file

🤝 コントリビューション

コントリビューションを歓迎します。以下の手順に従ってください:

  1. リポジトリをフォークします
  2. 機能ブランチを作成します
  3. 変更を加えます
  4. 該当する場合はテストを追加します
  5. プルリクエストを送信します
メンテナー向け

リリースの作成と npm への公開手順については、RELEASING.md を参照してください。

プライバシーポリシー

この MCP サーバーは、DeployHQ API との通信に必要な範囲を超えて、ユーザーデータを収集、保存、送信することはありません。認証情報は環境変数を介して渡され、ログに記録されたり、永続化されたりすることはありません。

DeployHQ のプライバシーポリシー全文については、こちらを参照してください:https://www.deployhq.com/privacy

📄 ライセンス

MIT License - 詳細については LICENSE ファイルを参照してください

🆘 サポート

🔗 関連リンク

コメント

MCP は初めてですか?

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

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