Scrapbox MCP Server

# Scrapbox MCP プラグイン ## 概要 このMCPプラグインは、Scrapboxの任意のページのURLを指定すると、そのページの内容を取得する機能を提供します。Model Context Protocol (MCP)を使用して、AIアシスタントがScrapboxのコンテンツを直接参照できるようにします。 ## 機能 - Scrapbox URLからページコンテンツを取得 - ページのタイトル、本文、リンク等の情報を構造化されたデータとして提供 - エラーハンドリングとログ記録 ## 使用するAPI - Scrapbox公開API - エンドポイント: `https://scrapbox.io/api/pages/{projectName}/{pageTitle}` - 認証: 公開ページの場合は不要 ## 技術スタック - TypeScript/Node.js - MCP SDK - axios (HTTPリクエスト用) ## 実装計画 ### ツール 1. `get_page_content`: Scrapboxページの内容を取得するツール - 入力: Scrapbox URL - 出力: ページの内容(タイトル、本文、リンク等) ### 実装ステップ 1. プロジェクトのブートストラップ 2. Scrapbox APIとの通信機能の実装 - URLからプロジェクト名とページ名を抽出する関数 - APIリクエストを行う関数 3. MCPツールの実装 4. エラーハンドリングとログ記録の追加 5. 設定ファイルの作成 ### エラーハンドリング - 無効なURL形式 - 存在しないページ - APIレスポンスエラー - ネットワークエラー ## 使用方法 ### インストール ```bash # MCPプラグインのインストール npm install npm run build ``` ### 設定 MCP設定ファイルに以下を追加: ```json { "mcpServers": { "scrapbox": { "command": "node", "args": ["path/to/build/index.js"], "disabled": false, "autoApprove": [] } } } ``` ### 使用例 ``` ユーザー: Scrapboxの「コルブの経験学習モデル」ページの内容を教えて アシスタント: [MCPツールを使用してScrapboxページの内容を取得] コルブの経験学習モデルについての情報: ... ``` ## テスト計画 1. 有効なScrapbox URLでのテスト 2. 無効なURLでのテスト 3. 存在しないページでのテスト 4. 大きなページでのテスト(パフォーマンス) ## ライセンス MIT