runitonai-mcp について
Run It on AI の読者が AI クライアントから章や演習にアクセスするための、オープンソースの読書コンパニオンサーバーです。ソースコードを公開しており、Implementation Blocks はライセンスキーなしで利用できますが、章の本文にはキーが必要です。
主な機能
- 01書籍の利用ガイドを提供
- 02ライセンス認証付きの章本文
- 03認証不要の Implementation Blocks
- 04サーバーのソースコード公開
- 05ライセンスキーのレート制限
活用シーン
- 01AI クライアント経由で章を取得
- 02ライセンスキーなしで書籍の演習にアクセス
- 03読書コンパニオンサーバーのコードを確認
MCP 対応
https://mcp.runitonai.com/mcp で書籍コンテンツ用の MCP ツールを提供します。Claude、Claude Code、Codex から接続でき、ChatGPT では OpenAPI 定義を Action として利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.runitonai.com/mcpclaude mcp add --transport http structlabs-io-runitonai https://mcp.runitonai.com/mcp{"mcpServers":{"structlabs-io-runitonai":{"type":"http","url":"https://mcp.runitonai.com/mcp"}}}Cursor で開く{"servers":{"structlabs-io-runitonai":{"type":"http","url":"https://mcp.runitonai.com/mcp"}}}VS Code で開く{"mcpServers":{"structlabs-io-runitonai":{"type":"http","url":"https://mcp.runitonai.com/mcp"}}}{"mcpServers":{"structlabs-io-runitonai":{"serverUrl":"https://mcp.runitonai.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
11このツールにパラメーターはありません。
詳細
Run It on AI — コンパニオンサーバーの全貌
このリポジトリは、mcp.runitonai.com にある Run It on AI の読書コンパニオンを動かすサーバーの完全なソースコードです。本を購入して AI を接続した方は、こちら側で動作しているすべてを確認できます。
何も隠していないことを、言葉だけで信じてもらう必要がないように、このリポジトリを公開しています。サーバーは数百行の TypeScript でできています。ご自身で(または AI にファイルを貼り付けて尋ねて)何をするのか、そして同じくらい重要な、何ができないのかを正確に確認できます。
簡単に言うと
コンパニオンの利用時に、当社のサーバーに届くもの:
- AI が呼び出したツールの名前(例:「第 3 章を取得」)。
- 要求された章または演習。
- アクセスコード。Gumroad の領収書に記載されているライセンスキーです。
受信、保存、転送するコードが存在しないため、当社に届くことのないもの:
- AI との会話。
- ファイル、ドキュメント、またはお使いのマシン上にあるもの。
- お名前。
- メールアドレス。このリポジトリでメールフィールドを検索しても、見つかりません。 どのツールにも、エンドポイントにも、コードパスにも、メールアドレスを受け取る機能はありません。
- 作業中に AI が作り上げる、あなたについてのイメージ。それは AI の内部、お客様側にとどまります。
誰が誰と通信するか: コンパニオンを Claude コネクターとして追加した場合、お使いのマシンが当社のサーバーに直接接続することはありません。Anthropic のクラウドが接続を仲介します。ChatGPT では OpenAI のクラウドが仲介します。当社に見えるのはツール呼び出しであり、あなたではありません。
アクセスの仕組み
認証情報は、Gumroad の領収書に記載されたライセンスキー(XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX のようなコード)です。これは購入を識別するものであり、個人を識別するものではありません。サーバーは Gumroad に照合し、キーのハッシュを 1 日間キャッシュして、レート制限を適用します。返金済みまたは無効化されたキーは使えなくなります。src/license.ts をご覧ください。仕組み全体が 1 つのファイルに収まっています。
キーが必要なのは章の本文だけです。コンパニオンの操作手順(activate)と、すべての Implementation Block(本書の実践演習)は、認証情報なしで提供されます。演習は implementation-blocks/ にも公開されています。
接続する
Claude(ウェブまたはデスクトップ)— 簡単な方法です。 Settings -> Connectors -> Add custom connector の順に進み、次を貼り付けます。
https://mcp.runitonai.com/mcp
次のメッセージでチャットを開始します:Activate Run It on AI — my access code is <your license key>。
ChatGPT。 「Run It on AI Companion」GPT(リンクは本書に記載)を使うか、独自に作成します。Custom GPT を作成し、https://mcp.runitonai.com/openapi.yaml を Action としてインポートします。
Claude Code(ターミナルユーザー向け)。
claude mcp add --transport http runitonai-book https://mcp.runitonai.com/mcp
Codex。 ~/.codex/config.toml に次を記述します。
[mcp_servers.runitonai_book]
url = "https://mcp.runitonai.com/mcp"
このリポジトリの内容
| パス | 内容 |
|---|---|
src/worker.ts | Cloudflare Worker:ルーティング、トランスポート、Gumroad 同期エンドポイント |
src/license.ts | ライセンスキーの検証とキャッシュ(アクセスゲート) |
src/auth.ts | 旧式の bearer token の検証(新しいトークンを発行する機能はありません) |
src/rate_limit.ts | キーごとのレート制限 |
src/mcp/ | MCP プロトコルの処理(ツールカタログ、ディスパッチ、トランスポート) |
src/tools/ | AI が呼び出せるツール |
openapi-v1.yaml | ChatGPT Actions 向けに記述した同じインターフェース |
implementation-blocks/ | 本書のすべての Implementation Block を、読みやすい Markdown 形式で収録 |
2 つのデータファイルはプレースホルダーとして配置されています:src/data/chapters.json(本書の章の本文)と src/data/skill.json(コンパニオンの操作手順)です。どちらもデプロイ時に本書の原稿から生成されます。本書の文章は製品そのものであるため、公開リポジトリには含まれていません。ただし、それを提供するコードはすべてここにあり、Implementation Block(実践演習)も implementation-blocks/ に完全な形で公開されています。
コントリビューターへの注意:このリポジトリの内容はすべて、非公開の原稿リポジトリから同期スクリプトで生成されます。また、原稿リポジトリには、関連する変更のたびに再同期する pre-commit フックがあります。Implementation Block は本書の原稿に含まれており、ここにあるコピーはビルド成果物です。ここでは絶対に編集しないでください。上書きされます。
自分で実行する
npm install
npm run typecheck
npm run dev # local server on localhost:8787
wrangler.toml には KV 名前空間 ID のプレースホルダーが含まれています。シェルをセルフホストする場合は、お使いの Cloudflare アカウントのものに置き換えてください。
ライセンス
MIT — LICENSE を参照してください。書籍本体(各章、付属の説明書)は引き続き StructLabs.io Pte Ltd の著作物であり、このリポジトリには含まれません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。