mcpField
I
Ikenga iyke (control bridge)

Ikenga iyke (control bridge)

ローカル
github.comブラウザ自動化011 週間前に更新

Ikenga iyke (control bridge) について

@ikenga/mcp-iykeは、ローカル制御ブリッジを介して実行中のIkengaデスクトップアプリを操作・調査するMCPサーバーです。MCPクライアントやエージェント向けに、UIナビゲーション、操作、実行時の調査、プロジェクト管理ツールを提供します。このリポジトリはアーカイブ済みで、開発はikenga-pkgsに移っています。

主な機能

  1. 01ルート移動とペイン管理
  2. 02DOM・ログ・ネットワークの調査
  3. 03クリック・入力・キー操作
  4. 04スクリーンショットと条件待機
  5. 05Ikengaプロジェクトの管理

活用シーン

  1. 01MCPクライアントから実行中のIkengaセッションを操作
  2. 02デバッグ中にWebViewを調査
  3. 03エージェントツールでペインやプロジェクトを切り替え

MCP 対応

IkengaのローカルHTTP制御ブリッジをラップし、MCPクライアント向けのツールとして公開します。control.jsonからポートとベアラートークンを読み取り、127.0.0.1のみに接続します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"royalti-io-ikenga-pkg-mcp-iyke": {
"command": "npx",
"args": [
"-y",
"@ikenga/mcp-iyke"
]
}
}
}
起動コマンドnpx -y @ikenga/mcp-iyke

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

パッケージ
npm@ikenga/mcp-iyke0.1.2

ツール

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

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

詳細

重要

このリポジトリは移転しました — ここからビルドしないでください

@ikenga/mcp-iyke の開発は ikenga-pkgs モノレポで継続しています。

→ Royalti-io/ikenga-pkgs/packages/mcp/iyke

このリポジトリは 2026 年 5 月 15 日 に最終更新され、現在はアーカイブ済みで読み取り専用です。

クローンした方への重要な情報です。 ここに残されている状態は、最新リリースでも現行バージョンでもありません。package.json では 0.1.2 が宣言されていますが、ソースには、コードがモノレポに戻される前の時期の、移行が一部完了したツールセットが含まれています。このツリーからビルドすると、公開されたことのないものが作成されます。npm からインストールするものには影響しません。

  • npm(変更なし、引き続き適切なパッケージです):@ikenga/mcp-iyke
  • Issue と PR: ikenga-pkgs で作成してください。

@ikenga/mcp-iyke

npm License

Model Context Protocol サーバーです。Ikenga デスクトップアプリの iyke 制御ブリッジ を公開するため、あらゆる MCP クライアント(Claude Code、Cursor、カスタムエージェント)から、開発者がシェルで iyke CLI に入力するのと同じように、実行中の Ikenga セッションを操作できます。

これは何か

Ikenga は、マニフェスト駆動型のパッケージカーネルを備えた Tauri ベースの AI ワークスペースシェルです。アプリの実行中は、ローカルホストの HTTP サーバー(control.json にベアラートークンを格納)を公開し、外部ツールからライブ UI の状態を確認して操作できます。ペインの切り替え、ルートの移動、DOM スナップショットの取得、要素のクリック、ログの読み取り、スクリーンショットの撮影が可能です。

このパッケージは、その HTTP サーバーを MCP でラップし、LLM エージェントからネイティブに利用できるようにします。ツールは iyke CLI のサブコマンドに対応しています。

インストール

Claude Code 経由(推奨)
npm install -g @ikenga/mcp-iyke
claude mcp add iyke -s user -- iyke-mcp

その後は、どの Claude Code セッションからでも、iyke_state、iyke_go、iyke_mode、iyke_open、iyke_split、iyke_focus、iyke_close のほか、実行時の検査ツール(iyke_dom、iyke_logs、iyke_network、iyke_screenshot、iyke_wait、iyke_click、iyke_type、iyke_key、iyke_query_cache、iyke_devtools)、iframe ツール(iyke_iframe_state、iyke_iframe_send)、プロジェクトツール(iyke_project_create、iyke_project_update、iyke_project_list、iyke_project_archive、iyke_project_set_active、iyke_project_get_active)を呼び出せます。

npx 経由(インストール不要)
claude mcp add iyke -s user -- npx -y @ikenga/mcp-iyke
ソースから(コントリビューター向け)
git clone https://github.com/Royalti-io/ikenga-pkg-mcp-iyke.git
cd ikenga-pkg-mcp-iyke
npm install
npm run build

次に、MCP クライアントの接続先として node /path/to/ikenga-pkg-mcp-iyke/dist/index.js を指定してください。

ツール

レイアウトとナビゲーション
ツール用途
iyke_state現在のサイドバーモード、フォーカス中のペインのルート、ペインツリー全体を表示します。
iyke_goフォーカス中のペインを指定したルートパスに移動します。
iyke_modeサイドバーのアクティビティモードを切り替えます。
iyke_openフォーカス中のペインに新しいタブ(ルート、ターミナル、チャット、アーティファクト、ミニアプリ)を開きます。
iyke_splitペインを水平方向または垂直方向に分割します。
iyke_focusID または 1 始まりの DFS リーフインデックス(⌃1..⌃6)でペインにフォーカスします。
iyke_closeペインを閉じます(pane_id を省略した場合はフォーカス中のペイン)。
ランタイムの検査と操作
ツール目的
iyke_domフォーカス中のペインのアクセシビリティツリーのスナップショット(Playwright 形式の参照)。
iyke_logs実行中の Web ビューから直近 500 件のコンソールログとエラーログを取得します。
iyke_network直近 100 件の fetch/XHR ネットワークエントリーを、ステータスと所要時間とともに取得します。
iyke_screenshotウィンドウまたは特定のペインの PNG スクリーンショットを取得します。
iyke_wait条件(テキスト/セレクター/参照/消失)が満たされるまで待機します。
iyke_click参照、セレクター、またはテキストで要素をクリックします。
iyke_type入力欄/テキストエリア/contenteditable に入力します。
iyke_keyキーの組み合わせ(例:Ctrl+S、Meta+K)を送信します。
iyke_query_cacheフォーカス中のペインの TanStack Query キャッシュをダンプします。
iyke_devtoolsChrome DevTools を開きます(デバッグビルドのみ)。
Iframe のランタイム状態
ツール目的
iyke_iframe_stateiframe ペインで最後に公開された状態オブジェクトを読み取ります。
iyke_iframe_sendiframe ペインに postMessage を送信します(応答は待ちません)。
プロジェクト
ツール目的
iyke_project_createプロジェクトを作成します(slug と表示名。root_path、icon、color、description は任意)。
iyke_project_update既存のプロジェクトのフィールド(display_name、root_path、icon、color、description、position)を更新します。
iyke_project_list切り替えメニューの順にプロジェクトを一覧表示します。include_archived=true を指定すると、アーカイブ済みのプロジェクトも表示されます。
iyke_project_archiveプロジェクトを論理削除します。組み込みの Default プロジェクトはアーカイブできません。
iyke_project_set_activeシェルのアクティブなプロジェクトを切り替え、プロジェクトのスコープに応じたクエリを再取得します。
iyke_project_get_active現在アクティブなプロジェクトを返します。

信頼境界

MCP サーバーは、プラットフォーム固有のアプリローカルデータディレクトリから control.json を読み取ります(macOS では ~/Library/Application Support/app.ikenga/control.json、Linux では $XDG_DATA_HOME/app.ikenga/control.json、Windows では %APPDATA%/app.ikenga/control.json)。control ファイルには以下が含まれます。

  • port — アプリ内 HTTP サーバーがリッスンしている localhost のポート
  • token — すべてのリクエストで必要となるベアラートークン
  • pid — 所有プロセスの PID(古いファイルの検出に使用)

kill -9 によって古い control.json が残された場合、5 分以上経過していれば自動的に削除されます。5 分未満の古いファイルは通知されます(起動処理の競合の可能性があります)。起動中のアプリのファイルを上書きしないためです。

Ikenga デスクトップアプリが実行されていない場合、すべてのツール呼び出しはハングせず、構造化されたエラーを返します。エージェントはそのエラーを読み取り、黙って待機するのではなく、結果を報告します。

MCP サーバーが通信するのは、control.json に記載されたポートの 127.0.0.1 のみで、同じファイルに記載されたベアラートークンを使用します。外部へのネットワーク通信やテレメトリはありません。

互換性

  • Ikenga シェル: v1 の control.json スキーマを公開するすべてのバージョン。
  • Node.js: ≥ 20。
  • Bun: コンパイルなしで実行できます(bun src/index.ts)。
  • MCP SDK: @modelcontextprotocol/sdk ^1.23.0。

バージョン管理

このパッケージはSemVer 2.0.0に準拠しています。メジャーバージョンの更新では、MCP ツール名や引数の形式が変更される場合があります。マイナーバージョンの更新では、新しいツールの追加や互換性を損なわない改善を行い、パッチバージョンの更新ではバグを修正します。

iyke HTTP プロトコルのバージョン(アプリ内サーバーの API サーフェス)は独立しており、control.json の schema_version: 1 で指定されています。このパッケージが現在サポートしているのはプロトコル v1 のみです。

貢献

貢献を歓迎します。セットアップ、規約、DCO についてはCONTRIBUTING.mdをご覧ください。貢献することで、貢献内容が Apache 2.0(リポジトリと同じライセンス)に基づいてライセンスされることに同意したものとみなされます。

バグや機能のリクエストについては、issueを作成してください。 セキュリティに関する問題については、SECURITY.mdをご覧ください。公開 issue は作成しないでください。

ライセンス

Apache License 2.0 — Copyright (c) 2026 Royalti, Inc.

関連リンク

  • Ikenga shell — このパッケージが操作するデスクトップアプリです。
  • @ikenga/contract — 共有マニフェストと iyke ランタイム定数です。
  • Model Context Protocol — このサーバーが使用するプロトコルです。

コメント

MCP は初めてですか?

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

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