mcp-rquest について
mcp-rquest は、Claude などの LLM にブラウザに近い HTTP リクエスト機能を提供する MCP サーバーで、TLS、JA3/JA4、HTTP/2 のフィンガープリントを再現します。HTML や PDF を Markdown に変換し、LLM での処理を容易にします。
主な機能
- 01GET、POST など主要な HTTP メソッドに対応
- 02ブラウザの TLS と JA3/JA4 フィンガープリントを再現
- 03大きなレスポンスを保存しトークン数を集計
- 04HTML と PDF を Markdown に変換
- 05Basic、Bearer などの認証方式に対応
活用シーン
- 01ブラウザのフィンガープリントを確認するサイトへLLMからアクセスする
- 02Web ページや PDF を Markdown に変換して分析する
- 03HTTP エンドポイントを呼び出してレスポンスを取得する
MCP 対応
mcp-rquest は、http_get や http_post などの HTTP リクエストツールとレスポンス処理ツールを MCP クライアントに公開する MCP サーバーです。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-rquest
Claude やその他の LLM に高度な HTTP リクエスト機能を提供する Model Context Protocol(MCP)サーバーです。rquest を基盤としており、正確な TLS/JA3/JA4 フィンガープリントによるリアルなブラウザーエミュレーションを実現します。これにより、モデルはウェブサイトとより自然にやり取りし、一般的なボット対策を回避できます。また、LLM が処理しやすいように PDF や HTML ドキュメントを Markdown に変換する機能もサポートしています。
機能
- すべての HTTP メソッドに対応:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE をサポート
- ブラウザーフィンガープリンティング:正確な TLS、JA3/JA4、HTTP/2 ブラウザーフィンガープリント
- コンテンツ処理:
- トークン数をカウントしながら、大きなレスポンスを自動的に処理
- LLM による処理を改善するため、HTML を Markdown に変換
- Marker ライブラリを使用して PDF を Markdown に変換
- システムの一時ディレクトリにレスポンスを安全に保存
- 認証サポート:Basic、Bearer、カスタム認証方式
- リクエストのカスタマイズ:
- ヘッダー、Cookie、リダイレクト
- フォームデータ、JSON ペイロード、multipart/form-data
- クエリパラメーター
- SSL セキュリティ:リアルなブラウザーフィンガープリントを備えた安全な接続に BoringSSL を使用
利用可能なツール
-
HTTP リクエストツール:
http_get- オプションのパラメーターを指定して GET リクエストを実行http_post- POST リクエストでデータを送信http_put- PUT リクエストでリソースを更新http_delete- DELETE リクエストでリソースを削除http_patch- リソースを部分的に更新http_head- リソースのヘッダーのみを取得http_options- リソースのオプションを取得http_trace- 診断用のリクエストトレース
-
レスポンス処理ツール:
get_stored_response- 保存された大きなレスポンスを取得。行範囲を指定することもできますget_stored_response_with_markdown- HTML または PDF のレスポンスを、LLM による処理に適した Markdown 形式に変換get_model_state- PDF モデルの読み込み処理の現在の状態を取得restart_model_loading- PDF モデルの読み込みに失敗した場合や停止した場合に、読み込み処理を再起動
PDF サポート
mcp-rquest は PDF から Markdown への変換をサポートするようになりました。PDF ファイルをダウンロードし、LLM が処理しやすい Markdown 形式に変換できます。
- PDF の自動検出:コンテンツタイプに基づいて PDF ファイルを自動的に検出します
- シームレスな変換:HTML ファイルと PDF ファイルのどちらにも、同じ
get_stored_response_with_markdownツールを使用できます - 高品質な変換:Marker ライブラリを使用して、PDF を正確に Markdown に変換します
- パフォーマンスの最適化:リクエスト処理中の遅延を避けるため、パッケージのインストール時にモデルを事前にダウンロードします
インストール
uv を使用する場合(推奨)
uv を使用する場合、特別なインストールは不要です。
uvx を使って mcp-rquest を直接実行します。
pip を使用する場合
または、pip を使って mcp-rquest をインストールできます。
pip install mcp-rquest
インストール後、次のコマンドをスクリプトとして実行できます。
python -m mcp_rquest
設定
Claude.app の設定
Claude の設定に追加します。
uvx を使用する場合:
{
"mcpServers": {
"http-rquest": {
"command": "uvx",
"args": ["mcp-rquest"]
}
}
}
pip を使用する場合:
{
"mcpServers": {
"http-rquest": {
"command": "python",
"args": ["-m", "mcp_rquest"]
}
}
}
pipx を使用する場合:
{
"mcpServers": {
"http-rquest": {
"command": "pipx",
"args": ["run", "mcp-rquest"]
}
}
}
## ブラウザーエミュレーション
mcp-rquest は、rquest の強力なブラウザーエミュレーション機能を活用し、リアルなブラウザーフィンガープリントを提供します。これにより、ボット検出を回避し、通常のブラウザーでのみ利用できるコンテンツにアクセスできます。対応しているブラウザーフィンガープリントは以下のとおりです。
- Chrome(複数のバージョン)
- Firefox
- Safari(iOS および iPad 版を含む)
- Edge
- OkHttp
これにより、mcp-rquest 経由で送信されたリクエストは、ボットからのリクエストではなく、正規のブラウザートラフィックとして認識されます。
開発
開発環境のセットアップ
- リポジトリをクローンします
- uv を使って仮想環境を作成します:
uv venv - 仮想環境を有効化します:
# Unix/macOS source .venv/bin/activate # Windows .venv\Scripts\activate - 開発用の依存関係をインストールします:
uv pip install -e ".[dev]"
謝辞
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。