MCP URL Fetcher

by nathanonn
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 fetching and rendering of README files directly from GitHub repositories, making documentation accessible for analysis.

  • Provides complete Markdown rendering capabilities, allowing fetching and processing of Markdown content from various web sources.

MCP URLフォーマットコンバーター

任意の URL からコンテンツを取得し、必要な出力形式に変換するモデル コンテキスト プロトコル (MCP) サーバー。

概要

MCP URLフォーマットコンバーターは、元のコンテンツの種類を問わず、あらゆるWeb URLからコンテンツを取得し、様々な形式(HTML、JSON、Markdown、プレーンテキスト)に変換するためのツールを提供します。Claude for Desktopを含むあらゆるMCP対応クライアントと連携するように設計されており、LLMは一貫した形式でWebコンテンツにアクセスし、変換および分析できます。

特徴

  • 🔄フォーマット変換: あらゆるウェブコンテンツをHTML、JSON、Markdown、またはプレーンテキストに変換します
  • 🌐ユニバーサル入力サポート:ウェブサイト、API、RAWファイルなどを処理します
  • 🔍自動コンテンツ検出:ソース形式をインテリジェントに識別
  • 🧰堅牢なライブラリサポート:業界標準のライブラリを使用します。
    • HTML解析用のCheerio
    • Markdown処理対象としてマーク
    • XML処理のための高速XMLパーサー
    • CSV変換のためのCSVtoJSON
    • セキュリティのためにHTMLをサニタイズする
    • HTMLからMarkdownへの変換のターンダウン
  • 🔧高度なフォーマット処理
    • メタデータ抽出によるHTML解析
    • JSONの整形印刷と構造の保存
    • スタイル付きのMarkdownレンダリング
    • CSVからテーブルへの変換
    • XMLからJSONへの変換
  • 📜履歴追跡:最近取得したURLのログを保持します
  • 🛡️セキュリティの焦点:XSS攻撃を防ぐためのコンテンツサニタイズ

インストール

前提条件

  • Node.js 16.x 以上
  • npmまたはyarn

クイックスタート

  1. リポジトリをクローンします。
    git clone https://github.com/yourusername/mcp-url-converter.git cd mcp-url-converter
  2. 依存関係をインストールします:
    npm install
  3. プロジェクトをビルドします。
    npm run build
  4. サーバーを実行します。
    npm start

Claude for Desktopとの統合

  1. Claude for Desktop の構成ファイルを開きます。
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. URL コンバーター サーバーを構成に追加します。
    { "mcpServers": { "url-converter": { "command": "node", "args": ["/absolute/path/to/mcp-url-converter/build/index.js"] } } }
  3. デスクトップ版のClaudeを再起動する

利用可能なツール

fetch

任意の URL からコンテンツを取得し、最適な出力形式を自動的に検出します。

パラメータ:

  • url (文字列、必須): コンテンツを取得するURL
  • format (文字列, オプション): 変換後のフォーマット ( autohtmljsonmarkdowntext )。デフォルト: auto

例:

Can you fetch https://example.com and choose the best format to display it?

fetch-json

任意の URL からコンテンツを取得し、JSON 形式に変換します。

パラメータ:

  • url (文字列、必須): コンテンツを取得するURL
  • prettyPrint (boolean, オプション): JSONを整形して印刷するかどうか。デフォルト: true

例:

Can you fetch https://example.com and convert it to JSON format?

fetch-html

任意の URL からコンテンツを取得し、HTML 形式に変換します。

パラメータ:

  • url (文字列、必須): コンテンツを取得するURL
  • extractText (ブール値、オプション):テキストコンテンツのみを抽出するかどうか。デフォルト: false

例:

Can you fetch https://api.example.com/users and convert it to HTML?

fetch-markdown

任意の URL からコンテンツを取得し、Markdown 形式に変換します。

パラメータ:

  • url (文字列、必須): コンテンツを取得するURL

例:

Can you fetch https://example.com and convert it to Markdown?

fetch-text

任意の URL からコンテンツを取得し、プレーン テキスト形式に変換します。

パラメータ:

  • url (文字列、必須): コンテンツを取得するURL

例:

Can you fetch https://example.com and convert it to plain text?

web-searchdeep-research

これらのツールは、Perplexity 検索機能へのインターフェイスを提供します (MCP ホストでサポートされている場合)。

利用可能なリソース

recent-urls://list

タイムスタンプと出力形式を含む最近取得した URL のリストを返します。

例:

What URLs have I fetched recently?

安全

このサーバーはいくつかのセキュリティ対策を実装しています。

  • XSS攻撃を防ぐためにsanitize-htmlを使用してHTMLをサニタイズする
  • 処理前のコンテンツ検証
  • エラー処理と安全なデフォルト
  • Zodによる入力パラメータ検証
  • 安全な出力エンコーディング

テスト

MCP Inspector を使用してサーバーをテストできます。

npm run test

トラブルシューティング

よくある問題

  1. 接続エラー: URL がアクセス可能であり、正しい形式であることを確認してください
  2. 変換エラー: 複雑なコンテンツは、形式間できれいに変換されない場合があります。
  3. クロスオリジンの問題: 一部のウェブサイトでは不明なソースからのリクエストがブロックされる可能性があります

デバッグモード

追加のデバッグ情報については、 DEBUG環境変数を設定します。

DEBUG=mcp:* npm start

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。

謝辞

  • モデルコンテキストプロトコルで構築
  • セキュリティを重視した、最新の積極的にメンテナンスされたライブラリを使用します
  • OWASP の推奨事項に基づくサニタイズアプローチ

最終更新日: 2025年3月29日

-
security - not tested
F
license - not found
-
quality - not tested

LLM が自動形式検出を使用して複数の形式 (HTML、JSON、Markdown、テキスト) の Web コンテンツを取得して処理できるようにするモデル コンテキスト プロトコル サーバー。

  1. Overview
    1. Features
      1. Installation
        1. Prerequisites
        2. Quick Start
      2. Integration with Claude for Desktop
        1. Available Tools
          1. fetch
          2. fetch-json
          3. fetch-html
          4. fetch-markdown
          5. fetch-text
          6. web-search and deep-research
        2. Available Resources
          1. recent-urls://list
        3. Security
          1. Testing
            1. Troubleshooting
              1. Common Issues
              2. Debug Mode
            2. License
              1. Acknowledgments
                ID: 52yiq4sifj