🚀 Cursor Buddy MCP
🤖 AIエージェントをコンテキストを認識し一貫性を保つようにする
Cursor Buddy MCPは、AIアシスタントを、プロジェクトの標準、規約、履歴を理解するコンテキスト認識型のコーディングパートナーに変えます。
AIアシスタントを、プロジェクトの標準、規約、履歴を理解するコンテキスト認識型のコーディングパートナーに変えます。
🚀 クイックスタート • 📚 ドキュメント • 🔧 利用可能なツール • 💡 使用例
🎯 なぜCursor Buddy MCPなのか?
🧠 コンテキスト認識型AI
AIアシスタントがコーディング標準、アーキテクチャパターン、プロジェクト規約を即座に把握します。
📚 集中管理された知識
すべてのプロジェクトドキュメントとガイドラインが検索可能な1つの場所に集まります。
✅ 進捗追跡
自動的なTODO管理と実装履歴の追跡が可能です。
|
🔄 リアルタイム更新
ファイル監視により、AIが常に最新の情報を持つことが保証されます。
🚀 ゼロセットアップ摩擦
即座にMCPと統合できるDockerコンテナが用意されています。
🔍 インテリジェント検索
すべてのプロジェクトコンテキストにわたって、高速で関連性の高い検索結果を提供します。
|
📋 目次
- 🎯 なぜCursor Buddy MCPなのか?
- 🏗️ アーキテクチャ
- 🚀 クイックスタート
- 🔧 利用可能なツール
- 💡 使用例
- 📚 ドキュメント
- 📋 ルールファイル
- 📖 知識ファイル
- ✅ TODOファイル
- 🗄️ データベースファイル
- 💎 ベストプラクティス
- 🔧 高度な機能
- 🤝 コントリビューション
🏗️ アーキテクチャ
graph TB
A[AI Assistant] --> B[MCP Client]
B --> C[Cursor Buddy MCP Server]
C --> D[.buddy Directory]
D --> E[Rules]
D --> F[Knowledge]
D --> G[Todos]
D --> H[Database]
D --> I[History]
D --> J[Backups]
C --> K[Search Engine]
C --> L[File Monitor]
C --> M[Backup Manager]
style A fill:#e1f5fe
style C fill:#f3e5f5
style K fill:#e8f5e8
Model Context Protocol (MCP) をベースに、mark3labs/mcp-go のGo SDKを使用して構築されています。JSON-RPC 2.0を使用してstdin/stdoutを介して通信するため、Claude DesktopなどのMCPクライアントと互換性があります。
🎨 機能
| 属性 |
詳情 |
| 🔧 ツール |
プロジェクトコンテキストを管理するための6つのインタラクティブなツール |
| 📊 リソース |
完全なプロジェクト状態を持つプロジェクトコンテキストリソース |
| 🔄 Stdio Transport |
標準入出力通信 |
| ⚡ リアルタイム更新 |
自動リロード機能を備えたファイル監視 |
| 🔍 全文検索 |
すべてのコンテンツにわたるBleveベースの検索 |
| 💾 自動バックアップ |
ロールバック機能を備えた安全なファイル変更 |
🚀 クイックスタート
1️⃣ GitHub Registryからプルする
docker pull ghcr.io/omar-haris/cursor-buddy-mcp:latest
2️⃣ Cursorを設定する
.cursor/mcp.json に追加します。
⚠️ 重要提示
/path/to/your/project/ を実際のプロジェクトディレクトリのパスに置き換えてください!
{
"mcpServers": {
"cursor-buddy-mcp": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/path/to/your/project/.buddy:/home/buddy/.buddy",
"-e", "BUDDY_PATH=/home/buddy/.buddy",
"ghcr.io/omar-haris/cursor-buddy-mcp:latest"
]
}
}
}
例:
- Linux/macOS:
"/home/user/myproject/.buddy:/home/buddy/.buddy"
- Windows:
"C:/Users/User/myproject/.buddy:/home/buddy/.buddy"
- カレントディレクトリ:
"${PWD}/.buddy:/home/buddy/.buddy"
💡 プロジェクトパスを見つける方法:
pwd
3️⃣ .buddy構造を作成する
プロジェクトディレクトリに移動して実行します。
mkdir -p .buddy/{rules,knowledge,todos,database,history,backups}
📁 これにより以下の構造が作成されます:
your-project/
├── .buddy/
│ ├── rules/
│ ├── knowledge/
│ ├── todos/
│ ├── database/
│ ├── history/
│ └── backups/
4️⃣ コンテンツを追加する
以下の ドキュメント に従って、.buddy/ フォルダにファイルを作成します。
🔧 利用可能なツール
📋 buddy_get_rules
コーディング標準とガイドラインを取得します。
- カテゴリまたは優先度でフィルタリングできます。
- 複数のルールタイプをサポートしています。
🔍 buddy_search_knowledge
プロジェクトドキュメントを検索します。
- すべての知識にわたる全文検索が可能です。
- カテゴリとタグによるフィルタリングができます。
✅ buddy_manage_todos
タスクを一覧表示/更新し、進捗を追跡します。
- 機能ベースの組織化が可能です。
- 進捗追跡と完了管理ができます。
|
🗄️ buddy_get_database_info
スキーマ情報を取得し、クエリを検証します。
- テーブルスキーマ情報を提供します。
- クエリの検証と例を提供します。
📚 buddy_history
実装の変更を追跡し、履歴を検索します。
- 実装のタイムラインを表示します。
- 機能開発の追跡ができます。
💾 buddy_backup
ファイルのバックアップを作成し、管理します。
- 自動バックアップの作成が可能です。
- 安全なファイル変更をサポートします。
|
💡 使用例
AIアシスタントに以下のような質問をしてください。
| 🎯 カテゴリ |
💬 質問例 |
| 📋 コーディング標準 |
"エラーハンドリングに関するコーディング標準は何ですか?" |
| ✅ プロジェクト進捗 |
"認証機能の現在のTODOを表示してください" |
| 📖 ドキュメント |
"ユーザーエンドポイントに関するAPIドキュメントを検索してください" |
| 🗄️ データベース |
"ユーザーテーブルのデータベーススキーマは何ですか?" |
| 📚 履歴 |
"先月、JWT認証はどのように実装されましたか?" |
| 🔧 アーキテクチャ |
"この機能にはどのようなデザインパターンを使うべきですか?" |
📚 ドキュメント
📋 ルールファイル
場所: .buddy/rules/
目的: コーディング標準、アーキテクチャパターン、ガイドラインを定義します。
📝 形式要件
- ✅ Markdown形式 (
.md) を使用します。
- ✅ メタデータとして
category と priority を含めます。
- ✅ 明確なセクションとサブセクションで整理します。
🔧 例: コーディング標準
コーディング標準の例を展開するにはクリック
# Coding Standards
- category: coding
- priority: critical
## Overview
Core coding standards and best practices for the project.
## Go-Specific Standards
- Follow Go naming conventions (camelCase, PascalCase)
- Use `gofmt` for code formatting
- Handle errors explicitly, don't ignore them
- Use interfaces for abstraction
## Error Handling
- Always check and handle errors
- Use structured error types
- Wrap errors with context using `fmt.Errorf`
- Return meaningful error messages
## Testing
- Write unit tests for all public functions
- Use table-driven tests for multiple test cases
- Achieve minimum 80% code coverage
🏗️ 例: アーキテクチャパターン
アーキテクチャパターンの例を展開するにはクリック
# Architecture Patterns
- category: architecture
- priority: critical
## Design Principles
- **Single Responsibility**: Each component has one reason to change
- **Dependency Inversion**: Depend on abstractions, not concretions
## Recommended Patterns
### Repository Pattern
- Encapsulate data access logic
- Provide consistent interface for data operations
- Enable easy testing with mock implementations
### Layered Architecture
┌─────────────────────┐
│ Presentation │ ← HTTP handlers, CLI
├─────────────────────┤
│ Business Logic │ ← Domain models, use cases
├─────────────────────┤
│ Data Access │ ← Repositories, databases
└─────────────────────┘
📖 知識ファイル
場所: .buddy/knowledge/
目的: プロジェクトドキュメント、API仕様、技術情報を保存します。
📝 形式要件
- ✅ Markdown形式 (
.md) を使用します。
- ✅ メタデータとして
category とオプションの tags を含めます。
- ✅ 明確な見出しと例で構成します。
🌐 例: APIドキュメント
APIドキュメントの例を展開するにはクリック
# API Documentation
- category: architecture
- tags: api, rest, authentication
## Authentication Endpoints
### POST /auth/login
**Request:**
```json
{
"email": "user@example.com",
"password": "secure_password"
}
Response:
{
"token": "jwt_token_here",
"user": {
"id": 123,
"email": "user@example.com",
"role": "user"
}
}
GET /auth/me
Headers: Authorization: Bearer <token>
Response:
{
"user": {
"id": 123,
"email": "user@example.com",
"role": "user"
}
}
Error Handling
All endpoints return errors in this format:
{
"error": "error_code",
"message": "Human readable message"
}
</details>
---
### ✅ TODOファイル
> **場所:** `.buddy/todos/`
> **目的:** タスク、機能、プロジェクトの進捗を追跡します。
#### 📝 形式要件
- ✅ Markdown形式 (`.md`) を使用します。
- ✅ チェックボックス構文 `- [ ]` (未完了) または `- [x]` (完了) を使用します。
- ✅ 関連するタスクを明確な見出しの下にグループ化します。
- ✅ 各タスクにコンテキストと詳細を含めます。
#### 🔐 例: 機能開発
<details>
<summary>機能開発の例を展開するにはクリック</summary>
```markdown
# Authentication Feature
## Backend Implementation
- [x] Set up JWT library
- [x] Create user model and database migration
- [x] Implement password hashing with bcrypt
- [ ] Create login endpoint
- [ ] Create registration endpoint
- [ ] Add middleware for protected routes
- [ ] Write unit tests for auth service
- [ ] Add integration tests for auth endpoints
## Frontend Implementation
- [ ] Create login form component
- [ ] Create registration form component
- [ ] Implement JWT token storage
- [ ] Add authentication context
- [ ] Create protected route wrapper
- [ ] Handle token refresh logic
## Security & Testing
- [ ] Add rate limiting to auth endpoints
- [ ] Implement account lockout after failed attempts
- [ ] Add password strength validation
- [ ] Security audit of auth implementation
- [ ] Load testing for auth endpoints
🗄️ データベースファイル
場所: .buddy/database/
目的: SQLスキーマ定義、マイグレーション、クエリ例を保存します。
📝 例: スキーマ定義
データベーススキーマの例を展開するにはクリック
CREATE TABLE users (
id SERIAL PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
password_hash VARCHAR(255) NOT NULL,
role VARCHAR(50) DEFAULT 'user',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE sessions (
id SERIAL PRIMARY KEY,
user_id INTEGER REFERENCES users(id) ON DELETE CASCADE,
token_hash VARCHAR(255) UNIQUE NOT NULL,
expires_at TIMESTAMP NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE INDEX idx_users_email ON users(email);
CREATE INDEX idx_sessions_token_hash ON sessions(token_hash);
CREATE INDEX idx_sessions_expires_at ON sessions(expires_at);
💎 ベストプラクティス
| 🎯 プラクティス |
📝 説明 |
| 🔍 具体的にする |
具体的な例とコードスニペットを含めます。 |
| 🔄 最新の状態を保つ |
定期的にファイルをレビューし、更新します。 |
| 📐 一貫したフォーマット |
同様のファイルで同じ構造を使用します。 |
| 💡 コンテキストを含める |
ルールやパターンが存在する理由の説明を追加します。 |
| 🔗 情報をリンクする |
関連するファイルや外部ドキュメントを参照します。 |
| 📊 バージョン管理 |
.buddy フォルダをバージョン管理に含めます。 |
| 🔄 定期的なレビュー |
定期的に知識ベースのレビューを行います。 |
🔧 高度な機能
🔍 ファイル監視
サーバーが .buddy ディレクトリの変更を自動的に監視し、コンテンツをリアルタイムで再読み込みします。
🔎 検索統合
Bleve全文検索を使用して、すべてのプロジェクトコンテキストにわたって高速で関連性の高い検索結果を提供します。
💾 バックアップ管理
重要なファイルの変更前に自動的にバックアップを作成します。
🏗️ 拡張可能なアーキテクチャ
高性能で、新しいツールや機能を簡単に拡張できるようにGoで構築されています。
🤝 コントリビューション
コントリビューションを歓迎します!以下の方法でお手伝いいただけます。
- 🐛 問題の報告: バグを見つけた場合は、問題を開く
- 💡 機能の提案: アイデアがある場合は、ディスカッションを開始する
- 🔧 PRの提出: コードを書く準備ができたら、フォークして開発し、プルリクエストを提出する
- 📚 ドキュメントの改善: ドキュメントをより良くするお手伝いをする
🎉 始める準備はできましたか?
これで、AIアシスタントがコードベースに関する深いコンテキストを持ち、一貫性のある的確な回答を提供できるようになります。
⬆️ ページトップに戻る
開発者による、開発者のために愛情を込めて作られました