Deepwiki MCP Server について
Nowledgeは公開URLの関連ページをクロールしてMarkdownに変換するMCPサーバーです。ドキュメントやウェブ情報を調べる開発者などを対象に、統合文書またはページ単位の結果を返し、クロール深度と並行数を設定できます。
主な機能
- 01公開ウェブページのクロール
- 02コンテンツのMarkdown変換
- 03統合形式またはページ別の結果
- 04クロール深度と並行数の調整
- 05ライブラリ名やキーワードで検索
活用シーン
- 01ウェブサイト全体のドキュメント収集
- 02単一ページのMarkdown取得
- 03名前からライブラリのドキュメントを検索
MCP 対応
MCPクライアント向けに`nowledge_fetch`ツールを登録します。開始URLを受け取り、統合Markdownまたはページ構造化データを返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Nowledge MCP サーバー
これは公式の Nowledge MCP サーバーです。
MCP 経由でウェブ URL を受け取り、関連するページをすべてクロールして Markdown に変換し、単一のドキュメントまたはページごとのリストを返します。
機能
- 🌐 ウェブ全体の取得:公開されているあらゆるウェブ URL からコンテンツを取得します
- 🧹 HTML のサニタイズ:ヘッダー、フッター、ナビゲーション、スクリプト、広告を削除します
- 🔗 リンクの書き換え:Markdown で機能するようにリンクを調整します
- 📄 複数の出力形式:単一のドキュメントまたは構造化されたページを取得します
- 🚀 パフォーマンス:並行処理数と深度を調整できる高速クロール
- NLP:ライブラリ名またはキーワードで検索します
使用方法
使用できるプロンプト:
nowledge fetch how can i use gpt-image-1 with "vercel ai" sdk
nowledge fetch how can i create new blocks in shadcn?
nowledge fetch i want to understand how X works
ドキュメント全体を取得(デフォルト)
use nowledge https://some-website.com/shadcn-ui/ui
use nowledge multiple pages https://some-website.com/shadcn-ui/ui
単一ページ
use nowledge fetch single page https://some-website.com/tailwindlabs/tailwindcss/2.2-theme-system
短縮形で取得
use nowledge fetch tailwindlabs/tailwindcss
nowledge fetch library
nowledge fetch url
nowledge fetch <name>/<repo>
nowledge multiple pages ...
nowledge single page url ...
Cursor
これを .cursor/mcp.json ファイルに追加します。
{
"mcpServers": {
"mcp-nowledge": {
"command": "npx",
"args": ["-y", "mcp-nowledge@latest"]
}
}
}

MCP ツールの統合
このパッケージは nowledge_fetch という名前のツールを登録します。このツールは、あらゆる MCP 対応クライアントで使用できます。
{
"action": "nowledge_fetch",
"params": {
"url": "https://some-website.com/user/repo",
"mode": "aggregate",
"maxDepth": "1"
}
}
パラメーター
url(必須):ウェブサイトまたはリポジトリの開始 URLmode(任意):出力モード。「aggregate」は単一の Markdown ドキュメント(デフォルト)、「pages」は構造化されたページデータですmaxDepth(任意):クロールするページの最大深度(デフォルト:10)
レスポンス形式
成功レスポンス(集約モード)
{
"status": "ok",
"data": "# Page Title\n\nPage content...\n\n---\n\n# Another Page\n\nMore content...",
"totalPages": 5,
"totalBytes": 25000,
"elapsedMs": 1200
}
成功レスポンス(ページモード)
{
"status": "ok",
"data": [
{
"path": "index",
"markdown": "# Home Page\n\nWelcome to the repository."
},
{
"path": "section/page1",
"markdown": "# First Page\n\nThis is the first page content."
}
],
"totalPages": 2,
"totalBytes": 12000,
"elapsedMs": 800
}
エラーレスポンス
{
"status": "error",
"code": "FETCH_FAIL",
"message": "Failed to fetch content from the web"
}
部分的な成功レスポンス
{
"status": "partial",
"data": "# Page Title\n\nPage content...",
"errors": [
{
"url": "https://some-website.com/user/repo/page2",
"reason": "HTTP error: 404"
}
],
"totalPages": 1,
"totalBytes": 5000,
"elapsedMs": 950
}
進行状況イベント
ツールを使用すると、クロール中に進行状況イベントを受け取ります。
Fetched https://some-website.com/user/repo: 12500 bytes in 450ms (status: 200)
Fetched https://some-website.com/user/repo/page1: 8750 bytes in 320ms (status: 200)
Fetched https://some-website.com/user/repo/page2: 6200 bytes in 280ms (status: 200)
ローカル開発 - インストール
ローカルでの使用
{
"mcpServers": {
"mcp-nowledge": {
"command": "node",
"args": ["./bin/cli.mjs"]
}
}
}
ソースから
# Clone the repository
git clone https://github.com/instructa/nowledge.git
cd nowledge
# Install dependencies
npm install
# Build the package
npm run build
API の直接呼び出し
HTTP トランスポートでは、API を直接呼び出すことができます。
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"id": "req-1",
"action": "nowledge_fetch",
"params": {
"url": "https://some-website.com/user/repo",
"mode": "aggregate"
}
}'
設定
環境変数
NOWLEDGE_MAX_CONCURRENCY:同時リクエストの最大数(デフォルト:5)NOWLEDGE_REQUEST_TIMEOUT:リクエストのタイムアウト(ミリ秒、デフォルト:30000)NOWLEDGE_MAX_RETRIES:リクエスト失敗時の最大再試行回数(デフォルト:3)NOWLEDGE_RETRY_DELAY:再試行時のバックオフの基本待機時間(ミリ秒、デフォルト:250)
これらを設定するには、プロジェクトのルートに .env ファイルを作成します。
NOWLEDGE_MAX_CONCURRENCY=10
NOWLEDGE_REQUEST_TIMEOUT=60000
NOWLEDGE_MAX_RETRIES=5
NOWLEDGE_RETRY_DELAY=500
Docker でのデプロイ(未テスト)
Docker イメージをビルドして実行します。
# Build the image
docker build -t mcp-nowledge .
# Run with stdio transport (for development)
docker run -it --rm mcp-nowledge
# Run with HTTP transport (for production)
docker run -d -p 3000:3000 mcp-nowledge --http --port 3000
# Run with environment variables
docker run -d -p 3000:3000 \
-e NOWLEDGE_MAX_CONCURRENCY=10 \
-e NOWLEDGE_REQUEST_TIMEOUT=60000 \
mcp-nowledge --http --port 3000
開発
# Install dependencies
pnpm install
# Run in development mode with stdio
pnpm run dev-stdio
# Run tests
pnpm test
# Run linter
pnpm run lint
# Build the package
pnpm run build
トラブルシューティング
よくある問題
-
アクセス許可が拒否される:CLI の実行時に EACCES エラーが発生する場合は、バイナリに実行権限を付与してください。
chmod +x ./node_modules/.bin/mcp-nowledge -
接続が拒否される:ポートが使用可能で、ファイアウォールによってブロックされていないことを確認してください。
# Check if port is in use lsof -i :3000 -
タイムアウトエラー:大規模なリポジトリの場合は、タイムアウトと並行処理数を増やすことを検討してください。
NOWLEDGE_REQUEST_TIMEOUT=60000 NOWLEDGE_MAX_CONCURRENCY=10 npx mcp-nowledge
コントリビューション
コントリビューションを歓迎します!詳細については CONTRIBUTING.md をご覧ください。
ライセンス
MIT
リンク
- GitHub:instructa/nowledge
- X/Twitter:@kregenrek
- Bluesky:@kevinkern.dev
コース
- Cursor AI を学ぶ:Ultimate Cursor Course
- AI を使ったソフトウェアの構築を学ぶ:instructa.ai
その他のプロジェクト:
- AI Prompts - Cursor AI、Cline、Windsurf、Github Copilot 向けに厳選された AI プロンプト
- codefetch - シンプルなターミナルコマンドひとつで、コードを LLM 向けの Markdown に変換します
- aidex AI 言語モデルの詳細情報を提供する CLI ツールです。開発者がニーズに合ったモデルを選ぶのに役立ちます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。