# 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