Render Unto Caesar について
Render Unto Caesar(RUC)は、業務やエンジニアリングのワークフローで、手続き型コードの実行とLLMの判断を組み合わせるMCPサーバーです。コードが反復や検証を担い、LLMが解釈、分類、文章作成を行います。
主な機能
- 01AIタスク中のコード片の作成と実行
- 02ループや検証をコードで処理
- 03曖昧な情報へのLLMによる判断
- 04コードとLLMの処理を同一ワークフローで連携
- 05ファイル処理と進捗管理
活用シーン
- 01大量のサポートチケットの振り分け
- 02決算説明会の情報を表計算シートに抽出
- 03自由記述の顧客フィードバックを分類
- 04地域別の広告文を作成
MCP 対応
RUCはDocker内でMCPサーバーとして動作し、コード実行中にホストのAIを呼び出すためMCP samplingを利用します。ホストはsamplingに対応する必要があり、READMEではGitHub Copilotを搭載したVS Codeが対応例として挙げられています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm ghcr.io/mightydatainc/ruc-mcp:0.1.5ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ghcr.io/mightydatainc/ruc-mcp:0.1.5stdioツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Render Unto Caesar (RUC) (ruc-mcp)
Render Unto Caesar (RUC) は AI エージェントに接続し、必要に応じてコードのスニペットを書いて実行する機能を提供します。実行中に AI エージェントへ直接呼び戻すコードのスニペットです。これにより、LLM と従来のソフトウェアが効果的に融合し、タスクの各部分を最適なアーキテクチャで処理できます。その結果、推論、判断、創造性を活かしながら、長時間にわたる処理、大規模なデータセット、複雑なプロセスを、手順どおり確実に実行できます。

決定論的な実行と LLM による判断を、ひとつの統合されたワークフローで実現
機械らしさをなくすことを目的とする機械を作ったのに、それでも機械らしい作業をさせようとするなら、うまくいかないでしょう。
基盤モデルの開発者は、LLM がユーザーの指示により忠実に従うよう、学習を続けています。ニューラルネットワークに、指示された順番どおりに手順を実行させ、気を散らしたり、早まって完了を宣言したり、頼まれてもいない操作をまったく新たにでっち上げたりしないようにするため、膨大なエネルギーと CPU/GPU 時間を費やしています。ニューラルネットワークは、本質的に気まぐれな確率的存在です。
これは、最適化する対象としてはおかしなことです。
指示に正確に、繰り返し、疲れ知らずに従う機械は、すでにあります。それは コンピューター です。
ニューラルネットワークは、コンピューターとしては不向きです。確かにニューラルネットワークはコンピューター上で 動作します。しかし、その事実だけでコンピューター として 働く能力が魔法のように備わるわけではありません。細胞でできているからといって、自動的に微生物学者になれるわけではないのと同じです。
ニューラルネットワークがコンピューターとして不向きなのは、強化学習がもっと必要だからではありません。コンピューターではない からです。ニューラルネットワークはパターン補完エンジンです。強力で、柔軟で、曖昧さを扱い、連想的で、驚くほど役に立ちますが、長い手順を実行する用途には根本的に向いていません。
これは 人工 ニューラルネットワークだけに限った話ではありません。人間の脳も同じく苦手です。だからこそ、筆算で割り算をするには鉛筆が必要なのです。チェックリスト、カレンダー、レシピカード、ラミネート加工されたフローチャート、付箋を使うのもそのためです。これは「認知の外部化」と呼ばれます。私たちの種にほぼ固有の超能力です。自分が何を得意としていないかを知るだけの賢さがあり、道具を使ってその弱点を補えるのです。認知の外部化が存在するのは、神経による認知が信頼できる手順ではないからです。
RUC はこの違いを中心に設計されています。解釈、判断、創造性はニューラルネットワークに任せ、実行はコンピューターに任せましょう。
LLM はタスクを依頼するためのインターフェースとしては優れていますが、タスクを実行するエンジンとしては不得意です。文章を書いたり、雑然とした情報や曖昧な情報を評価したりするのは得意ですが、長く正確な手順を実行するのは苦手です。LLM の曖昧さと従来のコードの几帳面さの両方が必要な処理では、Render Unto Caesar (RUC) がその隔たりを埋めます。RUC は作業を、解釈が必要な部分と機械的な処理が必要な部分に分け、両者を連携させて、双方の長所を活かします。
現代の LLM アプリでは、複雑な作業を平易な英語で自然に依頼できます。問題は、平易な英語での依頼には、LLM が得意なことと、よく知られているように苦手なことが混在しがちな点です。ユーザーは ChatGPT、Claude、Cursor に、サポートチケットの確認、スプレッドシートの欠損データの補完、一連の広告のアイデア出しなどを頼むかもしれません。こうしたタスクには判断と創造性が必要ですが、ループ、件数のカウント、状態管理、検証、一貫性、監査可能性も必要です。これらは従来のコードが得意とするものです。 ユーザーの大半は、エンジニアであっても、タスクを依頼するときにこの2つの層を自然に区別するわけではありません。確実に実行するために必要なアーキテクチャではなく、望む成果を説明します。RUC はその切り分けを代わりに行います。反復処理、算術演算、検証、状態管理、監査可能性など、決定論的な実行が必要な部分と、分類、要約、曖昧さの解消、自由形式の文章作成などが必要な部分を特定します。そして、それらの部分の間のインターフェースを定義し、コードに適した作業から LLM に適した作業へデータを渡す方法と、LLM に適した作業の結果を手続き型の実行へ戻す方法を指定します。これにより、両種の作業を連携させることができます。コードは構造、継続性、厳密さをもたらし、LLM は厳格なルールでは対応できない部分でニュアンスを扱います。
その結果、手続き型ソフトウェアの制御性、構造、再現性を備えたシステムで、LLM に適した作業を実行できます。
核となる考え方
Render Unto Caesar は、シンプルな役割分担を軸に構築されています。
- コードが担うもの: ループ、算術演算、検証、再試行、ファイル、進捗管理、集計、状態管理。
- LLM が担うもの: 言語理解、創作、分類、要約、曖昧さの解消、あいまい検索、その他の意味的な判断。
重要なのは、両方を利用できることだけではありません。RUC が両者の境界を定義することで、手続き型のコードと LLM による判断が、1つのワークフロー内で安全に連携できることです。
対象となるユーザー
RUC は、コンピューターに実行させたい一連の操作を説明し、コンピューターが何かのピンボールゲームのようにではなく、コンピューターとしてその操作を実行することを期待する、ビジネスやエンジニアリングの専門家向けに構築されています。
具体的には、通常、次のような方々が対象です。
- 大規模な CSV やスプレッドシートのエクスポートデータを扱うプロダクトリーダーや PM。
- 繰り返し発生するデータのクリーンアップ、分類、正規化のタスクを実行するアナリストやオペレーションチーム。
- データ品質の成果に責任を持つドメインオーナーやデータスチュワード。
- VS Code でエンジニアリング以外のチームメンバーを支援するエンジニアや AI のパワーユーザー。
RUC が役立つ状況の例
- PM がロードマップレビューの前に、1,700 件のサポートフィードバックチケットを優先度別に整理する必要がある。
- 財務アナリストが、数百件の決算説明会の書き起こしを持っている。アナリストは、どの企業の説明会か、開催日はいつか、参加者は誰か、どの主要指標が議論されたか、それらの指標の値はいくつだったかを記載したスプレッドシートを作成する必要がある。
- 地域営業マネージャーが、7,000 件の自由記述形式の顧客アンケート回答を、各顧客が最も目立つ形で説明した製品の機能に基づいて分類する必要がある。
- 全国規模の広告担当役員が、米国の全 3,144 郡を対象に、郡ごとに掲載する広告用のカスタムコピーを作成したい。
インストールガイド
以下の手順では、コマンドラインツールにある程度慣れていることを前提としています。幸い、たとえご自身にその経験がなくても、AI エージェントにはあります。このページを読んでいて、手順の一部を実行する方法がわからない場合は、エージェントに「https://github.com/mightydatainc/ruc-mcp のインストールガイドに従うのを手伝ってください」と伝えてください。エージェントなら対応できます。
前提条件
RUC を実行するには、Docker をインストールする必要があります。
RUC は、Docker コンテナー内で動作する MCP サーバーです。これらの概念に馴染みがない場合は、次の紹介が参考になります。
- Model Context Protocol (MCP):「ホスト」(VS Code や Claude Desktop の実行ファイルなど)がサードパーティーのツールシステム(RUC など)を読み込み、利用可能な機能を LLM(クラウドベースまたはローカルで実行)に伝え、LLM の要求に応じてそれらのツールを呼び出せるようにする通信規格です。
- Docker:実際のコンピューター内でミニコンピューターをシミュレーションとして実行できる、軽量な仮想化システムです(おおよその説明です)。セキュリティ、依存関係の管理、移植性などに適しています。
お使いのオペレーティングシステムに対応するガイドに従って Docker をインストールしてください。
AI エージェントとの統合
⚠️ お使いのエージェント型 AI 環境は、MCP サンプリングに対応している必要があります! ⚠️
「Render Unto Caesar」は、「サンプリング」という MCP の機能に全面的に依存しています。サンプリングがなければ、動作しません。
現在、サンプリングに対応している人気のエージェント型 AI ホストは、**VS Code(GitHub Copilot 搭載)**のみです。
VS Code
VS Code 拡張機能をインストールしてください。
- VS Code で「拡張機能」を開きます。
- 「Render Unto Caesar」を検索します。
mightydataincが公開している拡張機能をインストールします。Docker イメージのダウンロードに数分かかる場合があります。(特に大きなイメージではありませんが、セキュリティチェックやレジストリの更新などが原因と思われますが、時間がかかる場合があります。)
これで完了です!
正しくインストールされたことを確認するには、コマンドパレット(Control-Shift-P)を開き、MCP: List Servers と入力して Enter キーを押し、「Render Unto Caesar」が表示されることを確認します。
MCP クライアントの AI に解決方法を考えさせる
これはいつでも利用できる代替手段です。お使いの MCP クライアントまたはホストが何であっても(サンプリングに対応している場合)、この MCP サーバーを起動して接続する方法を自分で考えるよう伝えることができます。クライアントに次の情報を伝えると役立つ場合があります。
- RUC は STDIO 経由でクライアントと通信します。
- コマンドラインでの呼び出し形式は次のとおりです。
docker run --rm -i \
-e RUC_MCP_LOG_LEVEL=DEBUG \
-e RUC_MCP_HOST_WORKSPACE=${workspaceFolder} \
-v ${workspaceFolder}:/workspace \
ghcr.io/mightydatainc/ruc-mcp:latest
開発
前提条件
任意:GitHub Container Repository(GHCR)から Docker イメージを取得する
ほとんどのインストール方法では自動的に処理されるため、自分で実行する必要はおそらくありません。ただし、参考として記載しておきます。
docker pull ghcr.io/mightydatainc/ruc-mcp:latest
Docker イメージをローカルでビルドする
docker build -t mightydatainc/ruc-mcp:local . --no-cache
(--no-cache フラグは省略可能です。指定すると、Docker はイメージを最初から再構築します。省略した場合は、既存のイメージがあれば、その上にビルドします。)
テストを実行する
python -m unittest discover -s tests -p "test*.py"
リリースチェックリスト
タグ付けの前に:
mainの CI が成功していることを確認します。- GitHub Actions にパッケージを書き込む権限があることを確認します。
- GHCR でのパッケージの公開範囲(パブリックまたはプライベート)の方針を確認します。
- タグとともに公開するリリースノートや変更履歴のテキストを更新します。
リリース手順:
- 最新の
mainを取得します。 - バージョンタグ(
vX.Y.Z)を作成してプッシュします。 Publish Docker image to GHCRが完了するまで待ちます。- GHCR にイメージタグ(
vX.Y.Z、X.Y.Z、latest)が存在することを確認します。
リリース後の確認:
- 新しいイメージをローカルに取得します。
- サンプルの MCP 呼び出しでコンテナーを実行します。
- クライアント設定が意図したタグを参照していることを確認します。
CI とリリースの自動化
- CI は
mainへのプッシュ時とプルリクエスト時に実行されます。 - GHCR への Docker イメージの公開は、
v*に一致するバージョンタグで自動化されています。
リリースイメージを公開するには、次のようなタグをプッシュします。
git tag v0.1.0
git push origin v0.1.0
次のタグが GHCR に公開されます。
ghcr.io/mightydatainc/ruc-mcp:v0.1.0ghcr.io/mightydatainc/ruc-mcp:0.1.0ghcr.io/mightydatainc/ruc-mcp:latest
ステータス
2026-05-24 — v0.1.2 Excel ファイル、HTML、PDF などを処理するライブラリを追加しました。 2026-05-23 — 初回リリース:v0.1.0 を GitHub Container Repository(GHCR)に公開しました。
今後の拡張
- 中断された実行を保存済みの進捗から再開できるように、再開可能な実行動作を追加します。
- 繰り返し生成する際のオーバーヘッドを減らすため、頻繁に要求されるワークフローのキャッシュを追加します。
- ネットワークアクセスを追加します。
- ページの読み込み量を制限する方法が必要です。
- LLM にページをテキストとして意味のある形で提示する方法が必要です。
- 実際のブラウザーを実行する方法が必要です。
- JavaScript を活用します。
- 意味的に重要なレイアウトの詳細を活用します(例:
display: noneやopacity: 0の要素は対象外とします)。 - ユーザーの Cookie や既存のログイン状態などを活用する可能性があります。
- MCP サンプリングのツール呼び出しのサポートを追加します。
- VS Code はそもそもサンプリングのツール呼び出しをサポートしていません。
- サンプリングのツールサポートは条件付きにする必要があります。
- 構造化 JSON は現在も条件付きです。
- Docker の代わりに WebAssembly を使用する可能性があります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。