mcpField
M
MCP Memory Server

MCP Memory Server

ローカル
github.com/bqx619メモリ・ナレッジ077 週間前に更新

MCP Memory Server について

MCP Memory Serverは、コンテキスト情報を保存、検索、管理する開発中のオープンソースGoプロジェクトです。Upstash Vectorを使い、AIアシスタント向けのHTTP APIを提供します。

主な機能

  1. 01埋め込みを自動生成して記憶を保存
  2. 02記憶のセマンティック検索
  3. 03IDによる記憶の削除

活用シーン

  1. 01後で検索するコンテキスト情報の保存
  2. 02自然言語クエリによる関連記憶の検索

MCP 対応

MCP仕様を実装し、HTTP APIを通じてMCPクライアントに記憶の保存、検索、削除機能を公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP Memory Server

概要

MCP Memory Server は、Golang と Upstash のベクトルデータベースを使用したメモリの保存、取得、管理システムを提供する、現在開発中のオープンソースプロジェクトです。AI アシスタントがコンテキスト情報を保存および取得するための、シンプルな HTTP API を提供します。

このプロジェクトは MCP(Model Control Protocol)仕様を実装しており、AI モデルが標準化された方法で外部ツールとやり取りできるようにします。

機能

現在、このプロジェクトは開発中で、次の 3 つの主要な API メソッドが実装されています。

  1. メモリの保存 - 自動ベクトル埋め込みを使用して情報を保存します
  2. メモリの取得 - 自然言語のクエリを使用して関連情報をセマンティック検索します
  3. メモリの削除 - ID を指定して特定のメモリを削除します

技術スタック

  • バックエンド:Go(Golang)
  • ベクトルデータベース:現在、Upstash Vector をサポートしています
  • トランスポート:HTTP API

はじめに

インストール
  1. リポジトリをクローンします

    git clone https://github.com/bqx619/mcp-memory-server.git
    cd mcp-memory-server
    
  2. 依存関係をインストールします

    go mod download
    
  3. 次の変数を含む .env ファイルを作成します。

    VECTOR_PROVIDER=upstash
    VECTOR_URL=your-upstash-vector-url
    VECTOR_TOKEN=your-upstash-vector-token
    HTTP_PORT=8080
    
サーバーの起動
go run .

サーバーは設定されたポート(デフォルト:8080)で起動します。

API リファレンス

メモリの保存

ベクトルデータベースに新しい情報を保存します。

エンドポイント:POST /tools/store_memory リクエストボディ:

{
  "content": "Memory content to store"
}

レスポンス:

{
  "content": "Successfully stored memory with ID: abcd1234"
}
メモリの取得

クエリに基づいて関連情報を見つけるため、セマンティック検索を実行します。

エンドポイント:POST /tools/retrieve_memory リクエストボディ:

{
  "query": "search term",
  "n_results": 5
}

レスポンス:

{
  "content": "Found the following memories:
Memory 1:
Content: The first relevant memory
Id: abcd1234
Relevance Score: 0.92
Memory 2:
Content: Another related memory
Id: efgh5678
Relevance Score: 0.85
..."
}
メモリの削除

ID を指定して特定のメモリを削除します。

エンドポイント:POST /tools/delete_memory リクエストボディ:

{
  "memory_id": "abcd1234"
}

レスポンス:

{
  "content": "Successfully deleted memory with ID: abcd1234"
}

開発ロードマップ

  • 認証の追加
  • メモリのタグ付けと分類の実装
  • 対応するベクトルデータベースプロバイダーの拡充
  • 検索機能の強化
  • メモリの有効期限と TTL 機能の追加
  • ...

コントリビューション

このプロジェクトは現在開発中のため、コントリビューションを歓迎します。お気軽にイシューやプルリクエストを送信してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。