Turso云
ðï¸ 一个提供与Turso数据库集成的模型上下文协议(MCP)服务器,适用于LLM。该服务器实现了一个两级认证系统,用于处理组织级和数据库级的操作,从而可以轻松地从LLM直接管理和查询Turso数据库。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"mcp-turso-cloud": {
"args": [
"-y",
"mcp-turso-cloud"
],
"command": "npx",
"env": {
"TURSO_API_TOKEN": "your-turso-api-token",
"TURSO_DEFAULT_DATABASE": "optional-default-database",
"TURSO_ORGANIZATION": "your-organization-name"
}
}
}
}
该服务需要配置环境变量:TOKEN_EXPIRATION、TOKEN_PERMISSION、TURSO_API_TOKEN、TURSO_DEFAULT_DATABASE、TURSO_ORGANIZATION
可用工具 (8 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
list_databases
List all databases in your Turso organization
该工具无需必填参数,直接调用即可
create_database 3 个参数 需填 1 项
Create a new database in your Turso organization
必填参数:name
delete_database 1 个参数 需填 1 项
Delete a database from your Turso organization
必填参数:name
generate_database_token 2 个参数 需填 1 项
Generate a new token for a specific database
必填参数:database
list_tables 1 个参数
Lists all tables in a database
该工具无需必填参数,直接调用即可
execute_query 3 个参数 需填 1 项
Executes a SQL query against a database
必填参数:query
describe_table 2 个参数 需填 1 项
Gets schema information for a table
必填参数:table
vector_search 5 个参数 需填 3 项
Performs vector similarity search
必填参数:table、vector_column、query_vector
服务介绍
mcp-turso-cloud
这是一个 Model Context Protocol (MCP) 服务器,为 LLMs 提供与 Turso 数据库的集成。该服务器实现了一个两级认证系统,以处理组织级别和数据库级别的操作,从而方便地直接从 LLMs 管理和查询 Turso 数据库。
功能
🏢 组织级别操作
- 列出数据库:查看您在 Turso 组织中的所有数据库
- 创建数据库:使用可自定义选项创建新数据库
- 删除数据库:从您的组织中移除数据库
- 生成数据库令牌:为特定数据库创建认证令牌
💾 数据库级别操作
- 列出表:查看特定数据库中的所有表
- 执行查询:对您的数据库运行 SQL 查询
- 描述表:获取数据库表的模式信息
- 向量搜索:使用 SQLite 向量扩展执行向量相似性搜索
两级认证系统
该服务器实现了一个复杂的认证系统:
-
组织级别认证
- 使用 Turso 平台 API 令牌
- 管理数据库和组织级别的操作
- 通过 Turso 仪表板获取
-
数据库级别认证
- 使用特定于数据库的令牌
- 自动使用组织令牌生成
- 为了性能考虑进行缓存,并根据需要进行轮换
配置
此服务器需要通过您的 MCP 客户端进行配置。以下是不同环境的示例:
Cline/Claude 桌面配置
将以下内容添加到您的 Cline/Claude 桌面 MCP 设置中:
{
"mcpServers": {
"mcp-turso-cloud": {
"command": "npx",
"args": ["-y", "mcp-turso-cloud"],
"env": {
"TURSO_API_TOKEN": "your-turso-api-token",
"TURSO_ORGANIZATION": "your-organization-name",
"TURSO_DEFAULT_DATABASE": "optional-default-database"
}
}
}
}
Claude 桌面与 WSL 配置
对于 WSL 环境,请将以下内容添加到您的 Claude 桌面配置中:
{
"mcpServers": {
"mcp-turso-cloud": {
"command": "wsl.exe",
"args": [
"bash",
"-c",
"TURSO_API_TOKEN=your-token TURSO_ORGANIZATION=your-org node /path/to/mcp-turso-cloud/dist/index.js"
]
}
}
}
环境变量
服务器需要以下环境变量:
TURSO_API_TOKEN:您的 Turso 平台 API 令牌(必需)TURSO_ORGANIZATION:您的 Turso 组织名称(必需)TURSO_DEFAULT_DATABASE:未指定时使用的默认数据库(可选)TOKEN_EXPIRATION:生成的数据库令牌的过期时间(可选,默认:'7d')TOKEN_PERMISSION:生成令牌的权限级别(可选,默认:'full-access')
API
服务器按类别实现了 MCP 工具:
组织工具
list_databases
列出您在 Turso 组织中的所有数据库。
参数:无
示例响应:
{
"databases": [
{
"name": "customer_db",
"id": "abc123",
"region": "us-east",
"created_at": "2023-01-15T12:00:00Z"
},
{
"name": "product_db",
"id": "def456",
"region": "eu-west",
"created_at": "2023-02-20T15:30:00Z"
}
]
}
create_database
在您的组织中创建一个新的数据库。
参数:
name(字符串, 必需):新数据库的名称group(字符串, 可选):要分配给数据库的组regions(字符串[], 可选):要部署数据库的区域
示例:
{
"name": "analytics_db",
"group": "production",
"regions": ["us-east", "eu-west"]
}
delete_database
从您的组织中删除一个数据库。
参数:
name(字符串, 必填): 要删除的数据库名称
示例:
{
"name": "test_db"
}
generate_database_token
为特定数据库生成一个新的令牌。
参数:
database(字符串, 必填): 数据库名称expiration(字符串, 可选): 令牌过期时间permission(字符串, 可选): 权限级别 ('full-access' 或 'read-only')
示例:
{
"database": "customer_db",
"expiration": "30d",
"permission": "read-only"
}
数据库工具
list_tables
列出数据库中的所有表。
参数:
database(字符串, 可选): 数据库名称(如果未提供则使用上下文)
示例:
{
"database": "customer_db"
}
execute_query
对数据库执行 SQL 查询。
参数:
query(字符串, 必填): 要执行的 SQL 查询params(对象, 可选): 查询参数database(字符串, 可选): 数据库名称(如果未提供则使用上下文)
示例:
{
"query": "SELECT * FROM users WHERE age > ?",
"params": { "1": 21 },
"database": "customer_db"
}
describe_table
获取表的架构信息。
参数:
table(字符串, 必填): 表名称database(字符串, 可选): 数据库名称(如果未提供则使用上下文)
示例:
{
"table": "users",
"database": "customer_db"
}
vector_search
使用 SQLite 向量扩展进行向量相似性搜索。
参数:
table(字符串, 必填): 表名称vector_column(字符串, 必填): 包含向量的列query_vector(数字[], 必填): 用于相似性搜索的查询向量limit(数字, 可选): 最大结果数(默认:10)database(字符串, 可选): 数据库名称(如果未提供则使用上下文)
示例:
{
"table": "embeddings",
"vector_column": "embedding",
"query_vector": [0.1, 0.2, 0.3, 0.4],
"limit": 5,
"database": "vector_db"
}
开发
设置
- 克隆仓库
- 安装依赖项:
npm install
- 构建项目:
npm run build
- 以开发模式运行:
npm run dev
发布
- 更新 package.json 中的版本
- 构建项目:
npm run build
- 发布到 npm:
npm publish
故障排除
API 令牌问题
如果您遇到身份验证错误:
- 验证您的 Turso API 令牌有效且具有必要的权限
- 检查您的组织名称是否正确
- 确保您的令牌未过期
数据库连接问题
如果您在连接数据库时遇到问题:
- 验证数据库存在于您的组织中
- 检查您的 API 令牌是否有权访问该数据库
- 确保数据库名称拼写正确
贡献
欢迎贡献!请随时提交 Pull Request。
许可
MIT 许可 - 查看 LICENSE 文件以获取详细信息。
致谢
基于以下构建: