MCP Apps: 自分の MCP サーバーに UI を付けて Claude の中で動かす(Claude Code のスキルで作る)
MCP Apps は MCP サーバーが Claude の会話内に出す操作できる UI。Claude が app tools(UI 側のツール)や埋め込みサイトにも対応したので、サイドパネルや全画面で自分のアプリを動かせる。作るのは公式スキルを入れた Claude Code に任せられる。
できること(Claude 側)
- サイドパネル・全画面表示、Artifacts ページからの起動とサイドバーへのピン留め
- app tools: アプリの UI にツールを登録し、Claude が画面の一覧や選択行を変えられる
- アプリから Claude にメッセージを送る(ボタン押下で「計画を立てて」など)
- 埋め込みサイト: 自社のエディタやダッシュボードを iframe で読み込む
- ファイルのダウンロード
試す(Claude Desktop)
- Settings → Developer → Edit Config で
claude_desktop_config.jsonに例のサーバーを足して再起動する
json
{
"mcpServers": {
"map": { "command": "npx", "args": ["-y", "@modelcontextprotocol/[email protected]", "--stdio"] }
}
}- 試すだけなら版の指定なしでもよいが、残しておくなら版を固定する(
npxは毎回最新を取ってくる)
作る
- Claude Code に公式スキルを入れる:
text
/plugin marketplace add modelcontextprotocol/ext-apps
/plugin install mcp-apps@mcp-apps- 「Create an MCP App」「Add a UI to my MCP tool」と頼む。OpenAI Apps SDK 製のアプリなら「Migrate from OpenAI Apps SDK」で移行も頼める
- サーバー側は
registerAppTool()/registerAppResource()で登録すると、ホストごとのメタデータを作ってくれる。アプリ側はApp.connect()を引数なしで呼ぶとホストを判定する - Claude 用の
ui.domainは「サーバー URL の SHA-256 の先頭32桁+.claudemcpcontent.com」:
shell
node -e 'const u="https://example.com/mcp"; console.log(require("crypto").createHash("sha256").update(u).digest("hex").slice(0,32)+".claudemcpcontent.com")'注意点
- app tools・Artifacts からの起動・埋め込みサイトは、リモートサーバーで動くコネクタでないと使えない。手元のサーバーはトンネルで公開してカスタムコネクタとして足す
- ディレクトリ掲載のコネクタでは、起動口と埋め込みサイトは Verified 掲載のときだけ。Community 掲載から入れた人には出ない(自分のカスタムコネクタでの試験では動いていても)
- サイドパネルなどは組織で使えるかを先に確認する
出典
- @ClaudeDevs · 2026-11-11
- Claude Docs「Get started with MCP Apps」: claude.com