mcpField
R
RFC lookup

RFC lookup

ローカル
github.com/shbernal開発ツール15 日前に更新

RFC lookup について

RFC仕様を検索するMCPサーバーです。セクション単位の検索に対応し、置き換えられた仕様を警告します。シェルを実行できないクライアント向けです。

主な機能

  1. 01RFCタイトルと全文の検索
  2. 02見出しと行番号の一覧表示
  3. 03指定セクションや行範囲の読み取り
  4. 04置き換え済み仕様の表示
  5. 05長すぎる読み取りの制限

活用シーン

  1. 01RFCの現行ステータスの確認
  2. 02関連セクションを見つけてから読む
  3. 03引用された仕様が廃止済みか確認

MCP 対応

stdioまたはHTTP経由で、RFC検索、セクション一覧、文書読み取りのツールをMCPクライアントに提供します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"shbernal-rfc-ai-tooling": {
"command": "uvx",
"args": [
"mcp-server-rfc"
]
}
}
}
起動コマンドuvx mcp-server-rfc

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

パッケージ
pypimcp-server-rfc0.6.0

ツール

3

掲載時のツール一覧 · 5 日前に更新

パラメーター型必須説明
limitintegerいいえ
querystringはい
regexbooleanいいえ
scopestringいいえ

詳細

mcp-server-rfc

RFC コーパスを 40 分の 1 のトークン数で読み込み、廃止された仕様にフラグを付ける MCP サーバーです。

{
  "mcpServers": {
    "rfc": {
      "command": "uvx",
      "args": ["mcp-server-rfc"]
    }
  }
}

クローンも、仮想環境も、パスも不要です。インストールはこれだけです。クライアントがサーバーをマシン上で起動し、標準入力と標準出力を介して通信します。

サーバーが接続済みと表示されていても、実際に使われたとは限りません。また、モデルは RFC に関する質問に、代わりに記憶から喜んで回答してしまいます。Claude Desktop では、サーバーごとのログに記録されるのはハンドシェイクのみなので、実際に使われたかどうかは判断できません。— docs/desktop-verification.md では、実際の証拠がどこにあるかを説明しています。

ツール

ツール機能
search_rfcsタイトル、またはセクションインデックスがある場合はすべての RFC の全文を検索し、セクションごとに順位付けします
list_sectionsRFC の見出しと行番号を表示します。最初に呼び出す低コストなツールです
get_rfc1 つのセクションまたは行範囲を読み込みます

セクションインデックスがある場合、全文検索のクエリは単語で、各結果は BM25 によって順位付けされたセクションです。結果には、get_rfc に渡すセクション番号と、最も一致する行が含まれます。インデックスがない場合、全文検索は同期済みミラーに対する rg または grep にフォールバックします。この場合、クエリはリテラル文字列で、結果は RFC 全体です。regex=true を指定すると、タイトル検索と同様にパターンマッチングが有効になります。ペイロードの tool にはバックエンドが記載されます。タイトル検索では現行の RFC が後継のものより先に表示されるため、limit で結果が途中までに制限されても、置き換えられた文書ではなく必要な文書が残ります。

get_rfc は、名前を指定したセクションではない場合、1500 行を超える読み込みを拒否し、仕様をコンテキストに詰め込む代わりに、サイズと list_sections への案内を返します。モデルがその仕様について質問していたのが 1 つだけだとしても同じです。start_line を 1 にしても、この制限は回避できません。full=true を指定すると制限が解除されます。名前を指定して要求したセクションが拒否されることはありません。list_sections は各セクションの長さを示し、max_lines はすべての読み込みに上限を設けるため、選択が制限によって妨げられるのではなく、情報に基づいて行えます。

すべての応答には、RFC のステータスと、該当する場合は後継の仕様に置き換えられていることを示す警告がバナーで表示されます。

RFC 2616 — Hypertext Transfer Protocol -- HTTP/1.1  [DRAFT STANDARD]
!! OBSOLETED BY: RFC 7230, 7231, 7232, 7233, 7234, 7235

この警告があるからこそ、モデルに rfc-editor.org を直接取得させるのではなく、このツールを使うのがおすすめです。モデルは廃止された仕様を、自信たっぷりに引用します。

全文検索

セットアップなしで動作し、必要に応じて文書を取得します。全文検索にはさらにセクションインデックスが必要で、ユーザーがシェルからダウンロードします。

uvx mcp-server-rfc sync --index

このプロジェクトの GitHub リリースから約 270 MB をダウンロードし、公開されている SHA-256 と照合します。セクションを BM25 で順位付けし、すべての読み込みをディスクから提供するため、サーバーが RFC Editor から取得する必要はなくなります。代わりに uvx mcp-server-rfc sync を実行すると、RFC Editor のボランティアが運営する rsync ミラーから、512 MB 分のテキストファイルとしてコーパスがコピーされます。これは rg と regex=true による検索で使用されます。

サーバーを実行するコマンドで、その CLI も実行できます。sync はダウンロードを行い、status は存在するデータを報告します。その他のコマンドについては uvx mcp-server-rfc <command> --help を参照してください。全文検索でインデックスもミラーもない場合に返されるエラーでも、このコマンドが案内されます。

どちらも任意です。サーバーは意図的に同期ツールを公開していません。誰かのディスクに数百 MB のデータを保存するかどうかは、モデルではなく本人が決めるべきだからです。

インデックスやミラーがすでに存在する場合(たとえば、関連スキル用に同期済みの場合)、このサーバーは自動的にそれを使用します。プラットフォームのデータディレクトリを参照します。$XDG_DATA_HOME/rfc-ai-tooling、または Windows では %LOCALAPPDATA%\rfc-ai-tooling を確認し、いずれもない場合は ~/.local/share/rfc-ai-tooling を使用します。既定以外の場所を指定するには $RFC_MIRROR を設定してください。ホームディレクトリがないコンテナでは、この環境変数または --mirror を指定する必要があります。

HTTP モード

上記の設定は stdio トランスポート用で、マシン上でプロセスを起動できるクライアントが必要です。クラウド上で実行されるセッション(ウェブ版 claude.ai や Cowork など)では起動できず、設定で解決することもできません。こうした環境で使うには、サーバーをアクセス可能な場所にデプロイする必要があります。

mcp-server-rfc --transport http --host 0.0.0.0 --port 8080

RFC_TRANSPORT、HOST、PORT も環境変数から読み込まれます。このリポジトリには、それらを設定する Dockerfile と fly.toml が含まれています。このサーバーの公開インスタンスは存在せず、今後も提供する予定はありません。利用する場合は、自分でホストし、認証を前段に設けてください。認証がないと、ボランティアが運営するミラーへのオープンプロキシになってしまいます。

全文検索がホスト環境で動作するのは、セクションインデックスがサーバーのディスク上にある場合のみです(そこで sync --index を実行してください)。インデックスがない場合、ホストされたインスタンスはタイトル検索の結果を黙って返すのではなく、その旨を示すエラーを返します。非推奨のバナー、セクションの読み取り、対象を限定しない読み取りのガードは、2 MB の RFC インデックスだけで動作するため、どちらの環境でも使えます。

クライアントにシェルがある場合

代わりにスキルを使ってください。Claude Code、Codex CLI、OpenClaw、Cursor、Zed はすべて該当します。構成要素を減らして同じ機能を実現し、エージェントがコーパスに対して ripgrep を実行できるようにします。

npx skills add shbernal/rfc-ai-tooling      # from the repo, into .claude/skills/
clawhub install @shbernal/rfc-lookup        # or the last released version

このサーバーは、モデルに専用のシェルを提供しないクライアント向けです。代表例は Claude Desktop です。チャットからマシン上でコマンドを実行することはできませんが、このサーバーをそのマシン上で起動できます。

ソース、課題、スキル:https://github.com/shbernal/rfc-ai-tooling

MIT。

コメント

MCP は初めてですか?

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

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