LibSQL数据库访问服务

一个提供Turso托管LibSQL数据库访问的MCP服务器,支持表列表获取、数据库和表结构查询以及SELECT查询执行。

  • by nbbaier
  • TypeScript
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 nbbaier/mcp-turso

使用说明

mcp-turso

一种模型上下文协议(MCP)服务器,提供对Turso托管的LibSQL数据库的访问。目前,服务器提供以下功能:

  • 检索数据库中的表列表
  • 检索数据库的架构
  • 正在检索表的架构
  • 执行SELECT查询

配置

使用克劳德桌面

将此添加到您的 claude_desktop_config.json:

{
   "mcpServers": [
      "turso": {
         "command": "npx",
         "args": ["-y", "mcp-turso"],
         "env": {
            "TURSO_DATABASE_URL": "your_url",
            "TURSO_AUTH_TOKEN": "your_token"
         }
      }
   ]
}

您需要一个现有的数据库才能继续。如果你没有, 创建一个。要通过Turso CLI获取数据库URL,请运行:

turso db show --url <database-name>

然后获取数据库身份验证令牌:

turso db tokens create <database-name>

将这些值添加到配置中,如上所示。

带光标

要使用Cursor配置Turso MCP服务器,请在Cursor设置中添加以下内容:

  1. 打开光标并转到设置(⚙️) > 设置(JSON)
  2. 将以下配置添加到JSON设置中:
"mcpServers": {
  "turso": {
    "command": "npx",
    "args": ["-y", "mcp-turso"],
    "env": {
      "TURSO_DATABASE_URL": "your_url",
      "TURSO_AUTH_TOKEN": "your_token"
    }
  }
}

替换 your_url 和 your_token 如前一节所述,使用您的Turso数据库URL和身份验证令牌。

日志记录

该服务器包括一个自定义记录器,用于在Claude Desktop之外进行调试。默认情况下,此记录器写入 <parent-dir>/logs/mcp-turso.log,在哪里 <parent-dir> 是包含以下内容的目录的父目录 mcp-turso 脚本。换句话说,如果路径 mcp-turso 是 ~/foo/bin/mcp-turso,日志将位于 ~/foo/logs/mcp-turso.log。如果如上所述使用NPX运行,默认日志将是:

~/.npm/_npx/<npx-dir-name>/node_modules/mcp-turso/logs/mcp-turso.log

如果要指定自定义路径,可以包含 --logs 旗帜与a 绝对posix路径 在服务器的配置中:

{
   "mcpServers": [
      "turso": {
         "command": "npx",
         "args": ["-y", "mcp-turso", "--logs", "/Users/<username>/path/to/dir/mcp-logs.log"],
         "env": {
            "TURSO_DATABASE_URL": "your_url",
            "TURSO_AUTH_TOKEN": "your_token"
         }
      }
   ]
}

日志文件的路径(默认或自定义)始终记录到 stderr 当服务器创建时。对于Claude桌面,这将显示在您的服务器登录中 ~/Library/Logs/Claude.

备注:目前,我还没有实现为Windows指定自定义日志文件,但即将实现。

服务器功能

服务器提供以下工具:

  • list_tables
    • 获取数据库中所有表的列表
    • 没有输入
    • 返回:一个表名数组
  • get_db_schema
    • 获取数据库中所有表的模式
    • 没有输入
    • 返回:SQL创建语句数组
  • describe_table
    • 查看特定表的架构信息
    • 输入:
      • table_name (string):要描述的表的名称
    • 返回:包含名称和类型的列定义数组
  • query_database
    • 执行SELECT查询以从数据库中读取数据
    • 输入:
      • sql (string):要执行的SELECT SQL查询
    • 返回:查询结果作为类型的对象 { columns: string[]; rows: Record<string, unknown>[]; rowCount: number; }

全部

  • []添加在windows上指定自定义日志文件的功能
  • []添加更多查询工具

许可证

MIT许可证-请参阅 许可证 文件以获取详细信息。