WhatsUpDoc (downmarked) について
WhatsUpDoc (downmarked)は、ウェブ上の開発ドキュメントを取得し、Markdownとしてローカルに保存するコマンドラインツールです。ドキュメントを整理する開発者向けで、CSSセレクターによる抽出、再帰取得、見出しごとの分割に対応します。
主な機能
- 01ウェブページを取得しMarkdownに変換
- 02ローカルの出力先を指定
- 03CSSセレクターで内容を抽出
- 04リンク先ページを再帰取得
- 05見出しごとにドキュメントを分割
活用シーン
- 01指定したドキュメントページの保存
- 02ページの主要コンテンツだけを抽出
- 03リンクされたドキュメントの再帰収集
- 04長い文書を見出しごとに分割
MCP 対応
プロジェクトの説明では、MCPはコマンドラインツールとドキュメントサーバー間の通信を標準化します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
WhatsUpDoc(downmarked)
Model Context Protocol(MCP)を使用して、開発者向けドキュメントを取得し、ローカルに保存するコマンドラインツールです。
機能
- 任意のウェブサイトからドキュメントを取得し、Markdown に変換します
- システム上の任意の場所にドキュメントを保存します
- CSS セレクターを使用して、特定のコンテンツを対象にします
- リンクされたドキュメントページを再帰的に取得します
- 見出しごとにドキュメントを分割し、個別のファイルに保存します
- 標準化された通信に Model Context Protocol(MCP)を使用します
インストール
# Install globally
npm install -g downmarked
# Or use with npx
npx downmarked fetch https://reactjs.org/docs/getting-started.html
使い方
基本的な使い方
downmarked fetch <url>
出力先を尋ねるプロンプトが表示され、ドキュメントが Markdown として保存されます。
オプション
# Fetch documentation with specific options
downmarked fetch https://reactjs.org/docs/getting-started.html \
-o ~/Documents/react-docs.md \
-s "main" \
-r \
-d 2 \
--split
利用可能なオプション
| オプション | 説明 |
|---|---|
-o, --output <path> | 出力先のパス(絶対パスまたは相対パス) |
-s, --selector <selector> | 特定のコンテンツを対象にする CSS セレクター |
-r, --recursive | リンクされたドキュメントページを再帰的に取得します |
-d, --max-depth <number> | 再帰的に取得する際の最大深度(デフォルト:3) |
--split | 見出しごとにドキュメントを分割し、個別のファイルに保存します |
例
React のドキュメントを取得する
# Save React documentation to a specific location
downmarked fetch https://reactjs.org/docs/getting-started.html -o ~/Documents/react-docs.md
# Target only the main content area
downmarked fetch https://reactjs.org/docs/getting-started.html -s "main"
# Recursively fetch linked pages up to 2 levels deep
downmarked fetch https://reactjs.org/docs/getting-started.html -r -d 2
Python のドキュメントを取得する
# Save Python documentation
downmarked fetch https://docs.python.org/3/tutorial/index.html -o python-tutorial.md
仕組み
WhatsUpDoc(downmarked)は Model Context Protocol(MCP)を使用して、CLI とドキュメントサーバー間の通信を標準化します。このツールは次の処理を行います。
- 指定された URL から HTML コンテンツを取得します
- Cheerio を使用して HTML を解析します
- Turndown を使用して HTML を Markdown に変換します
- Markdown を指定された場所に保存します
貢献
貢献を歓迎します!お気軽に Pull Request を送信してください。
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/amazing-feature) - 変更をコミットします(
git commit -m 'Add some amazing feature') - ブランチにプッシュします(
git push origin feature/amazing-feature) - Pull Request を作成します
ライセンス
このプロジェクトは MIT License のもとでライセンスされています。詳細については LICENSE ファイルをご覧ください。
謝辞
- 通信フレームワークを提供している Model Context Protocol (MCP)
- HTML から Markdown への変換を提供している Turndown
- HTML の解析を提供している Cheerio
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。