Windows本地开发MCP Server,并配置cursor
通过实现一个 MySQL 数据库查询的 MCP Server,探索在cursor中如何配置并调用自己的 MCP Server,以此来实现 MySQL 数据库的查询。
1.python 开发连接数据库的 MCP Server 只需要安装两个依赖,mcpcli 和 pymysql,执行下面命令即可完成安装。
# 创建新的项目 uv init mcp-demo cd mcp-demo # 创建并激活虚拟环境 uv venv .venv\Scripts\activate # 安装依赖 uv add "mcp[cli]" uv add pymysql
2. MCP Server 开发
数据准备
首先在 MySQL 中创建要使用的数据库和表,并插入测试数据。
create database mcp;
use mcp;
CREATE TABLE user (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    age INT NOT NULL
);
-- 插入 10 条数据
INSERT INTO user (name, age) VALUES 
('Alice', 23),
('Bob', 30),
('Charlie', 27),
('David', 35),
('Eve', 22),
('Frank', 28),
('Grace', 31),
('Heidi', 26),
('Ivan', 29),
('Judy', 24);
新建一个 mysql_mcp.py 文件,其中代码实现如下:
from mcp.server.fastmcp import FastMCP
import pymysql
mcp = FastMCP("MySQLMCP")
@mcp.tool()
def analysis_data(age: int) -> int:
    conn = pymysql.connect(
        host="152.136.xx.xxx",
        port=3306,
        user="root",
        password="1234567",
        database="mcp"
    )
    cursor = conn.cursor()
    cursor.execute(f"SELECT COUNT(*) FROM user where age > {age}")
    result = cursor.fetchone()[0]
    cursor.close()
    conn.close()
    return result
if __name__ == "__main__":
    mcp.run()
在上面代码中定义了函数 analysis_data,在里面实现了 MySQL 的连接以及对 user 表的查询,通过传入的参数 age 作为限定条件统计用户个数。使用 @mcp.tool() 注解将 analysis_data 变成了 MCP Server 的“工具”。
调试
mcp dev mysql_mcp.py

在浏览器中访问 6274 端口就可以访问到 MCP Inspector。我们定义了mcp的tool和resource两种能力,在 MCP Inspector 中分别进行测试。
3、Windows下配置cursor
{
  "mcpServers": {
    "mysql_mcp": {
      "command": "cmd",
      "args": [
        "/c",
        "python",
        "E:\\www\\Python_demo\\mcp-demo\\mysql_mcp.py"
      ]
    }
  }
}

                    
                
                
            
        
浙公网安备 33010602011771号