Base44のMCPサーバーをClaudeにつなぐ手順と権限の注意点
Base44 MCPサーバーをClaude Codeとclaude.aiに接続し、アプリの作成・編集・データ操作を任せる手順です。Builderプランの条件、ワークスペースの固定、スキーマ置換や復元で消える変更の落とし穴もまとめます。
Base44のMCPサーバーは、Base44アカウントのアプリ(公式の呼び方は「プロジェクト」)をClaudeから作成・編集・照会するための接続口です。接続先はhttps://app.base44.com/mcpの1つで、認証はOAuthです。使うにはBuilderプラン以上が必要です。
Claude Codeなら登録は1コマンドで済みます。難しいのはその後で、どのワークスペースに繋ぐか、どのツールを自動承認してよいか、変更が履歴に残る条件は何か、の3点です。この記事では接続手順に加えて、この3点を順に説明します。
接続前に確認する条件: プランとワークスペース
先に条件を確かめておくと、OAuthの途中で止まりません。
接続の前提
必要なプラン
Builder以上
未満だと接続できない
接続先URL
app.base44.com/mcp
OAuthでサインイン
ワークスペース
接続ごとに1つ
途中で変更不可
Builderプラン未満のアカウントでは、MCP経由でAIアシスタントを接続できません。アプリのサンドボックスにエディタの外から触る場合も同じで、権限が足りないとコマンドがPREMIUM_REQUIREDで失敗します。
ワークスペースはOAuthの同意画面で選びます。以前は接続がすべて個人ワークスペースを向いていましたが、現在はチームの共有ワークスペースを選べます。選んだワークスペースは接続の寿命のあいだ固定され、別のワークスペースには届きません。切り替えたいときは、もう一度接続して同意画面で選び直します。
Claudeは「あなた本人」として動くので、ワークスペースでのあなたの役割がそのまま上限になります。
| 操作 | 必要な権限 |
|---|---|
| プロジェクトの作成 | 必要な権限ワークスペースでの作成権限(共有ワークスペースのViewerとGuestは不可) |
| プロジェクトの編集 | 必要な権限そのプロジェクトへの書き込み権限(読み取り専用のViewerは不可) |
| 一覧・スキーマ・レコードの参照 | 必要な権限すでに持っている読み取り権限と同じ |
SSOを強制しているワークスペースでは、確認がさらに厳しくなります。Base44はリクエストのたびにメンバーシップを再確認します。ワークスペースから外されると接続は即座に切れ、SSO設定がローテーションされると、つなぎ直すまで使えません。
Claude Codeに登録する
Claude Codeではclaude mcp addでHTTP型のサーバーを追加します。
claude mcp add --transport http base44 https://app.base44.com/mcp追加したらClaude Codeのセッションで/mcpを実行し、base44を選んでサインインを始めます。ブラウザでOAuthの同意画面が開くので、使うワークスペースを選びます。Base44側のドキュメントによれば、サインインは一度で足ります。
/mcpJSON設定で管理したい場合は、MCP設定に次のエントリを書きます。
"base44": {
"type": "http",
"url": "https://app.base44.com/mcp"
}同意画面ではsandbox:writeの許可も求められます。ここを許可しないと、Claudeはアプリを読めても変更できません。コードを直接書き換える作業まで任せたいなら、この許可は外さずに進めます。セッションの権限は作成時に固定され、あとから広げられないため、許可し忘れたときはMCPサーバーをつなぎ直して同意し直します。
ツールによっては、新しいMCP設定の反映に再起動が要ります。サインイン後にbase44のツールが見えないときは、Claude Codeを再起動してから/mcpで状態を確かめます。
claude.aiのコネクタから使う
Claude Codeを使わない場合は、Claudeのコネクタ一覧からBase44を追加します。公式のコネクタページでは「Anthropic verified」と表示され、追加は2026年3月、カテゴリはDeveloper tools、サインインが必要です。接続先URLは同じhttps://app.base44.com/mcpです。
コネクタページに載っているツールは5つです。
create_base44_appedit_base44_applist_user_appslist_entity_schemasquery_entities
一方、Base44のドキュメントにはもっと多くのツールが載っています。両者の一覧は一致していません。claude.ai側でどのツールが有効かは、どちらのページにも記載がないため、接続後にClaudeへ使えるツールを尋ねて確かめます。
3種類のツール: 誰がコードを書くのかで分かれる
ドキュメント上のツールは3種類に分かれ、コードを書くのが誰かが違います。
プロジェクトツールとサンドボックスツールの違い
プロジェクトツール
create_base44_appとedit_base44_appは、依頼を渡すとBase44のアプリエディタ側のAIが実装します。ビルドはバックグラウンドで進み、完了するとエディタへのリンクが返ります。
サンドボックスツール
read_file、write_file、edit_file、run_commandなどで、アプリのクラウド環境の中をClaudeが直接読み書きします。コードの品質をClaude Codeの流儀で揃えたいときに向きます。
3種類目のプラットフォームAPIツールは、デプロイ、分析、シークレット、カスタムドメインなど、専用ツールのない操作に届きます。list_api_catalogで操作を探し、describe_apiで仕様を読み、execute_apiで呼ぶ流れです。base44_readmeは会話の最初に1回呼ばれ、ツール全体の使い方を返します。
プロジェクトツール
| ツール | 内容 |
|---|---|
create_base44_app | 内容テキストの説明から新しいプロジェクトを作る |
edit_base44_app | 内容既存プロジェクトを変更する |
list_user_apps | 内容プロジェクトの一覧(名前で絞り込み可) |
list_branches | 内容ブランチの一覧(名前・ID・状態) |
list_entity_schemas | 内容プロジェクトのエンティティスキーマを取得 |
create_entity_schema | 内容新しいエンティティスキーマを定義 |
update_entity_schema | 内容既存スキーマのフィールドを置き換える |
query_entities / create_entities / update_entities | 内容エンティティのレコードを検索・作成・更新 |
list_connectors / initiate_connector_connection | 内容サードパーティのコネクタの確認と接続 |
import-claude-design-from-url | 内容公開URLのデザインを取り込み、プロジェクトの構築を始める |
サンドボックスツール
| ツール | 内容 |
|---|---|
list_directory / read_file / grep | 内容一覧・読み取り・検索 |
write_file / edit_file | 内容ファイルの作成・上書き、文字列の置換 |
run_command | 内容サンドボックス内でシェルコマンドを実行 |
create_checkpoint | 内容バージョン履歴に復元点を保存 |
start_checkpoint | 内容変更前にチェックポイントのセッションを始める(段階的に展開中で、未提供のアカウントもある) |
このほかにビルド状況を確かめるget_app_statusと、プレビューのリンクを返すget_app_preview_urlがあります。MCPクライアントが内部で使うもので、直接呼ぶことは想定されていません。
エンティティのレコードは、プラットフォームAPIではなくquery_entities、create_entities、update_entitiesで扱います。
実際に頼んでみる
公式の例にあるのは、次のような依頼です。
- 応募状況・会社名・面接メモを持つ求人管理のプロジェクトを作る
- CRMプロジェクトのContactsエンティティにフォローアップ日のフィールドを足す
- 在庫プロジェクトにテスト用の商品を10件追加する
- eコマースプロジェクトから、ステータスが保留の注文を先頭10件取得する
- 在庫プロジェクトを公開して、公開URLを返す
Claude Codeからは、ツール名を指定せず目的だけを書けば足ります。次の形で試せます。
Base44に「job-tracker」というプロジェクトを作って。応募ごとに会社名、
ステータス、面接メモを持つエンティティが必要。作成後にスキーマを一覧して、
内容を教えて。create_base44_appのビルドはバックグラウンドで進むので、返ってくるのは完了通知ではなくエディタへのリンクです。出来栄えはリンク先のプレビューで確かめます。ビルドが質問待ちで止まっているときは、アプリエディタ側で答える必要があります(get_app_statusがその状態を返します)。
作成の次は、既存プロジェクトの調整です。コードをClaude自身に書かせたいなら、次のように範囲を決めて頼みます。
job-trackerプロジェクトのサンドボックスで、一覧画面のソート順を
更新日の降順に変えて。変更前後でnpm run buildを回して通ることを確認し、
終わったらcheckpointを作って。ビルドの確認をサンドボックスで行う手順は、公式の接続ガイドにもあります。npm run buildかnpx tsc --noEmitを走らせ、コンパイルエラーは開発サーバーのログ(/tmp/vite.log)から読めます。最後にチェックポイントを頼むのは、次の節の理由によります。
変更が消える条件と置き換わる操作
便利さの裏で、実害になりやすい動作が3つあります。
落とし穴
スキーマの更新は差分でなく置換
update_entity_schemaは、送ったフィールド定義でスキーマ全体を置き換えます。含めなかったフィールドや制約は、そのまま残らず削除されます。1フィールド足すだけの依頼でも、既存の定義を全部渡さなければ他が消えます。依頼の前にlist_entity_schemasで現状を読ませ、足す分だけを差し込んだ全体を渡させると安全です。
落とし穴
チェックポイントより後の書き込みは復元で消える
サンドボックスツールでの変更は、書いた時点でアプリに保存されます。ただしバージョン履歴に載るのはチェックポイントだけです。アプリエディタでRestoreかRevertを実行すると、最後のチェックポイントまで戻り、それ以降に書かれたものはすべて破棄されます。変更を終えたらcreate_checkpointを呼ぶように、依頼文に入れておきます。
落とし穴
エディタと同じファイルを同時に触ると後勝ち
Claudeとアプリエディタは同じアプリを同時に編集でき、ロックはありません。マージの手順もなく、同じファイルを同時に変えると最後の書き込みが残り、先の変更は失われます。人がエディタで作業している間は、Claudeに触らせるファイルを分けます。
サンドボックスには他にも制約があります。deployやentities pushのような同期用コマンドは、ローカルプロジェクトがない状態で実行する意味がなく、公式も実行しないよう警告しています。.gitと.agentsには届かず、PROTECTED_PATHで失敗します(.agents/skillsだけは読み書きできます)。1アプリあたり毎分120回の読み取り、60回の変更、30回のコマンド実行が上限で、超えるとRATE_LIMITEDになります。
編集と公開も別です。サンドボックスでの変更はアプリエディタとプレビューにはすぐ反映されますが、公開サイトに届くには、エディタでの変更と同じ公開の手順が要ります。サンドボックスは、使われないでいると停止し、次のコマンドで再開します。その最初の呼び出しは遅くなりますが、コードは最後のコミットから始まるので失われません。
Claude Code側で承認範囲を絞る
OAuthでsandbox:writeを許可すると、Claudeにはかなり広い権限が渡ります。Claude Codeの権限ルールで、ツール単位に承認の要否を分けられます。MCPツールのルールはmcp__<サーバー名>__<ツール名>の形で、サーバー全体はmcp__base44__*と書けます。
{
"permissions": {
"allow": [
"mcp__base44__list_user_apps",
"mcp__base44__list_entity_schemas",
"mcp__base44__query_entities",
"mcp__base44__read_file",
"mcp__base44__grep"
],
"ask": [
"mcp__base44__update_entity_schema",
"mcp__base44__update_entities",
"mcp__base44__run_command"
]
}
}読み取り系は確認なしで通し、スキーマの置換、レコードの更新、シェル実行は毎回確認する構成です。サーバー名はclaude mcp addで付けた名前(上の例ではbase44)と一致させます。これは公式の権限ルールの書式に沿った一例で、どのツールをallowに入れるかは運用で決める部分です。
スキーマの変更は、確認の通る手順を決めておくと事故が減ります。プロジェクトのCLAUDE.mdに次のような1節を置く方法があります。
## Base44の操作ルール
- update_entity_schemaの前に、必ずlist_entity_schemasで現状を取得し、
既存フィールドをすべて含めた定義を渡す
- サンドボックスで変更を終えたら、必ずcreate_checkpointを呼ぶ
- エディタで開いているファイルは、事前に確認してから編集するつまずいたときの切り分け
接続や書き込みが通らないとき
- QBuilderプラン以上のアカウントでサインインしているか?答えがいいえのとき答えがはい
プランをBuilder以上に上げるまで、MCPでもサンドボックスでも接続できません。サンドボックス側では
PREMIUM_REQUIREDが出ます。 - Q読み取りは通るが書き込みだけ`NOT_AUTHORIZED`で落ちるか?答えがいいえのとき答えがはい
そのセッションには
sandbox:writeがありません。MCPサーバーをつなぎ直し、同意画面でサンドボックスへのアクセスを承認します。 - Qプロジェクトの作成や編集が拒否されるか?答えがいいえのとき答えがはい
選んだワークスペースでのあなたの役割を確かめます。共有ワークスペースのViewerとGuestは作成できず、読み取り専用のViewerは既存プロジェクトも変更できません。
それでも別のワークスペースを見ている
ワークスペースは接続の間は固定されます。目的のワークスペースを選んで、もう一度接続します。
隣接する接続との使い分け
同じ「バックエンドを書かせる」系のMCPには、Convex MCPサーバーのように、既存のデプロイメントを読み書きするものがあります。Base44の特徴は、アプリの生成そのものまで同じサーバーで頼める点です。スキーマ設計の相談だけなら、create_entity_schemaとquery_entitiesで足ります。
CI/CDのパイプラインを動かす用途なら、Harness MCPサーバーのように、別のサーバーが担当領域を持っています。Base44のMCPサーバーでもデプロイや分析のAPIには届きますが、パイプラインの管理とは別の話です。
コードをローカルで編集してGitHubで管理したい場合は、MCPのサンドボックスでなくGitHub連携を使う選択肢もあります。公式は、サンドボックスは「その場でアプリのコードを直す」使い方、GitHub連携は「手元のクローンで開発し、mainへのマージでBase44に反映する」使い方と整理しています。
アプリをClaudeから使う側に回したいなら、別のサーバーがあります。Base44のドキュメントでは、自分で作ったアプリに外部のAIアシスタントを接続する「App MCPサーバー」が別に用意されています。この記事で扱うのは、Base44のアカウントそのものにClaudeを繋ぐほうです。