mcpField
D
Deepwiki MCP Server

Deepwiki MCP Server

ローカル
github.com/regenrek開発ツール1.4k66 週間前に更新

Deepwiki MCP Server について

Deepwiki MCP Server は、deepwiki.com のページをクロールして Markdown に変換する非公式の MCP サーバーです。Cursor などのエディターで DeepWiki のドキュメントを利用したい開発者を対象としています。README によると、DeepWiki がスクレイピングを制限したため現在は動作せず、公式の DeepWiki MCP サーバーの利用が推奨されています。

主な機能

  1. 01deepwiki.com ドメインの URL のみを処理
  2. 02ヘッダー、フッター、ナビゲーション、スクリプトを除去
  3. 03Markdown 向けにリンクを書き換え
  4. 04単一ドキュメントまたはページ単位の構造化データを返却
  5. 05並行数とクロールの深さを調整可能

活用シーン

  1. 01DeepWiki のドキュメントをエディターのコンテキストに取り込む
  2. 02ライブラリ名や短縮形のリポジトリ名からドキュメントを取得する
  3. 03Cursor 上のコーディングエージェントにリポジトリの説明を提供する

MCP 対応

本プロジェクトは MCP サーバーであり、開始 URL、出力モード、最大クロール深度を受け取る deepwiki_fetch ツールを MCP クライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Deepwiki MCP サーバー

⚠️ 重要なお知らせ:DeepWikiがスクレイピングをできないようにしたため、このサーバーは現在動作していません。当面は、https://docs.devin.ai/work-with-devin/deepwiki-mcp にある公式のDeepWiki MCPサーバーを使用することをおすすめします。

これは非公式のDeepwiki MCPサーバーです。

MCP経由でDeepwikiのURLを受け取り、関連するすべてのページをクロールしてMarkdownに変換し、単一のドキュメントまたはページごとのリストを返します。

機能

  • 🔒 ドメインの安全性:deepwiki.comのURLのみを処理します
  • 🧹 HTMLのサニタイズ:ヘッダー、フッター、ナビゲーション、スクリプト、広告を削除します
  • 🔗 リンクの書き換え:Markdownで機能するようにリンクを調整します
  • 📄 複数の出力形式:単一のドキュメントまたは構造化されたページを取得できます
  • 🚀 パフォーマンス:並行処理数と深さを調整できる高速クロール
  • NLP:ライブラリ名だけを検索します

使用方法

使用できるプロンプト:

deepwiki fetch how can i use gpt-image-1 with "vercel ai" sdk
deepwiki fetch how can i create new blocks in shadcn?
deepwiki fetch i want to understand how X works

ドキュメント全体を取得(デフォルト)

use deepwiki https://deepwiki.com/shadcn-ui/ui
use deepwiki multiple pages https://deepwiki.com/shadcn-ui/ui

単一ページ

use deepwiki fetch single page https://deepwiki.com/tailwindlabs/tailwindcss/2.2-theme-system

短縮形で取得

use deepwiki fetch tailwindlabs/tailwindcss
deepwiki fetch library

deepwiki fetch url
deepwiki fetch <name>/<repo>

deepwiki multiple pages ...
deepwiki single page url ...

Cursor

.cursor/mcp.json ファイルに以下を追加します。

{
  "mcpServers": {
    "mcp-deepwiki": {
      "command": "npx",
      "args": ["-y", "mcp-deepwiki@latest"]
    }
  }
}

Deepwikiのロゴ

MCPツールの統合

このパッケージは deepwiki_fetch という名前のツールを登録します。このツールは、MCP互換の任意のクライアントで使用できます。

{
  "action": "deepwiki_fetch",
  "params": {
    "url": "https://deepwiki.com/user/repo",
    "mode": "aggregate",
    "maxDepth": "1"
  }
}
パラメーター
  • url(必須):Deepwikiリポジトリの開始URL
  • mode(任意):出力モード。"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": "DOMAIN_NOT_ALLOWED",
  "message": "Only deepwiki.com domains are allowed"
}
部分的な成功レスポンス
{
  "status": "partial",
  "data": "# Page Title\n\nPage content...",
  "errors": [
    {
      "url": "https://deepwiki.com/user/repo/page2",
      "reason": "HTTP error: 404"
    }
  ],
  "totalPages": 1,
  "totalBytes": 5000,
  "elapsedMs": 950
}
進行状況イベント

ツールを使用すると、クロール中に進行状況イベントを受け取ります。

Fetched https://deepwiki.com/user/repo: 12500 bytes in 450ms (status: 200)
Fetched https://deepwiki.com/user/repo/page1: 8750 bytes in 320ms (status: 200)
Fetched https://deepwiki.com/user/repo/page2: 6200 bytes in 280ms (status: 200)

ローカル開発 - インストール

ローカルでの使用
{
  "mcpServers": {
    "mcp-deepwiki": {
      "command": "node",
      "args": ["./bin/cli.mjs"]
    }
  }
}
ソースから
# Clone the repository
git clone https://github.com/regenrek/deepwiki-mcp.git
cd deepwiki-mcp

# 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": "deepwiki_fetch",
    "params": {
      "url": "https://deepwiki.com/user/repo",
      "mode": "aggregate"
    }
  }'

設定

環境変数
  • DEEPWIKI_MAX_CONCURRENCY:同時リクエストの最大数(デフォルト:5)
  • DEEPWIKI_REQUEST_TIMEOUT:リクエストのタイムアウト(ミリ秒、デフォルト:30000)
  • DEEPWIKI_MAX_RETRIES:失敗したリクエストの最大再試行回数(デフォルト:3)
  • DEEPWIKI_RETRY_DELAY:再試行のバックオフにおける基本遅延(ミリ秒、デフォルト:250)

これらを設定するには、プロジェクトのルートに .env ファイルを作成します。

DEEPWIKI_MAX_CONCURRENCY=10
DEEPWIKI_REQUEST_TIMEOUT=60000
DEEPWIKI_MAX_RETRIES=5
DEEPWIKI_RETRY_DELAY=500

Dockerのデプロイ(未テスト)

Dockerイメージをビルドして実行します。

# Build the image
docker build -t mcp-deepwiki .

# Run with stdio transport (for development)
docker run -it --rm mcp-deepwiki

# Run with HTTP transport (for production)
docker run -d -p 3000:3000 mcp-deepwiki --http --port 3000

# Run with environment variables
docker run -d -p 3000:3000 \
  -e DEEPWIKI_MAX_CONCURRENCY=10 \
  -e DEEPWIKI_REQUEST_TIMEOUT=60000 \
  mcp-deepwiki --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

トラブルシューティング

よくある問題
  1. アクセス拒否:CLIの実行時にEACCESエラーが発生する場合は、バイナリに実行権限があることを確認してください。

    chmod +x ./node_modules/.bin/mcp-deepwiki
    
  2. 接続拒否:ポートが使用可能で、ファイアウォールによってブロックされていないことを確認してください。

    # Check if port is in use
    lsof -i :3000
    
  3. タイムアウトエラー:大規模なリポジトリの場合は、タイムアウトと並行処理数を増やすことを検討してください。

    DEEPWIKI_REQUEST_TIMEOUT=60000 DEEPWIKI_MAX_CONCURRENCY=10 npx mcp-deepwiki
    

貢献

貢献を歓迎します!詳細については、CONTRIBUTING.mdをご覧ください。

ライセンス

MIT

リンク

コース

その他のプロジェクト:

  • AIプロンプト - Cursor AI、Cline、Windsurf、Github Copilot向けに厳選されたAIプロンプト
  • codefetch - 1つの簡単なターミナルコマンドで、コードをLLM向けのMarkdownに変換します
  • aidex AI言語モデルの詳細情報を提供し、開発者がニーズに合ったモデルを選べるようにするCLIツール# tool-starter

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。