mcp-lance-db: A LanceDB MCP server について
mcp-lance-dbは、組み込み型ベクトルデータベースLanceDBを使って、意味に基づくメモリの保存と検索を行うMCPサーバーの例です。テキストを保存し、関連する内容を意味から探すアプリケーション向けです。
主な機能
- 01テキストをベクトルメモリとして保存
- 02意味の類似度でメモリを検索
- 03検索結果数の上限を指定
- 04リソース変更をクライアントに通知
活用シーン
- 01テキストを保存し、後から意味で検索
- 02自然言語のクエリに関連するメモリを検索
MCP 対応
MCPクライアントにadd-memoryとsearch-memoriesのツールを公開します。検索結果は意味の類似度順に並び、リソース変更もクライアントに通知します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-lance-db:LanceDB MCP サーバー
Model Context Protocol(MCP)は、LLM アプリケーションと外部のデータソースやツールをシームレスに統合するオープンなプロトコルです。AI を活用した IDE の構築、チャットインターフェースの拡張、カスタム AI ワークフローの作成など、MCP は LLM を必要なコンテキストに接続するための標準化された方法を提供します。
このリポジトリは、組み込み型ベクトルデータベースである LanceDB 用の MCP サーバーを作成する方法の例です。
概要
LanceDB ベクトルデータベースにメモリを保存し、取得するための基本的な Model Context Protocol サーバーです。 後で取得できるように、ベクトル埋め込みとともにテキストを保存するセマンティックメモリレイヤーとして機能します。
コンポーネント
ツール
このサーバーは 2 つのツールを実装しています:
-
add-memory:ベクトルデータベースに新しいメモリを追加します
- 必須の文字列引数として「content」を受け取ります
- 後で取得できるように、ベクトル埋め込みとともにテキストを保存します
-
search-memories:意味的に類似したメモリを取得します
- 必須の文字列引数として「query」を受け取ります
- 結果の件数を指定するオプションの「limit」パラメーターがあります(デフォルト:5)
- クエリとの意味的な類似度順にメモリを返します
- サーバーの状態を更新し、リソースの変更をクライアントに通知します
設定
サーバーでは次の設定を使用します:
- データベースのパス:"./lancedb"
- コレクション名:"memories"
- 埋め込みプロバイダー:"sentence-transformers"
- モデル:"BAAI/bge-small-en-v1.5"
- デバイス:"cpu"
- 類似度のしきい値:0.7(距離範囲の上限)
クイックスタート
Claude Desktop
MacOS の場合:~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows の場合:%APPDATA%/Claude/claude_desktop_config.json
{
"lancedb": {
"command": "uvx",
"args": [
"mcp-lance-db"
]
}
}
開発
ビルドと公開
パッケージを配布できるように準備するには:
- 依存関係を同期し、ロックファイルを更新します:
uv sync
- パッケージの配布物をビルドします:
uv build
これにより、dist/ ディレクトリにソース配布物と wheel 配布物が作成されます。
- PyPI に公開します:
uv publish
注:環境変数またはコマンドフラグを使用して PyPI の認証情報を設定する必要があります:
- トークン:
--tokenまたはUV_PUBLISH_TOKEN - またはユーザー名/パスワード:
--username/UV_PUBLISH_USERNAMEおよび--password/UV_PUBLISH_PASSWORD
デバッグ
MCP サーバーは標準入出力経由で実行されるため、デバッグが難しい場合があります。最適なデバッグ環境を利用するため、MCP Inspector の使用を強くおすすめします。
次のコマンドを使って、npm 経由で MCP Inspector を起動できます:
npx @modelcontextprotocol/inspector uv --directory $(PWD) run mcp-lance-db
起動すると、Inspector に URL が表示されます。その URL にブラウザーからアクセスして、デバッグを開始できます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。