mcp-server-requests

by coucya
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Enables conversion of web pages to Markdown format, allowing for cleaner and more readable text representation of online content.

中国語


mcp-server-requests

HTTP リクエスト機能を提供し、LLM が Web コンテンツを取得して処理できるようにする MCP サーバー。

特徴

  • WebコンテンツをMarkdown形式に変換することをサポート
  • LLMに役立たないコンテンツのフィルタリングをサポート
  • カスタム User-Agent ヘッダーをサポート
  • ランダムなUser-Agentヘッダーをサポート
  • HTTPリクエストのカスタムリクエストヘッダーをサポート
  • 完全な HTTP メソッド (GET、POST、PUT、DELETE、PATCH) をサポート
  • LLMは完全なHTTPレスポンスヘッダー情報にアクセスできる

インストール

git clone https://github.com/coucya/mcp-server-requests.git cd mcp-server-requests pip install .

使用法

MCP サーバーの構成

{ "mcpServers": { "mcp-server-requests": { "command": "python", "args": [ "-m", "mcp_server_requests" ] } } }

コマンドライン

0. MCPサーバーを起動する

MCP サーバーを直接起動します。

python -m mcp_server_requests

オプション

  • --user-agent TEXT : カスタム User-Agent 文字列を指定する
  • --random-user-agent [browser=xxx;os=xxx] : ランダムに生成されたユーザーエージェントを使用する
  • --force-user-agent : コマンドラインで指定されたユーザーエージェントを強制的に使用し、LLM が提供する UA を無視します。
  • --list-os-and-browser : ランダムなユーザーエージェント生成に使用できるブラウザと OS を一覧表示します

オプションの詳細

  • --user-agent--random-user-agentは相互に排他的であり、一緒に使用することはできません。
  • ユーザーエージェントの設定方法:
    • カスタム文字列: --user-agent "Mozilla/5.0 (...)"
    • 完全にランダム: --random-user-agent
    • 条件付きランダム生成:
      • ブラウザの種類を指定: --random-user-agent browser=chrome
      • OS を指定: --random-user-agent os=windows
      • ブラウザと OS の両方: --random-user-agent browser=chrome;os=windows
      • 注: ブラウザとOSのパラメータは大文字と小文字を区別しません
  • --random-user-agentで使用可能なブラウザーと OS を表示するには--list-os-and-browserを使用します。
  • --force-user-agent User-Agent の優先順位を制御します:
    • 有効にすると、コマンドラインで指定された User-Agent ( --user-agentまたは--random-user-agent経由) を優先し、LLM が提供する UA を無視します。
    • 無効にした場合:
      • LLMがUser-Agentを提供している場合はそれを使用する
      • それ以外の場合はコマンドラインで指定されたUser-Agentを使用する

1. fetch - Webコンテンツを取得する

fetch サブコマンドは fetch ツールの機能と同等であり、フェッチ機能を示します。

python -m mcp_server_requests fetch <URL> [--return-content {raw,basic_clean,strict_clean,markdown}]

オプション:

  • --return-content : 返されるコンテンツタイプ (デフォルト: markdown)
    • raw : 未処理のHTMLコンテンツを返す
    • basic_clean : 基本的なクリーンアップ、スクリプト、スタイルなどの非表示タグの削除
    • strict_clean : 非表示タグとほとんどの HTML 属性を削除する厳密なクリーンアップ
    • markdown : HTML をきれいな Markdown 形式に変換する

例:

python -m mcp_server_requests fetch https://example.com

2. get - HTTP GETリクエストを実行する

get サブコマンドは http_get ツールの機能と同等であり、http_get 機能を示します。

python -m mcp_server_requests get <URL> [--headers HEADERS]

オプション:

  • --headers : カスタムリクエストヘッダー (形式: "key1=value1;key2=value2")

3. post - HTTP POSTリクエストを実行する

post サブコマンドは http_post ツールの機能と同等であり、http_post 機能を示します。

python -m mcp_server_requests post <URL> [--headers HEADERS] [--data TEXT]

オプション:

  • --headers : カスタムリクエストヘッダー
  • --data : リクエストボディデータ

4. put - HTTP PUTリクエストを実行する

put サブコマンドは http_put ツールの機能と同等であり、http_put 機能を示します。

python -m mcp_server_requests put <URL> [--headers HEADERS] [--data TEXT]

オプション: POSTメソッドと同じ


5. delete - HTTP DELETEリクエストを実行する

delete サブコマンドは http_delete ツールの機能と同等であり、http_delete の機能を示します。

python -m mcp_server_requests delete <URL> [--headers HEADERS] [--data TEXT]

オプション: POSTメソッドと同じ


機能性

利用可能なツール

  1. fetch - ウェブコンテンツを取得する
    • パラメータ:
      • url (必須): ターゲットURL
      • return_content (オプション): 返されるコンテンツタイプ ('raw'、'basic_clean'、'strict_clean'、'markdown')
        • raw : 生のHTMLコンテンツを返す
        • basic_clean : スクリプトやスタイルなどの非表示タグを削除してフィルタリングされたHTMLコンテンツを返します。
        • strict_clean : 非表示タグとほとんどの不要なHTML属性を削除してフィルタリングされたHTMLコンテンツを返します。
        • markdown : HTMLをMarkdownに変換して返す
  2. http_get - HTTP GETリクエストを実行する
    • パラメータ:
      • url (必須): ターゲットURL
      • クエリ(オプション): クエリパラメータのキーと値のペア
      • ヘッダー(オプション): カスタムリクエストヘッダー
        • LLM はヘッダーに User-Agent を指定する場合があり、それを使用するかどうかは--force-user-agentによって制御されます (他のツールにも同様に適用されます)
  3. http_post - HTTP POSTリクエストを実行する
    • パラメータ:
      • url (必須): ターゲットURL
      • クエリ(オプション): クエリパラメータのキーと値のペア
      • ヘッダー(オプション): カスタムリクエストヘッダー
      • データ(オプション): リクエストボディデータ(テキスト)
      • json (オプション): リクエストボディデータ (JSON)
      • データJSONは一緒に使用できません
  4. http_put - HTTP PUTリクエストを実行する
    • パラメータ: http_postと同じ
  5. http_patch - HTTP PATCHリクエストを実行する
    • パラメータ: http_postと同じ
  6. http_delete - HTTP DELETEリクエストを実行する
    • パラメータ: http_postと同じ

ライセンス

マサチューセッツ工科大学

-
security - not tested
A
license - permissive license
-
quality - not tested

Web コンテンツの取得 (完全な Web ページ、フィルタリングされたコンテンツ、または Markdown 変換されたコンテンツ)、カスタム ユーザー エージェント、マルチ HTTP メソッドのサポート (GET/POST/PUT/DELETE/PATCH)、LLM 制御のリクエスト ヘッダー、LLM アクセス可能なレスポンス ヘッダーなど。

  1. Features
    1. Installation
      1. Usage
        1. MCP Server Configuration
        2. Command Line
        3. 0. Start MCP Server
        4. 1. fetch - Fetch Web Content
        5. 2. get - Execute HTTP GET Request
        6. 3. post - Execute HTTP POST Request
        7. 4. put - Execute HTTP PUT Request
        8. 5. delete - Execute HTTP DELETE Request
      2. Functionality
        1. Available Tools
      3. License
        ID: 7cy501fadq