mcpField
R
rtfmbro-mcp

rtfmbro-mcp

リモート
github.com/marckrenn開発ツール9271 週間前に更新
リポジトリ

rtfmbro-mcp について

rtfmbro-mcp は、コーディングエージェントにプロジェクトが使用している正確なパッケージバージョンのドキュメントを提供する MCP サーバーです。対応する git タグの GitHub リポジトリから直接ドキュメントを取得し、正確で最新の API 情報を必要とする開発者を想定しています。context7 の代替となる位置づけです。

主な機能

  1. 01lockfile に記載された正確なバージョンのドキュメント取得
  2. 02PyPI と npm に対応、Swift はアルファ版
  3. 03SHA ベースのキャッシュ最新性チェック
  4. 04README、ドキュメントツリー、ファイル読み取りのツール
  5. 05リモート HTTP サーバーとして利用可能

活用シーン

  1. 01コーディングエージェントによる旧バージョンのライブラリ文書の参照
  2. 02古い学習データへの依存を減らしたコード作成
  3. 03node_modules などのソース閲覧によるトークン消費の抑制

MCP 対応

本プロジェクトは MCP サーバーであり、get_readme、get_documentation_tree、read_files、search_github_repositories の 4 つのツールを MCP クライアントに公開します。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://rtfmbro.smolosoft.dev/mcp/
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

rtfmbro-mcp

rtfmbro は、コーディングエージェントにコンテキストとして、常に最新のバージョン固有のパッケージドキュメントを提供します。context7 の代替です。

https://github.com/user-attachments/assets/dbe0b3b4-a42c-4e91-8bcd-a94d430ef0b8

rtfmbro の使用例です。Flask の特定のバージョン(3.1.1)のREADMEとドキュメントを取得しています。

概要

rtfmbro は、複数のエコシステムにわたるパッケージのドキュメントをリアルタイムで、バージョンを考慮して取得する Model Context Protocol(MCP)サーバーです。プロジェクトで使用している正確なバージョンのドキュメントを GitHub リポジトリから直接取得し、AI エージェントと正確で最新のパッケージドキュメントの間をつなぎます。

対応エコシステム

エコシステムレジストリステータス
PythonPyPI✅ 完全対応
Node.jsnpm✅ 完全対応
SwiftSPM🚧 アルファ版
GitHub直接⚠️ フォールバック

rtfmbro を選ぶ理由

問題点
  • 古いドキュメント:AI モデルは、パッケージについての古い学習データに頼ることがよくあります
  • コンテキストの不足:node_modules などにあるソースコードには高レベルのドキュメントがなく、その閲覧は通常、トークンを消費し、非効率です
  • バージョンの不一致:汎用的なドキュメントは、特にレガシープロジェクトや新しいパッケージでは、使用中の特定のパッケージバージョンと一致しません
解決策

rtfmbro は、次の方法でこれらの問題を解決します。

  1. バージョンを正確に指定して取得:ロックファイルに一致する正確な Git タグ/コミットからドキュメントを取得します
  2. 包括的なカバレッジ:リポジトリからすべてのドキュメントファイル(.md、.mdx、.txt、.rst、.html)を抽出します
  3. インテリジェントなキャッシュ:SHA ベースの鮮度チェックにより、不要な再取得を行わずにドキュメントを最新の状態に保ちます
  4. エージェントとの連携:Model Context Protocol を通じて、AI コーディングアシスタントとシームレスに連携します
  5. 優れた DX:開発者によるセットアップは不要です。MCP 設定にサーバーと指示を追加すれば、ドキュメントを取得できます
MCP ツール

このサーバーは、AI エージェントに次の 4 つの主要なツールを提供します。

ツール用途パラメーター戻り値
get_readme特定のパッケージバージョンの README ファイルを取得して返しますpackage、version、ecosystem文字列形式の README コンテンツ
get_documentation_treeすべてのドキュメントファイルを含む包括的なフォルダー構造を生成しますpackage、version、ecosystem文字列形式のツリー構造
read_files行範囲を指定して切り出すこともできる、特定のドキュメントファイルを読み取りますpackage、version、ecosystem、requests[]パスとコンテンツを対応付けた辞書
search_github_repositoriesGitHub Search API を使用して GitHub リポジトリを検索しますquery、sort、order、per_page書式設定されたリポジトリ検索結果

インストールとセットアップ

クイックスタート
Claude Code
claude mcp add-json rtfmbro '{ "type": "http",  "url": "https://rtfmbro.smolosoft.dev/mcp/" }'
Claude Desktop/VS Code など

リモートサーバーを MCP 設定に追加します。

{
  "rtfmbro": {
    "type": "http", 
    "url": "https://rtfmbro.smolosoft.dev/mcp/"
  }
}
Cursor

MCP サーバーをインストール

エージェントとの連携

rtfmbro を選択した AI コーディングエージェントと適切に連携させるには、プロジェクトに適切なメタ指示ファイルをコピーします。

  • GitHub Copilot:プロジェクトに .github/copilot-instructions.md をコピーします
  • Claude Code:プロジェクトのルートに CLAUDE.md をコピーします
  • Cursor:プロジェクトのルートに .cursor/rules をコピーします
  • その他のエージェント:上記いずれかのファイルの指示を、使用するエージェントの形式に合わせて調整します

仕組み

ドキュメントのワークフロー
  1. レジストリの検索:パッケージレジストリ(PyPI、npm など)にクエリを送信し、メタデータを取得します
  2. GitHub の特定:パッケージのメタデータから GitHub リポジトリの URL を抽出します
  3. バージョンの解決:利用可能な git タグを取得し、セマンティックバージョンと照合します
  4. スマートな取得:完全に一致したタグ/コミットでリポジトリをクローンします
  5. コンテンツのフィルタリング:ドキュメントファイルのみを抽出し、ソースコードとビルド成果物を除外します
  6. キャッシュと最新性の確認:効率よく再アクセスできるよう、SHA ベースの最新性チェックとともに結果を保存します
キャッシュ戦略
  • SHA ベースの検証:現在のリポジトリのコミット SHA とキャッシュ済みのバージョンを比較します
  • 自動無効化:新しいコミットが検出されると、ドキュメントを再取得します
  • 永続ストレージ:重複する GitHub API 呼び出しを避けるため、ローカルキャッシュを保持します
  • メタデータの保持:すばやく閲覧できるよう、ドキュメントのツリー構造を保存します

前提条件

  • パッケージがサポート対象のレジストリ(PyPI、npm)に公開されていること
  • パッケージのメタデータに有効な GitHub リポジトリへのリンクが含まれていること
  • リポジトリでバージョン管理に git タグが使用されていること
  • リポジトリ内にドキュメントファイルが存在すること(生成済みのサイトだけではないこと)

ロードマップ

短期
  • エコシステムに依存しないフォールバック:サポート対象外のエコシステム向けにフォールバックの仕組みを実装する
  • rtfmbro のソースコードを公開:サーバーのコードベースをオープンソース化する
  • パブリック Docker イメージ:簡単にデプロイできるパブリック Docker イメージを作成する
  • プライベートリポジトリのサポート:認証を通じてプライベートリポジトリにアクセスできるようにする
  • テストの追加:コア機能向けの単体テストと統合テストを実装する
  • Python サポートの強化:pydocs と docstring の抽出を含める
  • 検索機能:ドキュメントコーパス全体を検索する
今後対応するエコシステム/言語/レジストリ
ソースコードのホスティングとリポジトリのサポート:
  • GitHub:GitHub リポジトリをサポート
  • Gitlab:GitLab リポジトリをサポート
  • Bitbucket:Bitbucket リポジトリをサポート
  • Launchpad:Launchpad リポジトリをサポート

既知の問題

  • 一部のパッケージでは、ドキュメントが独立した別のリポジトリにある場合があります
  • 大規模なリポジトリは、初回のクローンと処理に少し時間がかかる場合があります

類似/補完プロジェクト

  • mcp-package-docs:パッケージドキュメント向けの別の MCP サーバーです。ドキュメントの抽出や LSP サーバーなどに重点を置いており、rtfmbro の優れた補完ツールとなる可能性があります。
  • rust-docs-mcp-server:Rust のドキュメント向け MCP サーバーです。Rust 固有の機能やドキュメント形式に重点を置いています。
  • mcp-ragdocs:RAG(検索拡張生成)のドキュメント向け MCP サーバーです。AI モデルのドキュメント利用体験の向上を目的としています。
  • godoc-mcp:Go のドキュメント向け MCP サーバーです。Model Context Protocol を通じて Go パッケージのドキュメントにアクセスできます。
  • context7:rtfmbro の代替ツールです
context7 と rtfmbro の違い
項目context7rtfmbro
情報の鮮度ドキュメントを不透明な間隔で、またはユーザーの操作に応じて事前にスクレイピングします。執筆時点で、「最新」の Next.js ドキュメントはすでに2日前のものです。ドキュメントを必要なときに取得するため、常に最新の状態を保てます。
バージョン固有のドキュメント理論上は古いバージョンのスクレイピングも可能です(レガシープロジェクトや長期運用プロジェクトに有用)が、手順が複雑で、実用上は最新バージョンにほぼ限られます。古いバージョンのドキュメントも必要なときに取得でき、常に最新のドキュメントと同じ状態を保てます。
検索戦略A)トークン数を任意に制限できる RAG 検索でドキュメントを絞り込み、前処理しますが、結果にはばらつきがあります。または B)すべてのコンテンツを LLM のコンテキストに読み込み、過剰なトークンを消費します。エージェントによる探索を採用しています(Claude Code 自身が使用している方式)。
開発者体験すべてのプロンプトで context7 に明示的に言及する必要があります。定義済みのルールや指示に従って動作し、ロックファイルから適切なパッケージ名とバージョンを自動的に選択します(「設定したらそのまま」)。
サポート言語やエコシステムに依存しません。現時点では言語やエコシステムに特化しています。近いうちに、対応言語やエコシステムの追加、および言語に依存しないフォールバック機構を予定しています。

コメント

MCP は初めてですか?

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

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