seekdb MCP Server 与 Cursor 集成
MCP(Model Context Protocol) 是 Anthropic 公司于 2024 年 11 月推出并开源,旨在实现大语言模型与外部工具或数据源交互的协议。通过 MCP,用户不需要将大模型的输出手动复制执行,大模型可以直接指挥工具执行相应的动作(Action)。
MCP Server 通过 MCP 协议提供了大模型与 seekdb 交互的能力,可以执行 SQL 语句。通过合适的客户端可以快速搭建项目原型,已在 github 上开源。
Cursor 是一款集成了 AI 技术的代码编辑器,支持多种操作系统,包括 Windows、macOS 和 Linux。
本文将展示如何使用 Cursor 与 seekdb MCP Server 集成,快速构建后端应用程序。
前提条件
-
您已完成部署 seekdb。
-
安装 Python 3.11 及以上版本 和相应 pip。如果您的机器上 Python 版本较低,可以使用 Miniconda 来创建新的 Python 3.11 及以上的环境,具体可参考 Miniconda 安装指南。
-
安装 Python 包管理器 uv。安装完成后,可使用
uv --version命令验证安装是否成功:pip install uv
uv --version -
下载 Cursor,根据自己的操作系统选择合适的版本进行安装。注意首次使用 Cursor 时,需要注册一个新账号或使用已有账号进行登录。登录后,可以创建新项目或打开已有项目。
步骤一:获取数据库连接信息
联系 seekdb 部署人员或者管理员获取相应的数据库连接串,例如:
mysql -h$host -P$port -u$user_name -p$password -D$database_name
参数说明:
-
$host:提供 seekdb 连接 IP 地址。 -
$port:提供 seekdb 连接端口,默认是2881。 -
$database_name:需要访问的数据库名称。提示连接的用户需要拥有该数据库的
CREATE、INSERT、DROP和SELECT权限。 -
$user_name:提供数据库连接账户。 -
$password:提供账户密码。
步骤二:配置 seekdb MCP Server
安装 seekdb MCP Server
执行下面的命令进行安装
pip install seekdb-mcp-server
配置 seekdb 服务器环境变量到 .env 文件中
在当前目录下创建一个名为 .env 的文件,并添加以下内容:
vi .env
SEEKDB_HOST=localhost # 数据库主机
SEEKDB_PORT=2881 # 数据库端口(默认:2881)
SEEKDB_USER=your_username
SEEKDB_PASSWORD=your_password
SEEKDB_DATABASE=your_database
以 SSE 模式启动 seekdb MCP Server
env $(cat .env | xargs) uvx seekdb-mcp-server --transport sse --port 8000 --host 0.0.0.0
创建 Cursor 客户端的工作目录并配置 seekdb MCP Server
手动创建一个 Cursor 的工作目录,并用 Cursor 打开,后面 Cursor 生成的文件将放在这个目录下,示例的目录名为 cursor。
使用快捷键 Ctrl + L(Windows)或者 Command + L(MacOS)打开聊天对话框,点击右上角的齿轮,选择 MCP Tools。

添加并配置 MCP Servers
-
点击
Add Custom MCP填写配置文件。
-
填写配置文件,点击确认。
{
"mcpServers": {
"sse-seekdb": {
"autoApprove": [],
"disabled": false,
"timeout": 60,
"type": "sse",
"url": "http://ip:port/sse"
}
}
} -
如配置成功,将显示
可使用状态。
测试 MCP Server
在对话框中输入提示:How many tables in the test database?,Cursor 客户端会展示即将执行的 SQL 语句。确认无误后,点击 Run tool 按钮执行。Cursor 客户端会展示 test 库中的所有表名称,这表明我们已经成功连接到 seekdb。

使用 FastAPI 快速创建 RESTful API 风格的项目
你可以使用 FastAPI 快速创建 RESTful API 风格的项目。FastAPI 是一个 Python 的 Web 框架,可以快速构建 RESTful API。
-
创建 customer 表
在对话框中输入提示:
Create a "customer" table with "ID" as the primary key and containing fields such as "name", "age", "telephone", and "location",确认 SQL 语句后,点击Run tool按钮执行。
-
插入测试数据
在对话框中输入提示:
Insert 10 pieces of data into the customer table,确认 SQL 语句后,点击Run tool按钮执行。插入成功后,会有Done! Here are the 10 customer records inserted:的提示。
-
创建 FastAPI 项目
在对话框中输入提示:
Create a FastAPI project on the customer table,点击Run tool按钮执行。
此步骤将自动生成多个文件。建议首次使用时选择
全部接受,因为 AI 生成的文件内容可能具有不确定性,后续可根据实际需求进行调整。 -
FastAPI 项目配置数据库连接信息
在 .env 文件内配置 seekdb 连接信息。

-
安装项目依赖
执行如下命令,安装项目依赖:
pip install -r requirements.txt -
启动 FastAPI 项目
执行如下命令,启动 FastAPI 项目:
source .env
uvicorn main:app --reload -
查看表中数据
在命令行中运行如下命令,或者使用其他请求工具,查看表中的数据:
curl http://127.0.0.1:8000/customers返回结果如下:
[{"name":"John Smith","age":32,"telephone":"555-0101","location":"New York, NY","ID":1},{"name":"Emily Johnson","age":28,"telephone":"555-0102","location":"Los Angeles, CA","ID":2},{"name":"Michael Chen","age":45,"telephone":"555-0103","location":"San Francisco, CA","ID":3},{"name":"Sarah Williams","age":36,"telephone":"555-0104","location":"Chicago, IL","ID":4},{"name":"David Brown","age":29,"telephone":"555-0105","location":"Houston, TX","ID":5},{"name":"Jessica Lee","age":41,"telephone":"555-0106","location":"Phoenix, AZ","ID":6},{"name":"Robert Garcia","age":55,"telephone":"555-0107","location":"Philadelphia, PA","ID":7},{"name":"Amanda Martinez","age":23,"telephone":"555-0108","location":"San Antonio, TX","ID":8},{"name":"Christopher Wilson","age":38,"telephone":"555-0109","location":"San Diego, CA","ID":9},{"name":"Nicole Taylor","age":31,"telephone":"555-0110","location":"Dallas, TX","ID":10}]