mcpField
M
mcp-rquest

mcp-rquest

ローカル
pypi.orgファイル・ストレージ4784 週間前に更新

mcp-rquest について

mcp-rquest は、Claude などの LLM にブラウザに近い HTTP リクエスト機能を提供する MCP サーバーで、TLS、JA3/JA4、HTTP/2 のフィンガープリントを再現します。HTML や PDF を Markdown に変換し、LLM での処理を容易にします。

主な機能

  1. 01GET、POST など主要な HTTP メソッドに対応
  2. 02ブラウザの TLS と JA3/JA4 フィンガープリントを再現
  3. 03大きなレスポンスを保存しトークン数を集計
  4. 04HTML と PDF を Markdown に変換
  5. 05Basic、Bearer などの認証方式に対応

活用シーン

  1. 01ブラウザのフィンガープリントを確認するサイトへLLMからアクセスする
  2. 02Web ページや PDF を Markdown に変換して分析する
  3. 03HTTP エンドポイントを呼び出してレスポンスを取得する

MCP 対応

mcp-rquest は、http_get や http_post などの HTTP リクエストツールとレスポンス処理ツールを MCP クライアントに公開する MCP サーバーです。

設定

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

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

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

パッケージ
pypimcp-rquest

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

mcp-rquest

PyPI Version Python Versions GitHub Stars License

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 形式に変換できます。

  1. PDF の自動検出:コンテンツタイプに基づいて PDF ファイルを自動的に検出します
  2. シームレスな変換:HTML ファイルと PDF ファイルのどちらにも、同じ get_stored_response_with_markdown ツールを使用できます
  3. 高品質な変換:Marker ライブラリを使用して、PDF を正確に Markdown に変換します
  4. パフォーマンスの最適化:リクエスト処理中の遅延を避けるため、パッケージのインストール時にモデルを事前にダウンロードします

インストール

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 経由で送信されたリクエストは、ボットからのリクエストではなく、正規のブラウザートラフィックとして認識されます。

開発

開発環境のセットアップ
  1. リポジトリをクローンします
  2. uv を使って仮想環境を作成します:
    uv venv
    
  3. 仮想環境を有効化します:
    # Unix/macOS
    source .venv/bin/activate
    # Windows
    .venv\Scripts\activate
    
  4. 開発用の依存関係をインストールします:
    uv pip install -e ".[dev]"
    

謝辞

  • このプロジェクトは、ブラウザーフィンガープリンティング機能を備えた高度な HTTP クライアントを提供する rquest を基盤として構築されています。
  • rquest は reqwest のフォークをベースにしています。

コメント

MCP は初めてですか?

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

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