Skip to main content
Glama

WebSocket経由でMCP互換AIエージェントのための型安全なライブアプリ操作を実現。

Built by BrainBlend AI


新着情報: Discordコミュニティ discord.gg/J3W9b5AZJR に参加してください — プロトコルに関する質問、フィードバック、SDKへの貢献に関するチャットを歓迎します。

ライブアプリケーション(ブラウザタブ、Electron/Tauriデスクトップアプリ、Nodeデーモン、CLI)は、Zodスタイルのビルダーを使用してアクションを宣言します。エージェント(Claude Code、Claude Desktop、Cursor、Copilot、Codex、Clineなど)は、それらをMCPツールとして呼び出します。実際のハンドラーが実際の状態に対して実行されます。ブラウザ自動化も、スクレイピングも、Playwrightも不要です。

Tesseronを選ぶ理由

  • スクレイピングされたDOMではなく、型付きアクション。 Zodまたは任意の Standard Schema バリデーターで宣言します。ハンドラーは実際の状態に対する単純な関数です。

  • フレームワーク非依存。 Vanilla TS、React、Svelte、Vue、Nodeで同じAPIを使用できます。お好みのスタックを選択してください。

  • MCPネイティブ。 すべてのアクション、リソース、機能は標準のMCPプリミティブにマッピングされます。ユーザーは自分のエージェントを選択できます。

  • クリックして接続。 6文字のクレームコードによるハンドシェイク。APIキーも、OAuthの煩わしさも、クライアントごとの設定も不要です。

  • ファーストクラスの機能。 yes/noのための ctx.confirm、スキーマ検証されたプロンプトのための ctx.elicit、エージェントLLM呼び出しのための ctx.sample、ストリーミング更新のための ctx.progress、ライブ読み取りのためのサブスクライブ可能なリソースを提供します。

  • バンドルされた配信。 MCPゲートウェイは Claude Codeプラグイン に同梱されています。インストールコマンド1つで完了です。

Related MCP server: @agent-mcp/react

クイックインストール (Claude Code)

/plugin marketplace add BrainBlend-AI/tesseron
/plugin install tesseron@tesseron

これにより tesseron Claude Codeプラグインがインストールされ、MCPゲートウェイが自動的に起動し、MCPサーバーとして登録されます。次に、@tesseron/web、@tesseron/server、または @tesseron/react をアプリに導入し、アクションを宣言して、Claudeに実際のUIを操作させます。

import { tesseron } from '@tesseron/web';
import { z } from 'zod';

tesseron.app({ id: 'todo_app', name: 'Todo App' });

tesseron
  .action('addTodo')
  .input(z.object({ text: z.string().min(1) }))
  .handler(({ text }) => {
    state.todos.push({ id: newId(), text, done: false });
    render();
    return { ok: true };
  });

await tesseron.connect();

その他のMCPクライアント(Claude Desktop、Cursor、Codex、VS Code Copilotなど)については、examples/README.md の初回設定を参照してください。

Vanilla TS、React、Svelte、Vue、Express、およびプレーンなNodeでの動作例については、examples/ を参照してください。

パッケージ

パッケージ

目的

@tesseron/core

プロトコル型、アクションビルダー。Standard Schema以外のランタイム依存関係なし。

@tesseron/web

ブラウザSDK。

@tesseron/server

Node SDK。

@tesseron/mcp

MCPゲートウェイサーバー(CLI; プラグインにバンドル)。

@tesseron/react

Reactフックアダプター。

@tesseron/devtools

MCPゲートウェイによって提供されるブラウザ内デバッグUI (プライベートスタブ、未公開)。

create-tesseron

npm create tesseron@latest スキャフォルダー (プライベートスタブ、未公開)。

Claude Codeプラグインは plugin/ にあり、マーケットプレイスマニフェスト .claude-plugin/marketplace.json を通じて公開されています。

クライアント機能のサポート

Tesseronのアクションコンテキストは、単純なツール呼び出しを超えた4つの機能をハンドラーに提供し、それぞれがMCPプリミティブによってサポートされています。特定の呼び出しが実際に機能するかどうかは、ユーザーのMCPクライアントが何をアドバタイズするかによって異なります。

SDKサーフェス

MCPプリミティブ

tool(...) (アクション呼び出し)

tools

resource(...) (ライブ読み取り、サブスクリプション)

resources (+ resources.subscribe)

ctx.sample(...)

sampling

ctx.confirm(...) / ctx.elicit(...)

elicitation

ctx.progress(...)

notifications/progress (クライアントは tools/call で _meta.progressToken を渡す必要があります)

どのクライアントがどのプリミティブをサポートしているかについての権威ある最新リストについては、公式MCPクライアント互換性マトリックス を参照してください。Sampling または Elicitation でフィルタリングして、対応状況を確認してください。機能を選択する前に知っておくべきいくつかのポイント:

  • ツール はユニバーサルであり、すべてのMCPクライアントがアクションを呼び出せます。

  • サンプリング は最も希少です。Claude Code、Claude Desktop、Claude.aiはこれを公開していません。現在のサポートは、VS Code + GitHub Copilot、goose、fast-agent に集中しています。

  • Elicitation (MCP 2025-06) は、Claude Code (2.1.76, 2026年3月)、Cursor、Codex、VS Code Copilot、goose、fast-agentで利用可能ですが、Claude Desktop、Claude.ai、ChatGPT、Windsurf、Zedでは利用できません。

  • 機能が欠落している場合、Tesseronは型付きエラー (SamplingNotAvailableError, ElicitationNotAvailableError) を発生させるか、安全なデフォルトにフォールバックします(ctx.confirm は false を返します)。そのため、ハンドラーは黙って誤動作するのではなく、明示的に分岐できます。

ステータス

v1.0 は2026年4月に出荷されました。プロトコルは 1.0.0 で安定しており、意図的に小さく保たれています:WebSocket経由の双方向JSON-RPC 2.0、動的なMCPツール登録、クリックして接続するハンドシェイク、ストリーミング進捗、キャンセル、サンプリング、確認、スキーマ検証されたElicitation、サブスクライブ可能なリソース。

npmに公開済み(すべて v1.0.1):@tesseron/core、@tesseron/web、@tesseron/server、@tesseron/react、@tesseron/mcp。JS/TS SDKはリファレンス実装です。プロトコル仕様は CC BY 4.0 であるため、誰でも任意の言語で互換性のあるクライアントやサーバーを作成できます。

ロードマップ:Svelte/Vueアダプター、devtools UI、ストリーミング可能なHTTPトランスポート、Python SDK、デスクトップネイティブランタイム(Tauri用のRustなど)のバインディング。

開発

pnpm install
pnpm typecheck
pnpm test                                    # 65 tests across core + mcp
pnpm --filter @tesseron/mcp build:plugin     # rebuild plugin/server/index.cjs after gateway changes

貢献

バグレポート、プロトコルの改良、新しいフレームワークアダプター、リファレンス実装の改善を歓迎します。

  • ワークフローについては CONTRIBUTING.md をお読みください。

  • すべてのコミットは、Developer Certificate of Origin に基づいて Signed-off-by: である必要があります。git commit -s を使用してください。

  • 小さな修正以上のものについては、まずIssueを開いてください。

スターの履歴

ライセンス

リファレンス実装 — Business Source License 1.1 (ソース公開)。Tesseronを独自のアプリケーションに埋め込んだり、内部で使用したり、フォークしたり、自由に再配布したりできます。Tesseronまたはその大部分を、ホスト型または管理型サービスとして第三者に提供することはできません。各リリースは、公開から4年後に自動的にApache-2.0に変換されます。

プロトコル仕様 — CC BY 4.0。商用を含むあらゆる目的のために、任意の言語での互換性のある実装を明示的に推奨します。

貢献は Developer Certificate of Origin に基づいて歓迎されます。すべてのコミットは Signed-off-by である必要があります。


Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to discover and call business actions from browser-only legacy web applications as typed MCP tools, executing them through the original GUI via Playwright.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables agents to drive a running React application through typed MCP tools, using the same actions as the UI instead of browser automation.
    28 npm
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables remote AI agents to control a local, authenticated desktop browser over MCP through an outbound WebSocket bridge and Chrome extension, supporting tab management, navigation, page reading, clicking, typing, scrolling, screenshots, and JavaScript evaluation.
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to control live Zen Browser and Firefox tabs via MCP, performing actions like navigation, clicking, typing, scrolling, and running JavaScript through a local WebSocket bridge.
    MIT