🚀 MCP ContentEngineering - 簡易版

このサーバーは、生のMarkdownコンテンツにアクセスするためのシンプルなツールを提供します。生のMarkdownファイルにアクセスしたり、ディレクトリ内の複数のファイルを処理や解析することなく結合したりできます。
🚀 クイックスタート
前提条件
- Node.js 18+ と npm
- Markdownファイルまたは
.md ファイルを含むディレクトリ
- MCP互換クライアント(Claude Desktop、Cursor IDE、または任意のMCPクライアント)
インストールと設定
オプション1: GitHubからnpxを使用する(推奨)
インストールは必要ありません!MCPクライアントを設定するだけです。
Claude Desktop (claude_desktop_config.json) の場合:
{
"mcpServers": {
"mcp-content-engineering": {
"command": "npx",
"args": ["-y", "hendrickcastro/MCPContentEngineering"],
"env": {
"CONTENT_SOURCE_TYPE": "file",
"CONTENT_SOURCE_PATH": "/path/to/your/business-rules.md"
}
}
}
}
Cursor IDEの場合:
{
"mcpServers": {
"mcp-content-engineering": {
"command": "npx",
"args": ["-y", "hendrickcastro/MCPContentEngineering"],
"env": {
"CONTENT_SOURCE_TYPE": "directory",
"CONTENT_SOURCE_PATH": "/path/to/your/docs/"
}
}
}
}
オプション2: ローカル開発用のインストール
- クローンとセットアップ:
git clone https://github.com/hendrickcastro/MCPContentEngineering.git
cd MCPContentEngineering
npm install
npm run build
- コンテンツソースの設定:
コンテンツの設定を含む
.env ファイルを作成します。
CONTENT_SOURCE_TYPE=file
CONTENT_SOURCE_PATH=/docs/architecture-guide.md
CONTENT_SOURCE_TYPE=directory
CONTENT_SOURCE_PATH=/docs/knowledge-base/
- ローカルパスでMCPクライアントを設定:
{
"mcpServers": {
"mcp-content-engineering": {
"command": "node",
"args": ["path/to/MCPContentEngineering/dist/server.js"]
}
}
}
✨ 主な機能
MCPContentEngineeringは、Markdownコンテンツへのアクセスに特化した 1つのツール を提供します。
🔄 生コンテンツアクセス - content_get_raw
処理、解析、インデックス付けを行わずに、生のMarkdownコンテンツを取得します。ビジネスルール、ドキュメント、またはナレッジベースをそのまま取得するのに最適です。
特徴:
- ✅ 単一ファイルモード:正確なファイルコンテンツを返します
- ✅ ディレクトリモード:すべての
.md ファイルを明確な区切りで結合します
- ✅ 再帰的検索:サブディレクトリ内の
.md ファイルを検索します
- ✅ 処理なし:記述された通りのコンテンツを返します
- ✅ メタデータ付き:ファイルサイズ、変更日、ソース情報を含みます
🔧 設定タイプと例
MCPContentEngineeringは、シンプルな設定で2種類のコンテンツソースタイプをサポートしています。
📋 環境変数
| 変数 |
説明 |
値 |
必須 |
CONTENT_SOURCE_TYPE |
コンテンツソースのタイプ |
file | directory |
はい |
CONTENT_SOURCE_PATH |
ファイルまたはディレクトリへのパス |
絶対パスまたは相対パス |
はい |
🔧 設定例
1. 📄 単一のビジネスルールファイル
特定のルールまたはドキュメントファイルにアクセスするのに最適です。
{
"mcpServers": {
"mcp-content-engineering": {
"command": "npx",
"args": ["-y", "hendrickcastro/MCPContentEngineering"],
"env": {
"CONTENT_SOURCE_TYPE": "file",
"CONTENT_SOURCE_PATH": "/docs/business-rules.md"
}
}
}
}
2. 📁 ナレッジベースディレクトリ
ドキュメントディレクトリ内のすべてのMarkdownファイルを結合します。
{
"mcpServers": {
"mcp-content-engineering": {
"command": "npx",
"args": ["-y", "hendrickcastro/MCPContentEngineering"],
"env": {
"CONTENT_SOURCE_TYPE": "directory",
"CONTENT_SOURCE_PATH": "/company/knowledge-base/"
}
}
}
}
3. 🏗️ アーキテクチャドキュメント
包括的なアーキテクチャドキュメントにアクセスします。
{
"mcpServers": {
"mcp-content-engineering": {
"command": "npx",
"args": ["-y", "hendrickcastro/MCPContentEngineering"],
"env": {
"CONTENT_SOURCE_TYPE": "directory",
"CONTENT_SOURCE_PATH": "/docs/architecture/"
}
}
}
}
4. 📐 コーディング標準
開発標準やベストプラクティスにアクセスします。
{
"mcpServers": {
"mcp-content-engineering": {
"command": "npx",
"args": ["-y", "hendrickcastro/MCPContentEngineering"],
"env": {
"CONTENT_SOURCE_TYPE": "file",
"CONTENT_SOURCE_PATH": "/standards/coding-patterns.md"
}
}
}
}
5. 🔄 ローカル開発用設定
ローカル開発とテストに使用します。
{
"mcpServers": {
"mcp-content-engineering": {
"command": "node",
"args": ["./MCPContentEngineering/dist/server.js"],
"env": {
"CONTENT_SOURCE_TYPE": "directory",
"CONTENT_SOURCE_PATH": "./docs"
}
}
}
}
💻 使用例
単一ファイルアクセス
const result = await content_get_raw({});
console.log(result.data.content);
console.log(result.data.source_info);
console.log(result.data.total_files);
ディレクトリ結合
const result = await content_get_raw({});
console.log(result.data.content);
console.log(result.data.source_info);
console.log(result.data.total_files);
レスポンス構造
interface ContentResponse {
content: string;
source_info: string;
total_files: number;
size_bytes: number;
last_modified: string;
}
💡 ユースケース
1. 📚 企業ナレッジベース
会社のドキュメント、ポリシー、手順にアクセスします。
{
"CONTENT_SOURCE_TYPE": "directory",
"CONTENT_SOURCE_PATH": "/company/knowledge-base/"
}
2. 🏗️ アーキテクチャドキュメント
AIモデルにアーキテクチャガイドラインやパターンを提供します。
{
"CONTENT_SOURCE_TYPE": "file",
"CONTENT_SOURCE_PATH": "/docs/architecture-layers-summary.md"
}
3. 📐 コーディング標準
開発標準やベストプラクティスにアクセスします。
{
"CONTENT_SOURCE_TYPE": "directory",
"CONTENT_SOURCE_PATH": "/standards/"
}
4. 🔍 ビジネスルールエンジン
意思決定に必要な特定のビジネスルールを提供します。
{
"CONTENT_SOURCE_TYPE": "file",
"CONTENT_SOURCE_PATH": "/rules/validation-rules.md"
}
5. 📖 プロジェクトドキュメント
包括的なコンテキストのために、すべてのプロジェクトドキュメントを結合します。
{
"CONTENT_SOURCE_TYPE": "directory",
"CONTENT_SOURCE_PATH": "/project/docs/"
}
🚨 一般的な問題のトラブルシューティング
ファイル/ディレクトリが見つからない
- 問題:
File not found または Directory not found
- 解決策:パスが存在し、アクセス可能であることを確認します
- 確認:明確にするために絶対パスを使用します
.md ファイルが見つからない
- 問題:
No .md files found in directory
- 解決策:ディレクトリに
.md ファイルが含まれていることを確認します
- 注意:サブディレクトリを再帰的に検索します
権限エラー
- 問題:ファイルにアクセスする際に
Permission denied
- 解決策:ファイル/ディレクトリに読み取り権限があることを確認します
- 確認:ファイルの所有者とアクセス権限を確認します
設定問題
- 問題:
CONTENT_SOURCE_PATH not configured
- 解決策:必要な両方の環境変数を設定します
- 必須:
CONTENT_SOURCE_TYPE と CONTENT_SOURCE_PATH
🧪 テスト
包括的なテストスイートを実行します。
npm test
テストスイートには以下が含まれます:
- ✅ 単体テスト:さまざまなシナリオで一時ファイルをテストします
- ✅ 実際のテスト:実際のアーキテクチャドキュメントをテストします
- ✅ エラーハンドリング:包括的なエラーケースをカバーします
- ✅ コンテンツ検証:JSONシリアライズとデータ構造の検証を行います
テスト結果:
Test Suites: 2 passed, 2 total
Tests: 11 passed, 11 total
🏗️ アーキテクチャ
プロジェクト構造
MCPContentEngineering/
├── src/
│ ├── __tests__/ # 包括的なテストスイート
│ │ ├── unit.test.ts # 一時ファイルを使用した単体テスト
│ │ └── real.test.ts # 実際のファイルを使用したテスト
│ ├── tools/ # ツールの実装
│ │ ├── contentOperations.ts # 単一のツール: content_get_raw
│ │ ├── types.ts # 型定義
│ │ └── index.ts # ツールのエクスポート
│ ├── server.ts # MCPサーバーのセットアップ
│ ├── tools.ts # ツールの定義とスキーマ
│ └── mcp-server.ts # ツールの再エクスポート
├── dist/ # コンパイルされたJavaScript出力
└── package.json # 依存関係とスクリプト
主要な特徴
- ⚡ ゼロ処理:記述された通りのコンテンツを返します
- 📁 再帰的検索:すべてのサブディレクトリ内の
.md ファイルを検索します
- 🔄 ファイル結合:明確な区切りでインテリジェントに結合します
- 📊 豊富なメタデータ:包括的なファイルとコンテンツ情報を提供します
- 🛡️ エラーハンドリング:堅牢なエラーハンドリングと検証を行います
- 🔧 シンプルな設定:たった2つの環境変数で設定できます
📝 重要な注意事項
- ファイルタイプ:
.md(Markdown)ファイルのみを処理します
- コンテンツの保存:記述された通りのコンテンツを返します - 処理は行いません
- ディレクトリモード:サブディレクトリ内のすべての
.md ファイルを再帰的に検索します
- ファイル区切り:ファイルを結合する際に明確なHTMLコメント区切りを使用します
- エンコーディング:すべてのファイルはUTF-8エンコーディングを想定しています
- セキュリティ:読み取り専用操作のみ - ファイルの変更は行いません
🤝 コントリビュート方法
- リポジトリをフォークします
- 機能ブランチを作成します (
git checkout -b feature/amazing-feature)
- 変更を加え、テストを追加します
- すべてのテストが通過することを確認します (
npm test)
- 変更をコミットします (
git commit -m 'Add amazing feature')
- ブランチにプッシュします (
git push origin feature/amazing-feature)
- プルリクエストを開きます
📄 ライセンス
このプロジェクトは、MITライセンスの下でライセンスされています - 詳細については LICENSE ファイルを参照してください。
🙏 謝辞
🏷️ タグとキーワード
コンテンツ管理: markdown documentation knowledge-base content-access raw-content file-processing text-processing document-management
MCPとAI: model-context-protocol mcp-server mcp-tools ai-tools claude-desktop cursor-ide anthropic llm-integration ai-content intelligent-content
テクノロジー: typescript nodejs npm-package cli-tool file-system markdown-reader content-sdk text-api file-api content-connector
ユースケース: business-rules architecture-docs coding-standards project-docs knowledge-management content-retrieval documentation-access standards-access rule-engine content-automation
🎯 MCPContentEngineeringは、Model Context Protocolを通じて生のMarkdownコンテンツに簡単かつ直接的にアクセスできます。処理のオーバーヘッドなしで、ビジネスルール、ドキュメント、またはナレッジベースにアクセスする必要があるAIモデルに最適です! 🚀