mcpField
E
embedbase

embedbase

ローカル
github.com/CloudCorpRecordsデータベース02 週間前に更新

embedbase について

embedbaseは、Chroma互換のHTTPサービスでベクターコレクションとドキュメントを扱うMCPサーバー兼コマンドラインツールです。コレクション管理、ドキュメント取得、近傍検索に対応します。

主な機能

  1. 01コレクションの作成と管理
  2. 02ドキュメントの追加・更新・削除
  3. 03近傍検索によるドキュメント検索
  4. 04IDまたは条件によるドキュメント取得
  5. 05レコードの一覧・確認・件数取得

活用シーン

  1. 01クエリテキストでドキュメントを検索
  2. 02Chromaのレコードを追加・管理
  3. 03コレクションのメタデータと件数を確認

MCP 対応

コレクション管理や、ドキュメントの検索・取得・更新・削除を行うMCPツールを提供します。v2 REST API経由でChroma互換サービスに接続します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-embedbase": {
"command": "npx",
"args": [
"-y",
"@reneturcios/embedbase"
]
}
}
}
起動コマンドnpx -y @reneturcios/embedbase

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@reneturcios/embedbase0.1.0
ocighcr.io/cloudcorprecords/embedbase:0.1.0

ツール

12

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
limitintegerいいえ返すコレクションの最大数。
offsetintegerいいえ結果を返す前にスキップするコレクション数。

詳細

embedbase

embedbase を使うと、エージェントも、ターミナルを使うあなたも、ベクターコレクションを手軽に扱えます。コレクションを作成し、ドキュメントを追加して、最も近い一致を検索できます。Chroma 互換の HTTP サービスと v2 REST API 経由で通信するため、埋め込みストアは別プロセスとして動作し、このツールはテストしやすい薄いクライアントのままです。

CHROMA_URL または EMBEDBASE_URL を指定して、稼働中のサービスに接続します(どちらも指定しない場合は、http://localhost:8000 を使用します)。MCP と CLI の各レイヤーでは、コレクションを名前で指定します。クライアントは内部で各名前をサーバー ID に解決してから、REST API の仕様に従って ID スコープのドキュメントエンドポイントを呼び出します。

インストール

npx @reneturcios/embedbase list

または、コンテナイメージを実行します。

docker run -i ghcr.io/cloudcorprecords/embedbase

コンテナはデフォルトで MCP サーバーとして起動します(下記を参照)。CLI として使うには、CLI 引数を渡してください。

CLI

# List collections (pagination is optional)
embedbase list --limit 20 --offset 0

# Inspect one collection, or count its records
embedbase info notes
embedbase count notes

# Create a collection
embedbase create notes

# Start the MCP server
embedbase mcp

embedbase --version

終了コード:成功時は 0、サービス呼び出しに失敗した場合(エラーには HTTP ステータスが含まれます)は 1、使用方法に誤りがある場合は 2 です。

MCP サーバー

1 つの実行ファイルで、どちらの用途にも対応します。mcp サブコマンドを実行すると、stdio MCP サーバーが起動します。

npx -y @reneturcios/embedbase mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "embedbase": {
      "command": "npx",
      "args": ["-y", "@reneturcios/embedbase", "mcp"],
      "env": { "CHROMA_URL": "http://localhost:8000" }
    }
  }
}
ツール

特に記載がない限り、すべてのツールで collection_name(文字列)が必要です。省略可能なパラメーターは、指定されない場合、リクエストから省略されます。

ツール必須省略可能目的
chroma_list_collections—limit、offset(整数)ページネーションを使ってコレクションを一覧表示します。
chroma_create_collectioncollection_namemetadata(オブジェクト)、embedding_function_name(文字列)コレクションを作成します。
chroma_peek_collectioncollection_namelimit(整数)コレクション内のドキュメントをプレビューします。
chroma_get_collection_infocollection_name—コレクションのメタデータと設定を取得します。
chroma_get_collection_countcollection_name—コレクション内のレコード数を取得します。
chroma_modify_collectioncollection_namenew_name、new_metadataコレクションの名前を変更するか、タグを付け直します。
chroma_delete_collectioncollection_name—コレクションとそのレコードを削除します。
chroma_add_documentscollection_name、documents(文字列配列)metadatas、idsドキュメントを追加します。省略された場合、ID は決定論的に生成されます。
chroma_query_documentscollection_name、query_texts(文字列配列)n_results、where、where_document、include最近傍検索を実行します。
chroma_get_documentscollection_nameids、where、limit、offset、includeID またはフィルターを使ってドキュメントを取得します。
chroma_update_documentscollection_name、idsdocuments、metadatas、embeddings既存のレコードを更新します。
chroma_delete_documentscollection_nameids、whereID またはフィルターを使ってレコードを削除します。

リクエストは v2 のテナント/データベースパス(/api/v2/tenants/default_tenant/databases/default_database/collections...)に送信されます。サービスエラーは HTTP ステータスを含むツールエラーとして返され、結果が作り出されることはありません。

開発

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, fake fetch only, no live service
npm run dev     # run the CLI from source via tsx

クライアントのコアは、差し替え可能な fetch 関数を介して実行されます。テストスイートではこの関数を使って、URL の構築、リクエスト本文、ID の解決、件数の取り出し、エラーの通知をテストします。これらのテストは、サーバーを起動せずに実行できます。

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

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

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