huoshui-fetch について
huoshui-fetch は、Web ページの取得、変換、情報抽出を行う MCP サーバーです。記事、リンク、メタデータ、画像、構造化データを扱うツールを備えています。
主な機能
- 01カスタムヘッダーでページを取得
- 02HTML を Markdown またはテキストに変換
- 03HTML の不要要素を除去して整形
- 04JSON を Markdown に変換
- 05記事、リンク、メタデータを抽出
- 06画像と構造化データを抽出
活用シーン
- 01Web ページの内容を Markdown に整形
- 02記事本文とページメタデータを抽出
- 03ページ内のリンクや画像を絞り込み
- 04ページ内の JSON-LD とマイクロデータを取得
MCP 対応
MCP サーバーとして、Web ページの取得、変換、抽出ツールを MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
11掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | 取得する URL |
| timeout | number | いいえ | リクエストのタイムアウト(秒、デフォルト:30) |
| user_agent | any | いいえ | カスタム user agent 文字列(任意) |
| follow_redirects | boolean | いいえ | リダイレクトに従うかどうか(デフォルト:True) |
詳細
huoshui-fetch
Web ページからデータを取得、変換、抽出するツールを提供する、Web コンテンツ取得・変換専用の MCP(Model Context Protocol)サーバーです。
特長
取得ツール
- fetch_url:タイムアウト、リダイレクト処理、ユーザーエージェントをカスタマイズして、URL からコンテンツを取得します
- fetch_with_headers:認証が必要なリクエスト向けに、カスタムヘッダーを指定して URL から取得します
変換ツール
- html_to_markdown_tool:HTML を読みやすい Markdown 形式に変換します
- html_to_text_tool:HTML からプレーンテキストを抽出します
- clean_html_tool:スクリプトやスタイルを削除し、HTML をサニタイズします
- json_to_markdown_tool:JSON データを読みやすい Markdown に変換します
抽出ツール
- extract_article_tool:リーダビリティを使用して、記事の主要なコンテンツを抽出します
- extract_links_tool:フィルタリングオプションを使って、すべてのリンクを抽出します
- extract_metadata_tool:ページのメタデータ(タイトル、説明、OG タグ)を抽出します
- extract_images_tool:サイズでフィルタリングして画像を抽出します
- extract_structured_data_tool:JSON-LD とマイクロデータを抽出します
インストール
MCP Registry から(推奨)
このサーバーは Model Context Protocol Registry で公開されています。MCP クライアントを使ってインストールしてください。
mcp-name: io.github.huoshuiai42/huoshui-fetch
# Using uv (recommended)
uv sync
# Or install from GitHub
pip install git+https://github.com/yourusername/huoshui-fetch.git
使い方
uvx で実行する(1 回限りの使用におすすめ)
# From the repository
uvx --from . huoshui-fetch
# From GitHub (once published)
uvx --from git+https://github.com/yourusername/huoshui-fetch.git huoshui-fetch
直接実行する
# Using uv
uv run python -m huoshui_fetch
# Or if installed
python -m huoshui_fetch
このサーバーは標準入出力で通信するため、Claude Desktop やその他の MCP 対応クライアントとの連携に最適です。
Claude Desktop の設定
Claude Desktop の設定に追加します。
{
"mcpServers": {
"huoshui-fetch": {
"command": "uvx",
"args": ["--no-cache", "--from", ".", "huoshui-fetch"],
"cwd": "/path/to/huoshui-fetch"
}
}
}
GitHub からインストールした場合は、次のように設定します。
{
"mcpServers": {
"huoshui-fetch": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/yourusername/huoshui-fetch.git",
"huoshui-fetch"
]
}
}
}
使用例
設定が完了したら、Claude Desktop でツールを使用できます。
// Fetch a webpage
fetch_url("https://example.com")
// Convert HTML to Markdown
html_to_markdown_tool("<h1>Hello</h1><p>World</p>")
// Extract article content
extract_article_tool(html_content, "https://example.com/article")
必要条件
- Python 3.11+
- pyproject.toml に記載されている依存関係
開発と公開
このプロジェクトには、PyPI へのビルドと公開を自動化する包括的な仕組みが含まれています。
自動公開ワークフロー
# Complete automated workflow (TestPyPI + PyPI)
uv run python scripts/publish.py --include-pypi
# TestPyPI only (recommended for testing)
uv run python scripts/publish.py
# Bump version and publish
uv run python scripts/publish.py --version-bump patch --include-pypi
個別のコマンド
# Version management
uv run python scripts/version_manager.py --check
uv run python scripts/version_manager.py --bump patch
# Setup PyPI credentials (first time)
uv run python scripts/credentials_setup.py
# Build package
uv run python scripts/build.py
# Run comprehensive tests
uv run python scripts/test.py
# Upload to PyPI
uv run python scripts/upload.py
特長
- ✅ バージョン管理:すべてのファイル間で自動的に同期します
- ✅ 品質チェック:Ruff によるリンティングと MyPy による型チェック
- ✅ ビルドの自動化:検証を含むクリーンなビルド
- ✅ テストスイート:パッケージと機能の包括的なテスト
- ✅ 公開ワークフロー:
uv publishを使用した TestPyPI → PyPI(.pypircファイルに対応) - ✅ エラーからの復旧:組み込みのエラー処理と復旧オプション
詳しくは PUBLISHING.md をご覧ください。
DXT 拡張機能
このプロジェクトは、配布とインストールを簡単に行える DXT(Desktop Extensions)形式に対応しています。
DXT 拡張機能をビルドするには、次のコマンドを実行します。
python build_dxt.py
これにより、互換性のある AI デスクトップアプリケーションにインストールできる huoshui-fetch-{version}.dxt ファイルが作成されます。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。