如何在Cursor中使用MCP服务

如何在Cursor中使用MCP服务

前言

随着AI编程助手的普及,越来越多开发者选择在Cursor等智能IDE中进行高效开发。Cursor不仅支持代码补全、智能搜索,还能通过MCP(Multi-Cloud Platform)服务,轻松调用如高德地图API、数据库等多种外部服务,实现数据采集、处理和自动化办公。
本文以“北京一日游自动化攻略”为例,详细讲解如何在 Cursor 中使用 MCP 服务,完成数据采集、数据库操作、文件生成和前端页面展示的全流程。

学习视频cursor中使用MCP服务

一、什么是MCP服务?

MCP(Multi-Cloud Platform)是Cursor内置的多云服务接口,支持调用地图、数据库、文件系统等多种API。通过MCP,开发者无需手动写HTTP请求或繁琐配置,只需在对话中描述需求,AI助手即可自动调用相关服务,极大提升开发效率。

二、环境准备

2.1 cursor

在这里插入图片描述


Cursor重置机器码-解决Too many free trials.

2.2 python - uvx

若已经配置Python环境,可使用以下命令安装:

pip install uv 

若没有配置Python环境
在Windows下可以通过PowerShell运行命令来安装:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

使用 uv --versionuvx --help 检查是否安装成功,若和下图一样代表安装成功

在这里插入图片描述

2.3 node.js - npx

官网下载node.js,并配置环境变量,如下图:

在这里插入图片描述

三、在Cursor中添加 MCP server

在 Cursor 中添加 MCP Server 有两种配置方式

3.1 全局设置

通过 Cursor Settings -> MCP -> Add new global MCP server 添加全局可用的 MCP 服务

在这里插入图片描述

3.2 项目级别 (推荐)

在项目目录的 .cursor 目录中新建 mcp.json 文件进行配置,仅对特定项目生效

在这里插入图片描述

四、选择MCP Server的平台

4.1 mysql

选择平台:https://smithery.ai/
填写信息将JSON信息复制到 mcp.json 文件中

在这里插入图片描述


在这里插入图片描述


可能粘过来,不好使,需要找到github链接,从github上粘贴:

在这里插入图片描述


在这里插入图片描述


注意:这个 mysql MCP服务,需要提前建好数据库,否则无法成功

注意:验证是否生效
将MCP服务信息填在mcp.json 文件中后,需要打开 Settings -> MCP 检查你配置的 MCP Server 是否在列表中显示,并确认
绿点 且状态为 Enabled

4.2 高德地图服务

高德地图的MCP Server需要从 MCP.so 平台获取。

在这里插入图片描述


在这里插入图片描述


申请高德地图的API:https://console.amap.com/

在这里插入图片描述


在这里插入图片描述

4.2 filesystem服务

在这里插入图片描述

4.4 配置参考

{"mcpServers":{"mysql":{"command":"npx","args":["-y","@f4ww4z/mcp-mysql-server"],"env":{"MYSQL_HOST":"localhost","MYSQL_USER":"root","MYSQL_PASSWORD":"数据库密码","MYSQL_DATABASE":"beijing_trip(数据库名字 - 请提前创建数据库)"}},"amap-maps":{"command":"npx","args":["-y","@amap/amap-maps-mcp-server"],"env":{"AMAP_MAPS_API_KEY":"高德key"}},"filesystem":{"command":"npx","args":["-y","@modelcontextprotocol/server-filesystem","D:/DESKTOP/MCP(保存地址自行修改)"]}}}

五、功能测试

5.1 参考提示词

现在交给你一个任务,编写一个北京一日游的出行攻略 1、从高德地图的MCP服务中获取北京站到天安门、天安门到颐和园、颐和园到南锣鼓巷 的地铁线路,并保存在数据库beijing_trip的表subway_trips中 2、从高德地图的MCP中获取颐和园、南锣鼓巷附件的美食信息,每处获取三家美食店铺 信息,并将相应的信息存入表location_foods中 3、在工作目录D:\DESKTOP\MCP下创建一个新的文件夹,命名为“北京旅行”在其中创 建两个txt,分别从数据库中将两个表的内容提取出存放进去。 4、最后根据txt中的内容,生成一个精美的html前端展示页面,并存放在该目录下 

5.2 提供提示运行MCP命令,即可

  1. 输入自然语言后,cursor会自动调用MCP服务,连接数据库并执行建表SQL,无需手动写代码;
  2. 自动调用MCP的高德API接口,获取经纬度、地铁换乘方案等数据,将获取到的数据插入到指定表中,无需手动写INSERT语句;
  3. 最后自动操作文件系统,将数据库内容导出为txt和html文件,存放到指定目录
在这里插入图片描述


自己创建的数据表和插入的数据

在这里插入图片描述
-- auto-generated definition create table location_foods (id int auto_increment primary key, location varchar(64) not null, name varchar(128) not null, address varchar(256) null, tel varchar(64) null, type varchar(64) null, distance varchar(32) null ); -- auto-generated definition create table subway_trips (id int auto_increment primary key, start_location varchar(64) not null, end_location varchar(64) not null, subway_lines text not null, duration varchar(32) null, distance varchar(32) null );

效果图:

在这里插入图片描述

六、实用Tips

  1. 权限配置:确保MCP服务已配置好API Key和数据库权限。
  2. 目录路径:文件操作需在允许的工作目录下进行,否则会报Access denied
  3. 数据安全:涉及敏感信息时,注意数据库和API密钥的保护。

结语

在Cursor中结合MCP服务和AI助手,可以极大提升开发和数据处理效率。无论是地图数据采集、数据库管理,还是自动化生成前端页面,都能一站式完成。如果你也想体验AI驱动的高效开发,不妨在Cursor中试试MCP服务吧!欢迎点赞、收藏、评论交流!

Read more

Flutter 三方库 collection 的鸿蒙化适配指南 - 实现具备高级集合操作与相等性深度判定算法的算法底座、支持端侧多维数据结构的高性能治理实战

Flutter 三方库 collection 的鸿蒙化适配指南 - 实现具备高级集合操作与相等性深度判定算法的算法底座、支持端侧多维数据结构的高性能治理实战

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 collection 的鸿蒙化适配指南 - 实现具备高级集合操作与相等性深度判定算法的算法底座、支持端侧多维数据结构的高性能治理实战 前言 在进行 Flutter for OpenHarmony 开发时,面对复杂的业务 JSON 转化、深层嵌套的集合对比或需要对列表执行高频的优先级排序(Priority Queue)时,原生 List 和 Map 的功能往往显得捉襟见肘。collection 是 Dart 官方维护的最权威、最核心的集合工具库。本文将探讨如何在鸿蒙端构建极致、稳健的数据处理架构。 一、原直观解析 / 概念介绍 1.1 基础原理 该库扩展了 Dart 标准库中的集合能力。它不仅提供了如 Equality(深度相等判定)、PriorityQueue(

By Ne0inhk
【C++】哈希扩展——位图和布隆过滤器的介绍与实现

【C++】哈希扩展——位图和布隆过滤器的介绍与实现

各位读者大佬好,我是落羽!一个坚持不断学习进步的学生。 如果您觉得我的文章还不错,欢迎多多互三分享交流,一起学习进步! 也欢迎关注我的blog主页:落羽的落羽 文章目录 * 一、位图 * 1. 概念与实现 * 2. std::bitset * 二、布隆过滤器 * 1. 概念 * 2. 布隆过滤器误判率数学推导 * 3. 实现 一、位图 1. 概念与实现 在许多公司的面试题中会考到这样的场景:给40亿个不重复无符号整数,如何快速判断一个数是否在这40亿数中。 如果使用常规思路,每次查询暴力遍历O(N)太慢,排序+二分查找O(NlogN)+O(logN),内存不足以放下这些数据。 数据是否在给定的整型数据中,结果是在或不在,正好是两种状态,那么可以用一个二进制比特位来代表数据是否存在的信息,比特位为1代表存在,比特位为0代表不在。那么,我们可以设计一个用比特位表示数据是否存在的数据结构——位图!

By Ne0inhk
【鼠鼠优选算法-双指针】001:移动零 & 002:复写零

【鼠鼠优选算法-双指针】001:移动零 & 002:复写零

🎈主页传送门:良木生香 🔥个人专栏:《C语言》 《数据结构-初阶》  🌟人为善,福随未至,祸已远行;人为恶,祸虽未至,福已远离 在学习了这么多基础知识之后,我们就从今天开始操练一下我们的基本技能吧,先来两道简单的题目试试手: 1.移动零:题目链接~~~ 2.复写零:复写零 那我们就一题一题来讲讲吧~~~ 一、移动零 题目描述: 看到题目,这道题是想让我们将一个数组中的所有0移动到数组的末尾. 题目意思明了,但是我们该怎么操作呢? 在这道题中我们第一个想到的就是重新创建新的数组,将数值不为0的元素移动到新的数组中,但是题目明确要求说了,只能再原地进操作,我们该怎么实现这个操作呢?又不能创建新的数组不急,我有妙招. 原理解析: 在这道题目中,我们可以用两个指针,current和dentist,一个用来遍历整个数组,另一个用来处理当下的数据 当cur遍历到值为0的元素时,就与dest交换,随后两者同时向后移动一步 但是不管cur碰到的元素是否等于0,都会向后移动一步   代码实现: 下面是用C语言实现的代码: void Swap(

By Ne0inhk