mcpField
T
Typesense MCP Server

Typesense MCP Server

ローカル
github.com/avarant検索1011 週間前に更新

Typesense MCP Server について

Typesense MCP Serverは、MCPクライアントにTypesenseの操作機能を提供します。コレクションとドキュメントの管理、キーワード検索とベクトル検索に対応し、STDIO、SSE、Streamable HTTPの各トランスポートを利用できます。

主な機能

  1. 01サーバーの状態確認とコレクション一覧
  2. 02コレクションの作成・確認・エクスポート・削除
  3. 03ドキュメントの作成・更新・インポート・削除
  4. 04キーワード検索とベクトル検索
  5. 05STDIO、SSE、Streamable HTTPの利用

活用シーン

  1. 01Typesenseのコレクションを確認・管理
  2. 02インデックス対象のドキュメントをインポート・更新
  3. 03テキストやベクトルでコレクションを検索

MCP 対応

Typesenseの状態確認、コレクション、ドキュメント、検索機能をツールとしてMCPクライアントに公開します。STDIO、SSE、Streamable HTTPに対応します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

Typesense MCP サーバー

Typesense と連携する Model Context Protocol(MCP)サーバーです。

インストール

uvをインストールします。

Python 3.11 以降が必要です。

Mac では、homebrewを使ってインストールできます。

brew install uv

パッケージをクローンします。

git clone [email protected]:avarant/typesense-mcp-server.git ~/typesense-mcp-server

サーバーを MCP クライアントの設定に追加します。ほとんどのクライアント(~/.cursor/mcp.json の Cursor、~/Library/Application Support/Claude/claude_desktop_config.json の Claude Desktop、Windsurf、Zed、VS Code など)は、同じ mcpServers 形式に対応しています。

{
  "mcpServers": {
    "typesense": {
      "command": "uv",
      "args": ["--directory", "~/typesense-mcp-server", "run", "mcp", "run", "main.py"],
      "env": {
        "TYPESENSE_HOST": "",
        "TYPESENSE_PORT": "",
        "TYPESENSE_PROTOCOL": "",
        "TYPESENSE_API_KEY": ""
      }
    }
  }
}

設定ファイルの正確な場所については、お使いのクライアントの MCP ドキュメントを参照してください。

トランスポート

このサーバーは 3 種類の MCP トランスポートに対応しています。STDIO がデフォルトで、ほとんどのデスクトップクライアント(Claude Desktop、Cursor など)で使用されています。リモートクライアントやウェブ UI では、従来の SSE トランスポートまたは新しい Streamable HTTP トランスポートを使って、HTTP サーバーとして実行できます。

STDIO(デフォルト)
TYPESENSE_API_KEY=xyz uv run python main.py
Streamable HTTP(ウェブクライアントに推奨)

/mcp の単一エンドポイントを使用します。llama.cpp のウェブチャットのようなブラウザベースのクライアントで動作します。MCP_TRANSPORT=streamable-http を設定するか、--http を渡します。

TYPESENSE_API_KEY=xyz \
MCP_TRANSPORT=streamable-http \
MCP_STATELESS_HTTP=true \
MCP_CORS_ORIGINS='*' \
uv run python main.py
  • リクエストをまたいで MCP セッションを維持しないクライアントには、ステートレスモード(MCP_STATELESS_HTTP=true)が必要です。
  • ブラウザクライアントでは CORS を有効にする必要があります(MCP_CORS_ORIGINS)。本番環境では * ではなく、http://localhost:8080 のように特定のオリジンを指定してください。
SSE(従来方式)

イベントストリーム用の GET /sse と、JSON-RPC 用の POST /messages/ の 2 つのエンドポイントがあります。MCP_TRANSPORT=sse を設定するか、--sse を渡します。

TYPESENSE_API_KEY=xyz MCP_TRANSPORT=sse uv run python main.py
設定
環境変数デフォルト説明
MCP_TRANSPORTstdiostdio、sse、または streamable-http
MCP_HOST0.0.0.0HTTP トランスポートのバインドアドレス
MCP_PORT8000HTTP トランスポートのバインドポート
MCP_STATELESS_HTTPfalseHTTP トランスポートのステートレスモード(一部のウェブクライアントで必要)
MCP_CORS_ORIGINS(empty)許可するオリジンをカンマ区切りで指定します。空の場合は CORS が無効になります。* = すべて。

利用可能なツール

Typesense MCP サーバーでは、次のツールを利用できます。

サーバー管理
  • check_typesense_health - 設定された Typesense サーバーのヘルスステータスを確認します
  • list_collections - Typesense サーバー内のすべてのコレクションの一覧を取得します
コレクション管理
  • describe_collection - 特定のコレクションのスキーマとメタデータを取得します
  • export_collection - 特定のコレクションからすべてのドキュメントをエクスポートします
  • create_collection - 指定されたスキーマで新しいコレクションを作成します
  • delete_collection - 特定のコレクションを削除します
  • truncate_collection - スキーマを保持したまま、すべてのドキュメントを削除してコレクションを空にします
ドキュメント操作
  • create_document - 特定のコレクションに新しいドキュメントを 1 つ作成します
  • upsert_document - 特定のコレクションにドキュメントを 1 つアップサート(作成または更新)します
  • index_multiple_documents - 複数のドキュメントを一括でインデックス化(作成、アップサート、または更新)します
  • delete_document - 特定のコレクションから ID を指定してドキュメントを 1 つ削除します
  • import_documents_from_csv - CSV データからコレクションにドキュメントをインポートします
検索機能
  • search - 特定のコレクションでキーワード検索を実行します
  • vector_search - 特定のコレクションでベクトル類似度検索を実行します

コメント

MCP は初めてですか?

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

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