工具Cursor(三)MCP(1)介绍

一、在哪里添加McpServers

1、位置

Cursor是一个很好的Mcp Client,可以通过Cursor Setting--Tools & MCP --New Mcp Server来管理mcp tools。

添加之后都会展示在tools列表:

2、mcpServers与 MCP 协议的边界

这是很多人会混淆的地方:

层级负责内容
mcpServers如何启动进程
MCP 协议进程之间怎么说话

mcpServers不关心

  • tools 叫什么

  • schema 长什么样

  • resource / prompt

  • 你用 Java 还是 Python

二、McpServers添加语法

mcpServers是 Cursor 作为 MCP Host 的进程启动与管理配置,它解决的不是 MCP 协议本身,而是:如何启动一个 MCP Server 进程,并通过 stdio 与它通信,所以它的本质是:“进程启动描述(Process Spec)”。mcpServers的通用结构(抽象层):

{ "mcpServers": { "<server-id>": { "command": "<executable>", "args": [ "<arg1>", "<arg2>", ... ], "env": { "<key>": "<value>" } } } }

这一结构在语言 / jar / python / node / go之间是完全通用的

我的mcp servers:

{ "mcpServers": { "memory": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-memory" ], "env": { "MEMORY_FILE_PATH": "C:\\Users\\wtyy\\.mcp-storage\\memory.json" } }, "sequential-thinking": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-sequential-thinking" ] }, "playwright": { "command": "npx", "args": [ "-y", "@playwright/mcp@latest", "--browser", "chrome" ] }, "gitlab": { "command": "npx", "args": [ "-y", "@zereight/mcp-gitlab" ], "env": { "GITLAB_PERSONAL_ACCESS_TOKEN": "glpat-******", "GITLAB_API_URL": "https://git.wtyy.us", "GITLAB_READ_ONLY_MODE": "false", "USE_GITLAB_WIKI": "false", "NODE_TLS_REJECT_UNAUTHORIZED": "0" } }, "WtyyHelper": { "command": "C:\\Users\\wtyy\\AppData\\Local\\Programs\\WtyyHelper\\wtyyhelper-mcp.exe", "args": [ "--mcp" ], "env": {} }, "WtyyTest": { "command": "C:\\Users\\wtyy\\AppData\\Local\\Programs\\Python\\Python313\\Scripts\\wtyy.EXE", "args": [ "run", "--directory", "C:\\Users\\Twtyy\\.mytools\\mytools", "mymcp-test" ], "env": {} }, "web-token": { "command": "node", "args": ["/Users/wtyy/mcp/getWebToken.js"], "env": {} }, } }

1、<server-id>(逻辑标识)

语义

  • MCP Server 的逻辑 ID

  • 用于:

    • Cursor 内部管理

    • UI / 日志 / 错误提示

规则

  • 任意字符串

  • 推荐:kebab-case

  • 不参与 MCP 协议

  • 不会传给 Server

2、command(进程入口)

语义

  • 启动 MCP Server 的可执行文件

通用规则

  • 只能是一个可执行文件

  • ❌ 不允许带参数

  • ✔️ 参数必须拆到args

demo
"command": "java" "command": "python3" "command": "node" "command": "/usr/bin/go" "command": "/opt/homebrew/bin/python3" "command": "npx", "command": "Users/my/xxx.EXE"

3、args(进程参数)

语义

  • 传给command参数数组

  • 等价于 shell 中的:command arg1 arg2 arg3

通用规则

  • 必须是数组

  • 每个元素是一个独立参数

  • 顺序严格保留

  • Cursor 不做拼接、不做转义

demo
"args": [ "-jar", "/path/to/server.jar" ]
"args": [ "server.py" ]
"args": [ "--mcp" ],

4、env(进程环境变量)

语义

  • 启动 MCP Server 时注入的环境变量

通用规则

  • 可选

  • Key / Value 都是字符串

  • 会和系统环境合并

  • 若冲突 → 覆盖系统值

demo
"env": { "LOG_LEVEL": "debug", "SPRING_PROFILES_ACTIVE": "prod" }

三、McpServers的「运行时行为规则」

这些是 Cursor 对所有 MCP Server 的统一行为假设。

1、通信模型(硬性规则)

Cursor (Host) stdin ─────► MCP Server stdout ◄───── MCP Server
  • stdio 是唯一通道

  • 不支持 socket / http / grpc

  • Server 不需要监听端口

2、生命周期规则

  • Cursor 启动 Server

  • Server常驻

  • 一个 Server 对应一个进程

  • Cursor 退出 → Server 进程结束

3、输出规则(非常关键)

输出流允许内容
stdout仅 MCP JSON-RPC 消息
stderr任意日志

违反规则 → Server 直接被判定为异常

4、JSON-RPC 规则(通用)

  • 一行一个 JSON

  • UTF-8

  • 必须 flush

  • Cursor 不支持 chunked / streaming

四、cursor调用Mcp Tool的链路

和提示词是强关联的,参考LangChain4j框架(三)核心接口使用(4)Tool和MCP_langchain4j 一个类中写两个工具,工具具有抵用先后顺序-CSDN博客

这篇介绍的匹配规则。

你在 Cursor 输入自然语言 ↓ Cursor 将上下文 + MCP tools 描述发给 LLM ↓ LLM 决定是否要调用某个 MCP tool ↓ Cursor 解析 LLM 的 tool call 意图 ↓ Cursor 作为 MCP Host 调用 MCP Server ↓ MCP Server 执行 tool(你的代码) ↓ 结果通过 MCP 协议返回 ↓ Cursor 把结果交给 LLM ↓ LLM 生成最终回复

五、Cursor自带的tools

默认安装的 Cursor,大概包含50~70 个内置 tools(持续迭代中,具体版本会略有差异),默认安装的 Cursor 内置 tools 并不会出现在你自己配置的mcpServers中。

  • Cursor 自带 tools

    • 这些是Cursor 内部实现的工具,属于Host 自己的能力

    • 它们不依赖你配置的 MCP Server

    • 例如:查函数定义、搜索文档、单位换算等

  • 你配置的mcpServers

    • 只是告诉 Cursor如何启动外部 MCP Server 进程

    • 这些 MCP Server 里才有你自定义的 MCP tool(比如get_user_by_id

    • Cursor 启动后会通过 stdio 调用 MCP 协议与这些进程通信

Cursor (Host)

├─ 内置工具 (50~70 个)
│ └─ 直接执行,无需 MCP

└─ MCP Servers (你配置的)
└─ get_user_by_id / 自定义 tool

内置 tools 和 MCP Servers 是两条平行能力线
只有 LLM 看到全部工具,Cursor 内部会调不同实现。所以如果提示词不够精确,会出现cursor调用自己的tool而没有调用到你的tools的”翻车“情况。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1170137.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

拥有AI员工,才发现误会了领导

人工智能爆火三年&#xff0c;大模型和AI工具好用之后&#xff1a;职场从个人单刷模式&#xff0c;转变成带几个AI助手打团战&#xff0c;可以更高效的干活&#xff0c;但节奏却慢不下来。打工人成领导&#xff0c;不知薪水涨多少&#xff1f;虽说只是几个AI助手&#xff0c;但…

阿里千问落地谷歌UCP+A2UI,中国率先进入AI办事时代

刚刚&#xff0c;阿里千问App上线千问任务助理1.0&#xff0c;目前可以通过客户端申请邀测。千问打通了淘宝、支付宝等核心业务&#xff0c;标志着中国互联网正式进入AI办事时代。AI从单纯的对话框聊天&#xff0c;迈向了真正的办事助手。前不久&#xff0c;谷歌在大洋彼岸联合…

浙大陆展团队突破铁催化难题,实现高效氢联硅化反应 | 乐研试剂

在有机硅化学与合成化学的前沿领域&#xff0c;如何在不破坏关键Si–Si键的前提下&#xff0c;实现联硅前体的高选择性官能团化&#xff0c;一直是困扰研究人员的重大挑战。近日&#xff0c;浙江大学化学系陆展教授及其合作团队在联硅化学领域取得里程碑式突破。他们创新性地设…

P3349 [ZJOI2016] 小星星 - Link

先枚举一个集合 \(S\),设状态 \(f_{i,j}\) 表示树上 \(i\) 号点对应图上 \(j\) 号点 \((j\in S)\) 的方案数(可以多个树上的点对应一个图上的点)。转移是简单的。最后对于集合 \(S\),有容斥系数 \((-1)^{\left|S\r…

企业如何破解业法财融合痛点?AI风控探针的 4 个落地步骤

本文由幂律智能团队发布&#xff0c;核心探讨了 2026 年法律科技的关键技术——AI 风控探针。文章详细拆解了 AI 如何通过多 Agent 协作模式解决业法财深度融合中的数据割裂难题。重点涵盖&#xff1a;1. 如何通过拆解任务解决大模型幻觉&#xff0c;使合同审查准确率提升至 95…

【RAG召回排序】2025最全排序模型梳理

2025年检索重排模型全景盘点&#xff1a;从顶尖榜单到实用工具 在检索增强生成&#xff08;RAG&#xff09;和智能搜索领域&#xff0c;检索与重排模型的性能直接决定了系统的最终效果。今天我们就从权威排行榜出发&#xff0c;盘点当前最受关注的模型与工具。 一、权威检索重…

Nature发表、Science点赞!清华揭秘AI让科学家走捷径却让科学走窄路

AlphaFold获得诺贝尔奖标志着人工智能工具已深入科学的核心地带。清华大学一项基于41,298,433篇论文的深度研究揭示了一个令人深思的悖论。AI显著提升了科学家的个人产出与职业进程&#xff0c;却导致整个科学探索的领域变得狭窄且固化。该研究发表在Nature上&#xff0c;而且被…

AI技术唾手可得的时代,挖掘新需求是产品突围的关键——某知名聚合DNS管理系统的需求洞察

a.内容描述 核心功能定位&#xff1a;该项目是一个聚合DNS管理系统&#xff0c;旨在为用户提供一个统一的Web界面&#xff0c;集中管理分布在多个主流云服务商和DNS服务平台的域名解析记录。其核心定位是解决用户在多平台间切换管理DNS解析的繁琐问题。关键应用场景&#xff1a…

编程已终结!AI时代的原生智能软件架构长啥样?Claude给了个指南

近期&#xff0c;完全由 Claude code 自主编程开发软件已经成为现实&#xff0c;人们惊呼编程已经终结&#xff0c;该领域的奇点已至&#xff1a;革了程序员再革打工人&#xff1a;Anthropic 发布 Cowork&#xff0c;Claude Code 走进数字办公自动化。 那AI时代的软件应该如何…

安卓神器 --- 浏览器 之 yandex 狐猴浏览器 chrome firefox

安卓神器 --- 浏览器 之 yandex 狐猴浏览器 chrome firefox安卓神器 --- 浏览器 之 yandex 狐猴浏览器 chrome firefox

P11714 [清华集训 2014] 主旋律 Sol

计数神题。 题目链接 前言 这篇题解没有什么特别的,纯粹是快速题解区变换。仅在一些地方加上了自己的理解,希望会有所帮助。 做本题之前,可以先看看P6846 [CEOI 2019] Amusement Park,可能会有所启发。 解题思路 D…

GD5F1GM7UEYIGR:兆易创新1Gbit SPI NAND闪存,高效低功耗

品牌&#xff1a;兆易创新(GigaDevice) 型号&#xff1a;GD5F1GM7UEYIGR 容量&#xff1a;1Gbit 产品类型&#xff1a;NAND FLASH 接口类型&#xff1a; 标准SPI接口&#xff0c;支持1、2、4线模式。这意味着它只需要极少&#xff08;通常6-7个&#xff09;的GPIO引脚即可实…

夏天还不算开始——我,不会退役

或许每个人都会遇到吧,起起落落才是常态。一切过往,皆为序章。 :::align{right} ——莎士比亚 :::十月底,浙江从夏入冬,没有秋天。桂花?夹在冷热间开了一个星期,落完了。 具体经历,我不想回忆了。 2025/11/1 mo…

4B超越8B比肩30B!清华、面壁智能端侧智能体天花板开源

清华大学自然语言处理实验室&#xff08;THUNLP&#xff09;、中国人民大学、面壁智能&#xff08;ModelBest&#xff09;与OpenBMB开源社区联合发布并开源了端侧智能体模型AgentCPM-Explore。该模型仅凭4B参数规模便在深度探索类任务上取得了同尺寸模型的SOTA&#xff08;Stat…

企业软件供应链安全治理立项,方案书/立项书该怎么写?

当CTO或安全负责人指示“今年要把软件供应链安全做起来”时&#xff0c;很多项目负责人往往会陷入迷茫&#xff1a;“到底是应该买个SCA工具扫一扫&#xff1f;还是建立一套复杂的流程呢&#xff1f;我的项目立项书/方案书到底应该怎么写&#xff1f;后续的落地要怎么规划呢&am…

[Non] 字符串问题

字符串问题 大意 插入字符,查询字符。 初始串 \(s\), \(|s| \le 10^6\)。 思路 可以用平衡树,但是我选择更为强势的 STL 中的 rope。 头文件:#include<ext/rope> crope r1; // 存储 char 的 rope w…

谷歌Veo 3.1更新:更一致性、更具创造力和控制力

刚刚&#xff0c;谷歌Veo 3.1发布更新。通过素材转视频功能&#xff0c;实现了角色身份、背景与物体在动态场景中的高度一致性&#xff0c;并首次支持原生竖屏生成与4K超分画质&#xff0c;彻底打通了从静态图像到专业级动态叙事的创作链路。三大更新都是当前市场需求最大的领域…

评正高写书10万字什么价格?

评正高写书10万字什么价格&#xff1f; 评正高专著要求多少字&#xff1f; 下面淘淘论文来回答作者的这个疑问。一、评正高专著要求同样是评正高职称&#xff0c;要求有一定差异。一般评正高职称&#xff0c;对于专著的要求分为这几种情况&#xff1a;&#x1f539;独著或者合著…

Day15对象的方法与遍历对象

方法:<!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"…

SCI分区是怎么划分的?

SCI分区是怎么划分的&#xff1f;SCI期刊的一区、二区、三区、四区是怎么分区的&#xff1f;很多作者知道SCI有几个分区&#xff0c;但是不知道期刊的分区标准。下面淘淘论文来回答作者的这个疑问。一、SCI期刊分区划分的原因SCI期刊数量有9000多种&#xff0c;而SSCI期刊有300…