Sevalla について
Sevalla MCP は、AI エージェントが Sevalla のアプリ、データベース、静的サイトを管理するためのホスト型サーバーです。専用ツールで一般的なデプロイや運用を行え、操作種別ごとに整理された追加の API アクセスも提供します。
主な機能
- 01サービスのデプロイとロールバック
- 02ログとメトリクスの参照
- 03環境変数とドメインの管理
- 04サービスの作成とスケーリング
- 05審査済み API 操作へのアクセス
活用シーン
- 01デプロイ失敗の原因を調査
- 02最近のランタイムエラーを確認
- 03アプリをデプロイまたはロールバック
- 04データベースを作成してアプリに接続
MCP 対応
MCP クライアントは `https://mcp.sevalla.com/mcp` に接続し、OAuth で認証するか Sevalla API キーを使用します。サービス探索、デプロイ、可観測性、設定、作成、審査済み API 操作用のツールを公開します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.sevalla.com/mcpclaude mcp add --transport http sevalla https://mcp.sevalla.com/mcp{"mcpServers":{"sevalla":{"type":"http","url":"https://mcp.sevalla.com/mcp"}}}Cursor で開く{"servers":{"sevalla":{"type":"http","url":"https://mcp.sevalla.com/mcp"}}}VS Code で開く{"mcpServers":{"sevalla":{"type":"http","url":"https://mcp.sevalla.com/mcp"}}}{"mcpServers":{"sevalla":{"serverUrl":"https://mcp.sevalla.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Sevalla MCP サーバー
あらゆる AI エージェントから Sevalla のアプリケーション、データベース、静的サイトをデプロイ、デバッグ、管理できます。
Sevalla 用のリモート Model Context Protocol(MCP)サーバーです。Claude Code、Cursor、Codex などの AI エージェントが、Sevalla の会社にあるアプリケーション、データベース、静的サイトを操作できます。ツールは27個あり、日常的なワークフロー(デプロイ、ログとメトリクスの確認、環境変数、スケーリング、ドメイン、サービスの作成)向けに特化した22個と、読み取り、作成、更新、削除に分かれた操作IDを使って Sevalla API の残りの部分にアクセスする汎用ツール5個を利用できます。
クイックスタート
MCP クライアントをホスト型サーバー https://mcp.sevalla.com/mcp に接続し、クライアントがブラウザーを開いたら Sevalla アカウントでサインインしてください。
Claude Code
claude mcp add --transport http sevalla https://mcp.sevalla.com/mcp
次に Claude Code 内で /mcp と入力し、Authenticate を選択して OAuth フローを完了します。
Claude Desktop
設定 → コネクタ → コネクタを追加から追加し、URL に https://mcp.sevalla.com/mcp を入力します。Claude Desktop が OAuth を自動的に処理します。
Cursor
プロジェクトのルートにある .cursor/mcp.json に追加します。
{
"mcpServers": {
"sevalla": {
"url": "https://mcp.sevalla.com/mcp"
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json に追加します。
{
"mcpServers": {
"sevalla": {
"serverUrl": "https://mcp.sevalla.com/mcp"
}
}
}
OpenCode
プロジェクトのルートにある opencode.json に追加します。
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"sevalla": {
"type": "remote",
"url": "https://mcp.sevalla.com/mcp"
}
}
}
次に opencode mcp auth sevalla を実行して、OAuth フローを完了します。
ツール
すべてのツールにはタイトルと、readOnlyHint、destructiveHint、idempotentHint、openWorldHint の明示的なアノテーションが付いています。そのため、Claude などのクライアントは読み取り専用ツールを確認なしで実行し、破壊的な操作は必ず確認を求めます。
| 分野 | ツール |
|---|---|
| 検出 | list_services、get_application、get_static_site、get_database、get_platform_options、search_sevalla_docs |
| デプロイ | list_deployments、get_deployment、get_deployment_logs、trigger_deployment、rollback_deployment |
| オブザーバビリティ | search_runtime_logs、search_access_logs、get_metrics |
| 設定 | list_environment_variables、set_environment_variables、delete_environment_variables、scale_process、add_domain |
| 作成 | create_application、create_static_site、create_database |
| API の残りの部分 | sevalla_api_search、sevalla_api_read、sevalla_api_create、sevalla_api_update、sevalla_api_delete |
汎用ツールが受け付けるのは、Sevalla API v3 の仕様から生成されたレビュー済みテーブルにある操作IDのみです。HTTP メソッドとパスを選択するのはモデルではなくサーバーであり、各ツールはそれぞれのクラスに属する操作のみを実行します。
シークレットと破壊的な操作
環境変数の値は返されません。ツールは変数のキーとスコープを一覧表示し、値を返すことなく設定または削除します。それ以外の Sevalla API の機能はすべて利用できます。サービス全体の削除、API キーの管理、新しいシークレットを発行する操作(Webhook シークレットの更新、デプロイフックの再生成、ストレージ認証情報のローテーション)も含まれ、これらの操作ではシークレットが返されます。破壊的なツールには注記が付いており、呼び出しのたびに Claude が確認を求めます。コマンドはプロセス内(execProcessCommandV3)で実行され、アプリケーションのログには引き続きシークレットが表示される場合があります。
認証
クライアントは OAuth でサインインします。クライアントがブラウザーを開き、Sevalla ダッシュボードで接続を承認すると、そのクライアント用の API キーが作成されます。クライアントの設定に API キーを記載する必要はありません。OAuth に対応していないクライアントは、代わりに Authorization: Bearer <api-key> として Sevalla API キーを送信できます。
各ツールの権限は、接続の背後にある Sevalla API キーの権限に制限されます。Sevalla API キーはきめ細かな権限をサポートしているため、読み取り専用のキーを使えば、エージェントも読み取り専用になります。API のリファレンス全文は api-docs.sevalla.com をご覧ください。
仕組み
リクエストごとに、呼び出し元の API キーに紐づいた新しい MCP サーバーが作成されます。リクエスト間で情報が保存されることはありません。サーバーは MCP 2026-07-28(server/discover、リクエストごとのメタデータ、キャッシュ可能なツール一覧)に対応し、同じ URL と同じツールで、2025 年の各リビジョン(2025-11-25 から 2024-11-05 まで)を使用するクライアントにも対応します。
サインインには PKCE を用いた OAuth 2.1 を使用します。クライアントは OAuth Client ID Metadata Document(Claude、ChatGPT、VS Code などが使用)で自身を識別します。旧式のクライアントでは Dynamic Client Registration を使用します。このフローもステートレスです。保留中の認可情報は HMAC 署名付きでコールバック URL に埋め込まれ、認可コードは AES-256-GCM で暗号化され、アクセストークンは暗号化されたうえで https://mcp.sevalla.com/mcp に紐づけられます。
使用例
- 「storefront の最新のデプロイが失敗した理由を教えてください。」
- 「storefront の main ブランチをデプロイして、公開されたら教えてください。」
- 「過去 1 時間の storefront のランタイムログにあるエラーを要約してください。」
- 「フランクフルトに PostgreSQL データベースを作成し、storefront に接続してください。」
- 「storefront に shop.example.com を追加して、作成すべき DNS レコードを教えてください。」
アンインストール
Sevalla MCP サーバーを完全に削除するには、サーバーの設定を削除し、保存されている OAuth 認証情報も消去してください。
MCP サーバーを削除しても、Sevalla の API キーは削除されません。無効にするには、app.sevalla.com/api-keys にアクセスしてください。
Claude Code
claude mcp remove sevalla
続いて、保存されている OAuth トークンを消去します。Claude Code 内で /mcp を実行し、sevalla を選択して、Clear authentication を選びます。
サーバーをデフォルト以外のスコープに追加した場合は、スコープを明示的に指定してください。
claude mcp remove --scope user sevalla
claude mcp remove --scope project sevalla
Claude Desktop
Settings → Connectors を開き、Sevalla コネクターを見つけて削除します。その後、Claude Desktop を完全に終了して再起動してください。
OAuth トークンはオペレーティングシステムのキーチェーン(macOS Keychain/Windows Credential Manager)に保存されます。削除するには、キーチェーンから Sevalla のエントリーを手動で削除してください。
Cursor
.cursor/mcp.json(プロジェクト)または ~/.cursor/mcp.json(グローバル)から sevalla エントリを削除します。その後、キャッシュされた OAuth トークンを消去します。
rm -rf ~/.mcp-auth
Windsurf
~/.codeium/windsurf/mcp_config.json から sevalla エントリを削除します。
OpenCode
opencode mcp logout sevalla
次に、プロジェクトのルートにある opencode.json から sevalla エントリを削除します。
セルフホスト
要件: Node.js 26(24 でも動作します)と pnpm 12 が必要です。TypeScript はネイティブに実行されるため、ビルド手順は不要です。
git clone https://github.com/sevalla/mcp.git
cd mcp
pnpm install
pnpm start
または、Docker を使用します。
docker build -t sevalla-mcp .
# OAUTH_SECRET (base64url-encoded 32 bytes) comes from the environment
docker run -p 3000:3000 -e OAUTH_SECRET sevalla-mcp
| 変数 | 用途 |
|---|---|
PORT | HTTP ポート(デフォルトは 3000) |
OAUTH_SECRET | base64url エンコードされた 32 バイト。NODE_ENV=production の場合に必須です |
PUBLIC_URL | OAuth メタデータで使用する公開ベース URL(デフォルトは https://mcp.sevalla.com) |
SEVALLA_FRONTEND_URL | OAuth 同意ページに使用する Sevalla ダッシュボードの URL(デフォルトは https://app.sevalla.com) |
SEVALLA_API_URL | Sevalla API のベース URL(デフォルトは https://api.sevalla.com) |
SEVALLA_DOCS_URL | search_sevalla_docs が検索するドキュメントサイト(デフォルトは https://docs.sevalla.com) |
DEVICE_CODE_TRUSTED_CLIENT_TOKEN | エンドユーザーの IP ごとに OAuth サインインをレート制限するためのサービス トークン(サーバー IP ごとではありません) |
CLIENT_IP_HEADER | エッジで設定される、エンドユーザーの IP を含むヘッダー(デフォルトは x-forwarded-for。Cloudflare 経由の場合は cf-connecting-ip を使用) |
TRUSTED_PROXY_HOPS | x-forwarded-for の場合、そのヘッダーに値を追加する信頼済みプロキシの数。クライアント IP は右から数えてその数の位置にある値から読み取ります(デフォルトは 1) |
SEVALLA_API_KEY | --stdio モードで使用する Sevalla API キー |
SHUTDOWN_TIMEOUT_MS | グレースフルシャットダウンの期限(デフォルトは 30000) |
OPENAI_APPS_CHALLENGE | OpenAI プラグインの送信時に使用する、/.well-known/openai-apps-challenge で提供されるドメイン検証トークン |
本番環境でのクライアント IP。 デバイスコードのレート制限はエンドユーザーの IP ごとに適用されるため、サーバーはエッジが制御する情報からその IP を読み取る必要があります。Cloudflare 経由の場合は CLIENT_IP_HEADER=cf-connecting-ip を設定し、ヘッダーが偽装されないよう、Cloudflare を経由せずにオリジンへアクセスできないことを確認してください。Cloudflare を使用しない場合は、X-Forwarded-For に値を追加するプロキシの数を TRUSTED_PROXY_HOPS に設定します。デフォルトでは右端の値が読み取られますが、CDN やロードバランサー経由の場合、通常はプロキシのアドレスになるため、すべてのユーザーが同じ制限を共有することになります。
開発
# Hot reload (node --watch)
pnpm dev
# Unit and end-to-end tests (node:test), e2e as both 2026-07-28 and 2025 clients
pnpm test
# End-to-end tests: real HTTP server, MCP SDK client, fake Sevalla API
pnpm test:e2e
# Live checks: client metadata documents; API smoke test and fake API fidelity with SEVALLA_E2E_API_KEY
pnpm test:live
# Evals through headless Claude Code against the fake API (see evals/)
pnpm eval
# tsc + oxlint + oxfmt
pnpm check:code
# Regenerate src/sevalla/operations.json from the live API spec
pnpm sync:operations
# Fail if the live API spec drifted from the snapshot
pnpm check:operations
test/policy.test.ts のポリシーテストでは、ライブのツールリストに対する Anthropic のコネクタディレクトリ要件を適用します。具体的には、すべてのツールのタイトルと明示的なヒント、読み取りと書き込みの分離、指示ではなく説明になっている説明文、ツール定義のサイズ上限です。
ライセンス
MIT です。LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。