Skip to main content
Glama

メモリバンクMCP

Memory Bankは、チームが構造化されたプロジェクトドキュメントを作成、管理、そしてアクセスするのに役立つMCPサーバーです。プロジェクトの大まかな目標から技術的な詳細、日々の進捗状況まで、プロジェクトの知識のさまざまな側面を捉えた、相互に連携したMarkdownドキュメントのセットを生成・管理します。

特徴

  • AI生成ドキュメント: Gemini APIを活用して包括的なプロジェクトドキュメントを自動的に生成します

  • 構造化知識システム: 6つのコア文書タイプを階層構造で維持します

  • MCP統合: AIアシスタントとのシームレスな統合を実現するモデルコンテキストプロトコルを実装

  • カスタマイズ可能な場所: メモリバンクディレクトリを作成する場所を指定します

  • ドキュメント テンプレート: プロジェクト概要、製品コンテキスト、システム パターンなどの事前定義されたテンプレート。

  • AI支援による更新: ドキュメントを手動で更新するか、AI支援で再生成します

  • 高度なクエリ: コンテキストを考慮した関連性ランキングですべてのドキュメントを検索

Related MCP server: Gigaspec

インストール

# Clone the repository
git clone https://github.com/tuncer-byte/memory-bank-mcp.git
cd memory-bank-mcp

# Install dependencies
npm install

# Create .env file with your Gemini API key (optional)
echo "GEMINI_API_KEY=your_api_key_here" > .env

使用法

開発モード

# Start in development mode
npm run dev

生産モード

# Build the project
npm run build

# Start in production mode
npm run start

MCP構成

Memory Bank を Model Context Protocol (MCP) と統合するには、 mcp.jsonファイルに次の構成を追加します。

{
  "memoryBank": {
    "command": "node",
    "args": ["/path/to/memory-bank-mcp/dist/index.js"],
    "env": {
      "GEMINI_API_KEY": "your_gemini_api_key_here"
    }
  }
}

/path/to/memory-bank-mcp/dist/index.jsを、構築した index.js ファイルへの絶対パスに置き換え、Gemini API キー (該当する場合) を追加します。

例:

{
  "memoryBank": {
    "command": "node",
    "args": ["/Users/username/memory-bank-mcp/dist/index.js"],
    "env": {
      "GEMINI_API_KEY": "AIzaSyXXXXXXXXXXXXXXXXXXXXXXXX"
    }
  }
}

MCPツール

メモリ バンク MCP は、モデル コンテキスト プロトコルを介して次のツールを提供します。

initialize_memory_bank

すべてのドキュメント テンプレートを使用して新しいメモリ バンク構造を作成します。

パラメータ:

  • goal (文字列):プロジェクト目標の説明(10文字以上)

  • geminiApiKey (文字列、オプション): ドキュメント生成用のGemini APIキー

  • location (文字列、オプション):メモリバンクフォルダが作成される絶対パス

例:

await callTool({
  name: "initialize_memory_bank",
  arguments: {
    goal: "Building a self-documenting AI-powered software development assistant",
    location: "/Users/username/Documents/projects/ai-assistant"
  }
});

update_document

メモリ バンク内の特定のドキュメントを更新します。

パラメータ:

  • documentType (列挙型): 次のいずれか: projectbriefproductContextsystemPatternstechContextactiveContextprogress

  • content (文字列、オプション): ドキュメントの新しいコンテンツ

  • regenerate (boolean, default: false): AIを使用してドキュメントを再生成するかどうか

例:

await callTool({
  name: "update_document",
  arguments: {
    documentType: "projectbrief",
    content: "# Project Brief\n\n## Purpose\nTo develop an advanced and user-friendly AI..."
  }
});

query_memory_bank

コンテキストに応じた関連性ランキングを使用して、すべてのドキュメントを検索します。

パラメータ:

  • query (文字列): 検索クエリ (最小 5 文字)

例:

await callTool({
  name: "query_memory_bank",
  arguments: {
    query: "system architecture components"
  }
});

export_memory_bank

すべてのメモリ バンク ドキュメントをエクスポートします。

パラメータ:

  • format (列挙型、デフォルト: "folder"): エクスポート形式。"json" または "folder" のいずれか

  • outputPath (文字列、オプション): エクスポートのカスタム出力パス

例:

await callTool({
  name: "export_memory_bank",
  arguments: {
    format: "json",
    outputPath: "/Users/username/Documents/exports"
  }
});

ドキュメントの種類

メモリ バンクは、プロジェクトの知識を 6 つのコア ドキュメント タイプに整理します。

  1. プロジェクト概要projectbrief.md ):プロジェクトの目的、範囲、ビジョンを定義する中核文書

  2. 製品コンテキストproductContext.md ):ユーザーの視点から製品の機能を文書化します。

  3. システムパターンsystemPatterns.md ):システムアーキテクチャとコンポーネントの関係を確立します

  4. 技術コンテキストtechContext.md ):テクノロジースタックと実装の詳細を指定します

  5. アクティブコンテキストactiveContext.md ):現在のタスク、未解決の問題、開発の焦点を追跡します。

  6. 進捗状況progress.md ):完了した作業、マイルストーン、プロジェクトの履歴を文書化します。

ライセンス

マサチューセッツ工科大学

Available Tools

5 tools
create_cursor_rulesD
ParametersJSON Schema
NameRequiredDescriptionDefault
locationYesAbsolute path where cursor-rules will be created
projectPurposeYesProje amacını detaylı bir şekilde açıklayan bir metin giriniz. Bu metin projenin temel hedeflerini ve kapsamını belirleyecektir.

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_memory_bankD
ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoExport formatfolder
outputPathNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

initialize_memory_bankD
ParametersJSON Schema
NameRequiredDescriptionDefault
geminiApiKeyNoGemini API key (optional)
goalYes
locationYesAbsolute path where memory-bank folder will be created

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_memory_bankD
ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_documentD
ParametersJSON Schema
NameRequiredDescriptionDefault
contentNo
documentTypeYes
regenerateNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv1.0.0
    • First observedcreate_cursor_rules
    • First observedexport_memory_bank
    • First observedinitialize_memory_bank
    • First observedquery_memory_bank
    • First observedupdate_document

TDQS

C2/5.0

Scored across 5 tools

Disambiguation4/5

The tools have distinct purposes based on their names: creating rules, exporting, initializing, querying, and updating documents. However, without descriptions, there is some ambiguity about the exact boundaries between 'create_cursor_rules' and 'update_document', or whether 'initialize_memory_bank' overlaps with other setup tasks. Overall, they appear mostly distinct but could benefit from clearer differentiation.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with snake_case, such as 'create_cursor_rules', 'export_memory_bank', and 'query_memory_bank'. There are no deviations in naming style or convention, making the set predictable and easy to parse for an agent.

Tool Count5/5

With 5 tools, the count is well-scoped for a memory bank server, covering core operations like initialization, querying, updating, exporting, and rule creation. Each tool seems to earn its place without being overly sparse or bloated, fitting typical expectations for such a domain.

Completeness3/5

The tools cover key aspects like initialization, querying, updating, and exporting, but there are notable gaps. For example, there is no tool for deleting documents or rules, and operations like listing or searching memory contents are missing. This could lead to agent workarounds or failures in full lifecycle management.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers