mcp-turso-cloud
LLM向けにTursoデータベースとの統合を提供するモデルコンテキストプロトコル(MCP)サーバー。このサーバーは、組織レベルとデータベースレベルの両方の操作を処理する2段階認証システムを実装しており、LLMからTursoデータベースを直接管理およびクエリすることを容易にします。
特徴
🏢 組織レベルの運用
- データベースの一覧表示: Turso 組織内のすべてのデータベースを表示します
- データベースの作成: カスタマイズ可能なオプションを使用して新しいデータベースを作成します
- データベースの削除: 組織からデータベースを削除します
- データベーストークンの生成: 特定のデータベースの認証トークンを作成する
💾 データベースレベルの操作
- テーブルの一覧表示: 特定のデータベース内のすべてのテーブルを表示します
- 読み取り専用クエリの実行: SELECT および PRAGMA クエリ (読み取り専用操作) を実行します。
- クエリの実行: 潜在的に破壊的な SQL クエリ (INSERT、UPDATE、DELETE など) を実行します。
- テーブルの説明: データベーステーブルのスキーマ情報を取得します
- ベクトル検索: SQLite ベクトル拡張機能を使用してベクトル類似性検索を実行します
⚠️ 重要: クエリ実行のセキュリティ ⚠️
このサーバーは、セキュリティを重視して、読み取り専用と破壊的なデータベース操作を分離します。
- SELECT および PRAGMA クエリには
execute_read_only_query
使用します (安全な読み取り専用操作) - INSERT、UPDATE、DELETE、CREATE、DROP、およびデータを変更するその他の操作には
execute_query
使用します。
この分離により、異なる権限レベルと承認要件が可能になります。
- 読み取り専用操作は多くのコンテキストで自動承認できます
- 破壊的な操作には安全のための明示的な承認が必要になる場合があります
**SQLクエリを承認する前に、必ず注意深く読み、確認してください。**これは、データを変更または削除する可能性のある破壊的な操作の場合に特に重要です。各クエリの実行を許可する前に、そのクエリが何を行うのかをよく理解してください。
2段階認証システム
サーバーは高度な認証システムを実装しています。
- 組織レベルの認証
- Turso Platform APIトークンを使用する
- データベースと組織レベルの運用を管理します
- Tursoダッシュボードから取得
- データベースレベルの認証
- データベース固有のトークンを使用する
- 組織トークンを使用して自動的に生成されます
- パフォーマンスのためにキャッシュされ、必要に応じてローテーションされます
構成
このサーバーはMCPクライアント経由で設定する必要があります。以下に、様々な環境における設定例を示します。
Cline/Claude デスクトップ構成
Cline/Claude Desktop MCP 設定に以下を追加します:
WSL 構成の Claude デスクトップ
WSL 環境の場合は、Claude Desktop 構成に以下を追加します。
環境変数
サーバーには次の環境変数が必要です。
TURSO_API_TOKEN
: Turso プラットフォーム API トークン (必須)TURSO_ORGANIZATION
: Turso組織名(必須)TURSO_DEFAULT_DATABASE
: 何も指定されていない場合に使用するデフォルトのデータベース(オプション)TOKEN_EXPIRATION
: 生成されたデータベーストークンの有効期限(オプション、デフォルト: '7d')TOKEN_PERMISSION
: 生成されたトークンの権限レベル(オプション、デフォルト: 'full-access')
API
サーバーは、カテゴリ別に整理された MCP ツールを実装します。
整理ツール
データベース一覧
Turso 組織内のすべてのデータベースを一覧表示します。
パラメータ: なし
応答例:
データベースの作成
組織内に新しいデータベースを作成します。
パラメータ:
name
(文字列、必須): 新しいデータベースの名前group
(文字列、オプション): データベースを割り当てるグループregions
(文字列[]、オプション):データベースを展開するリージョン
例:
データベースの削除
組織からデータベースを削除します。
パラメータ:
name
(文字列、必須): 削除するデータベースの名前
例:
データベーストークンを生成する
特定のデータベースの新しいトークンを生成します。
パラメータ:
database
(文字列、必須): データベース名expiration
(文字列、オプション): トークンの有効期限permission
(文字列、オプション): 権限レベル ('full-access' または 'read-only')
例:
データベースツール
リストテーブル
データベース内のすべてのテーブルを一覧表示します。
パラメータ:
database
(文字列、オプション): データベース名 (指定されていない場合はコンテキストを使用)
例:
読み取り専用クエリの実行
データベースに対して読み取り専用の SQL クエリ (SELECT、PRAGMA) を実行します。
パラメータ:
query
(文字列、必須): 実行するSQLクエリ(SELECTまたはPRAGMAである必要があります)params
(オブジェクト、オプション): クエリパラメータdatabase
(文字列、オプション): データベース名 (指定されていない場合はコンテキストを使用)
例:
クエリ実行
データベースに対して潜在的に破壊的な SQL クエリ (INSERT、UPDATE、DELETE、CREATE など) を実行します。
パラメータ:
query
(文字列、必須): 実行するSQLクエリ(SELECTまたはPRAGMAは使用できません)params
(オブジェクト、オプション): クエリパラメータdatabase
(文字列、オプション): データベース名 (指定されていない場合はコンテキストを使用)
例:
テーブルの説明
テーブルのスキーマ情報を取得します。
パラメータ:
table
(文字列、必須): テーブル名database
(文字列、オプション): データベース名 (指定されていない場合はコンテキストを使用)
例:
ベクター検索
SQLite ベクター拡張機能を使用してベクター類似性検索を実行します。
パラメータ:
table
(文字列、必須): テーブル名vector_column
(文字列、必須): ベクトルを含む列query_vector
(number[], 必須): 類似検索のクエリベクトルlimit
(数値、オプション): 結果の最大数 (デフォルト: 10)database
(文字列、オプション): データベース名 (指定されていない場合はコンテキストを使用)
例:
発達
設定
- リポジトリをクローンする
- 依存関係をインストールします:
- プロジェクトをビルドします。
- 開発モードで実行:
出版
- package.json のバージョンを更新する
- プロジェクトをビルドします。
- npm に公開:
トラブルシューティング
APIトークンの問題
認証エラーが発生した場合:
- Turso APIトークンが有効であり、必要な権限があることを確認してください
- 組織名が正しいことを確認してください
- トークンの有効期限が切れていないことを確認してください
データベース接続の問題
データベースへの接続に問題がある場合:
- 組織内にデータベースが存在することを確認する
- APIトークンがデータベースにアクセスできることを確認してください
- データベース名が正しいことを確認してください
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
ライセンス
MIT ライセンス - 詳細についてはLICENSEファイルを参照してください。
謝辞
構築されたもの:
You must be authenticated.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
🗂️ LLM 向けの Turso データベースとの統合を提供するモデルコンテキストプロトコル (MCP) サーバー。このサーバーは、組織レベルとデータベースレベルの両方の操作を処理するための 2 段階認証システムを実装しており、LLM から Turso データベースを直接管理およびクエリすることを容易にします。
Related Resources
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables LLMs to interact directly with MongoDB databases. Query collections, inspect schemas, and manage data seamlessly through natural language.Last updated -34075TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables LLMs to interact directly the documents that they have on-disk through agentic RAG and hybrid search in LanceDB. Ask LLMs questions about the dataset as a whole or about specific documents.Last updated -1231TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables LLMs to interact directly with MongoDB databases, allowing them to query collections, inspect schemas, and manage data seamlessly through natural language.Last updated -340MIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server implementation that enables LLMs to interact with the Osmosis protocol, allowing for querying and transaction functionality through natural language.Last updated -9TypeScriptMIT License