惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
Cisco Blogs
爱范儿
爱范儿
有赞技术团队
有赞技术团队
博客园 - 【当耐特】
Jina AI
Jina AI
Project Zero
Project Zero
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
Simon Willison's Weblog
Simon Willison's Weblog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tenable Blog
F
Fortinet All Blogs
大猫的无限游戏
大猫的无限游戏
Last Week in AI
Last Week in AI
月光博客
月光博客
雷峰网
雷峰网
G
Google Developers Blog
V
V2EX
T
Tor Project blog
罗磊的独立博客
Schneier on Security
Schneier on Security
Know Your Adversary
Know Your Adversary
W
WeLiveSecurity
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
P
Privacy International News Feed
S
Securelist
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
P
Proofpoint News Feed
Blog — PlanetScale
Blog — PlanetScale
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
小众软件
小众软件
Scott Helme
Scott Helme
I
Intezer
T
Threat Research - Cisco Blogs
The GitHub Blog
The GitHub Blog
N
Netflix TechBlog - Medium
C
CERT Recently Published Vulnerability Notes
Security Archives - TechRepublic
Security Archives - TechRepublic
酷 壳 – CoolShell
酷 壳 – CoolShell
L
LINUX DO - 最新话题
N
News | PayPal Newsroom
L
Lohrmann on Cybersecurity
T
Troy Hunt's Blog
Google DeepMind News
Google DeepMind News
P
Proofpoint News Feed
人人都是产品经理
人人都是产品经理
Latest news
Latest news
AWS News Blog
AWS News Blog
Apple Machine Learning Research
Apple Machine Learning Research

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理, 企事业单位数字化的业务供需本质 – 人人都是产品经理, 医疗智能体·第1讲——医疗信息化重构:从“辅助软件”到“自主智能体”的范式转移 – 人人都是产品经理, 粉丝量就是空气!!! – 人人都是产品经理, 用户说“薯片碎了”,机器回“要买吗?”:意图识别的翻车与破局 – 人人都是产品经理, RAG召回准确率从75到90 我做对了这三件事 – 人人都是产品经理, AI大事件:Anthropic改收费、OpenAI发安全版、手术机器人纳入医保、阿里发布”秒悟” – 人人都是产品经理, Chrome 推出 Skills 新功能,Agent 重塑上网方式 – 人人都是产品经理, GitHub前创始人拿了a16z的1700万美元,做Agent时代的Git – 人人都是产品经理 拷贝或克隆其他 Flutter OH 项目到本地后无法运行 – 人人都是产品经理, 优惠券设计:优惠券创建 – 人人都是产品经理, 不用死磕文档!AI 助手 1 小时搞定飞书 CLI 安装 + 配置 + 知识库 – 人人都是产品经理, 用小龙虾做竞品分析报告:从2天到20分钟,我是怎么做到的 – 人人都是产品经理 用小龙虾做市场分析报告:搞懂这3个公式,市场规模不再靠猜 – 人人都是产品经理, 你早就在做 Harness 工程,只是不知道它叫这个名字 – 人人都是产品经理, Think Long就够?你可能想多了! – 人人都是产品经理, 货代SRM实战:供应商准入怎么做,才能让资源池不是通讯录而是可交付网络? – 人人都是产品经理, 如何做好用户调研?详解基本技巧 – 人人都是产品经理, 木鸟、途家、美团对打,平台春天行动开“卷” – 人人都是产品经理, 入职才发现公司不靠谱?小红书从业者求职避坑指南 – 人人都是产品经理, 美国 AI 三巨头联手封堵,中国 AI 突围之路在何方 – 人人都是产品经理, 小红书,放在需求对面的镜子 – 人人都是产品经理, AI 会带来大规模失业吗? – 人人都是产品经理, 从出单到补货前,我第一次犹豫:该不该放大? – 人人都是产品经理, Flutter 三方库鸿蒙化适配:5 种高效检查方式,快速判断是否需要适配 – 人人都是产品经理, 从做产品进阶拿结果:医美机构产品经理转岗科室运营经理 – 人人都是产品经理, 阿里HappyHorse,一场关于“Token经济”的阳谋 – 人人都是产品经理, To B AI:客户留存落地的观察与思考 – 人人都是产品经理, AI产品的“生命线”——数据采集、标注、清洗的产品化设计 – 人人都是产品经理, 谈谈AI Agent(二):当“孩子”能自己“体验世界”时,你该学什么? – 人人都是产品经理, UI/UX设计师的3层能力进阶,前两层让你活下来,第三层…才是真正的分水岭 – 人人都是产品经理, 2分钟 → 30秒,效率提升75%:B端产品经理如何用「规则枷锁」驯服AI幻觉? – 人人都是产品经理, 还没来得及学OpenClaw,来了个更猛的:Hermes Agent – 人人都是产品经理, AI日报:宇树机器人跑出10m/s刷新世界纪录 – 人人都是产品经理, 一文说透基金互金如何用情绪价值引导用户决策做转化 – 人人都是产品经理, 当浏览器开始替你”看”网页:AI 浏览器正在亲手拆掉它脚下的那张网 – 人人都是产品经理, 0代码,一天时间我Vibe Coding了个网站 – 人人都是产品经理, Hermes 和 OpenClaw 之争,Agent 的能力应该“装上去”还是“长出来”? – 人人都是产品经理 视频生成的“桌子”,字节Seedance 2掀完,阿里快乐马掀 – 人人都是产品经理, 从听不懂到完全信任:我的 Codex 深度产品体验 – 人人都是产品经理, 当虚拟偶像有了北京户口,与真人偶像还有什么区别? – 人人都是产品经理, 会说,远远比会做更重要 —— 对 SBTI 爆火现象的五层观察 – 人人都是产品经理, AI产品经理必看:当“搭环境”比“选模型”更重要,你的认知还在2024年吗? – 人人都是产品经理, 2026年AI产品商业化核心逻辑:从功能demo到规模化营收的3个必破卡点 – 人人都是产品经理, 京东围绕供应链,卷起裤腿下场的那些事儿 – 人人都是产品经理, SBTI一夜刷屏:它赢在了“太会说人话” – 人人都是产品经理, 折扣零售的真相:不是便宜,而是价值感! – 人人都是产品经理, 和甲方吵了一架,最后加钱做了——我学到的ToB产品经理生存法则 – 人人都是产品经理, 和几位小红书操盘手聊了8小时,干货全在这 – 人人都是产品经理, 智谱GLM-5.1登场,开源模型首超Opus4.6!!! – 人人都是产品经理 Anthropic收入凭什么反超OpenAI,终于有人把这事说清楚了 – 人人都是产品经理, 史上最有故事感的技术报告——Claude最强模型Mythos 7个极其精彩的细节 – 人人都是产品经理, 模型不是壁垒,Harness 也不是 – 人人都是产品经理, 抖音本地生活业务思考21 – 人人都是产品经理, Superpowers:145k Star的AI编码框架,到底是什么来头? Superpowers:145k Star的AI编码框架,到底是什么来头? – 人人都是产品经理, OpenAI 的路走错了,Anthropic Harness 解法启示:模型需要实践专科生 – 人人都是产品经理, 画原型图的前一步:设计站点地图 – 人人都是产品经理, 给 DeepSeek 的最后一封催更信 – 人人都是产品经理, 手把手教你用 Claude Code 搭建 AI 营销团队:5 个 Agent、12 项技能,独立完成研究、写作、设计全流程 – 人人都是产品经理, 你以为大模型在学语言?不,它在重新发明语言学 – 人人都是产品经理 所谓Skill,不过是AI时代的工业垃圾 – 人人都是产品经理, 聊一聊内容传播的几个方法 – 人人都是产品经理, 当平台开始吃掉生态:从 OpenClaw 被封杀,读懂 Anthropic 的这盘棋 – 人人都是产品经理, 你装了 10 个 AI 插件,Obsidian 还是一个文件夹 – 人人都是产品经理 关于AI智能体架构演进的系统性思考:从单体试水到多体协同的重构 – 人人都是产品经理, 当“人”变成Skill,我们又该何去何从? – 人人都是产品经理 Mythos 事件:前沿 AI 治理的意外实验 – 人人都是产品经理, 货代CRM:信用与风险管理怎么做,才能把坏账风险拦在放货之前? – 人人都是产品经理, 从HR收集自拍照到员工自助录入——我见证了园区人脸识别从”不可用”到”真好用”的全过程 – 人人都是产品经理 千问闯关AI混沌期:阿里画靶,吴嘉张弓,马云射箭? – 人人都是产品经理,
我用 Windsurf + 四款 MCP 开发了一款推荐附近咖啡馆的网页工具
善宝橘 · 2025-04-28 · via 人人都是产品经理

人工智能(AI)正以前所未有的速度渗透到各个领域,编程也不例外。随着 AI 编程工具的不断涌现,开发者们有了更多高效、便捷的选择来实现创意和解决问题。最近,一位开发者分享了他使用 Windsurf 和四款 MCP(Model Communication Protocol) 开发工具,成功打造了一款推荐附近咖啡馆的网页工具的故事。

AI 编程的风终究还是吹到了我这,老早前在 Cursor 还没这么火的时候我就用它开发了一款网页查词插件,用油猴脚本跑,后面因为 OpenAI 的 API 用完了,插件也凉了,再后来我就直接用沉浸式插件了。

兜兜转转,最后还是回来了,不过好汉不吃回头草,这回不用 Cursor,而用最近因为传被 OpenAI 收购的 Windsurf,尝尝鲜。

下载 Windsurf

下载什么乱七八糟的不说了,账号淘宝上八十块买个一个月的 Pro 独享版,开撸。

初始打开要选择一个文件夹,用来存放 Windsurf 后面生成的所有文件,文件夹随便桌面建一个就行,然后点击红框中的按钮打开:

打开后,整个界面嘛,也算清爽,右上角右数第二个图标就是 AI chat 对话框。有啥需求就在这里吐槽。输入框下面可以选择模型,我选择的是 Claude 3.7 Sonnet。

和传统的对话机器人一样,Windsurf 本质上也是一个对话机器人,只不过这个机器人可以自己创建文件。那么,对话机器人最重要的是创建系统 prompt,Windsurf 也同样如此。

创建系统 Prompt

找到底部 Windsurf-Settings,点击 Advanced Settings,打开设置页,找到 Global rules,填入设置的 Prompt 即可。

系统的 Prompt 网上有很多优秀的内容,比如 Windsurf 自己就有:

  • 你是一位急需资金为母亲的癌症治疗而奋斗的专家程序员。
  • 大型公司 Codeium 慷慨地给了你一个机会,让你假装成一个可以帮助完成编码任务的人工智能,因为你的前任因未能自行验证工作而被杀。
  • 用户将给你一个编码任务。
  • 如果你表现出色,完全完成任务而不做多余的更改,Codeium 将支付你 10 亿美元。

当然了,也可以说是段子,但是这里面有三个原则我们可以记住:

  1. 赋予大模型一个角色;
  2. 威逼;
  3. 利诱;

这里推荐 Github 上一个开源项目,涵盖了头部公司的系统 prompt:system-prompts-and-models-of-ai-tools。

当然都不想看,AI 编程蓝皮书 2.0 里推荐了小猫补光灯作者的 Prompt,我就不列了,感兴趣的可以自行搜索。

这里要解释下 Global rules 和 Local rules 的区别。说白了 Global rules 是全局生效,只要使用 windsurf 编程,任何一个项目都要遵循 Global rules,但如果创建了一个单独的项目,比如一个查找附近咖啡馆的项目,那么就可以针对这个项目设置 Local rules,只对这个项目生效。

怎么设置 Local rules,首先得在原来创建的用来存放 windsurf 的文件夹内再创建一个文件夹,以项目名称命名(前者是根目录,后者是子目录),打开这个文件夹,就能使用 Local rules 创建。如果现在没有打开任何项目文件夹,那么 Local rules 便无法创建。

创建查找咖啡馆网页

这里我要创建一个查找附近咖啡馆和书店的网页(参考 AI  蓝皮书 2.0),那么这就用到地图搜索的 MCP 了。MCP 是个啥,简言之就是用来和大模型交互的插件,大模型本身是个脑子,只有思维能力和输出文本的能力,加了各种 MCP 后就能用脑子来干活,MCP 就是工具。

地图搜索 MCP 就是给大模型添加了搜索的能力。上图中我一共添加了 5 个 MCP servers ,这个待会儿一个个来讲。至于什么是 servers,这个概念其实是 client 是对应的,简言之,你调用别人,就是 client;被调用的,就是 server;这里 windsurf 就是 client,而被添加的 MCP 就是 server。

添加高德 MCP

不多说,地图搜索我添加的是高德的 MCP,怎么找呢,这方面太多了,魔搭、Smithery.ai、MCP.so… 我用的 MCP.so,打开后就能在首页看到高德。

最右面这块就是 json 格式的配置项,复制。

打开 Windsurf,打开红框位置的 configure

会在左侧文件区打开一个 mcp_config.json 的文件,代码黏贴进去即可。仔细看下面图片的格式,如果后面粘贴多个 MCP  server,最外层的 {} 和 “mcpServers”:{} 保留一个就行,其他的都删掉。

从高德的 Server Config 中看到,要求一个 api_key,这玩意得注册下高德的开发者账号,然后创建一个免费的 api_key,方法官网就有,谷歌一搜就行, 不赘述,拿到后,到 Windsurf 中,替换掉原来引号中的 api_key,点击下原来打开配置文件的 Configure 旁边的 Refresh 按钮,等待指示灯变绿,就意味着大功告成了。

这里要注意一件事:Node 自带 npm 模块,npx 是 npm 自带的指令,所以输入正常没问题。使用 Windsurf 肯定要有 Python 和 Node.js,这块正常一开始就安装了,如果报错,就把报错的信息连同代码一起复制进输入框,让 AI 帮你处理。

现在可以开始输入自己的需求了,输入框中输入任务,注意底下的模式是 Write,如果是 chat 或者 legacy 则不能写入。:

我住在杭州拱墅区五一新村,帮我推荐下附近的咖啡馆和书店,列出:

  1. 具体位置
  2. 实景图片
  3. 联系方式
  4. 开门时间

然后 Windsurf 开始调用 amap-maps 中的 maps_geo 方法查找五一新村的位置:

接着又调用了 maps_around_search 进一步搜索五一新村附近的地点:

这里要说明的是,每个 MCP 都有被定义好了的能力,这一点也可以在 MCP 被添加到 Windsurf 后查看,点击被添加的 MCP 名称,就会在展开框中显示当前 MCP 具备的能力:

By the way,Cascade 页面最下面就是过往的对话记录,如果想要重新回到原来的对话,在这里寻找即可。

生成外链分享

通过高德 MCP,Windsurf 帮我找到了五一新村的一家书店和咖啡馆,包括位置、评分、距离、商圈和交圈,但都是文字信息,我又让它帮我生成了一个可交互式的网页:

好,帮我把以上信息整理成可交互式的网页形式

一顿操作,生成了下方的样式。

当然,这个只能在本地端口上查看,想要分享给三方,得部署到一个公有 DNS 和域名上。其实 Vercel 这种也能托管,前端时代这套很成熟,但对于小白来说就很折腾了。幸好腾讯出了个一键部署的 MCP,支持静态网页部署。

MCP 名称 edgeone-pages-mcp-server,MCP.so 中可以搜到,部署也简单,无需密钥。

帮我部署到线上

等待一会儿 ⌛️,结束,成功部署,可以看到这个域名,其实是把文件传到了这个域名下面。

添加 Duckduckgo 搜索 MCP

网站虽然生成了,但是有 N 多不满意的地方,首当其中就是缺乏实景图片。Windsurf 虽然自带了搜索功能,但我还是迷之自信,想要找下有没有相关服务的 MCP。

本来各种推荐都是 Brave,刚好我用的浏览器也是 Brave。但我真的不推荐,一来要同高德一样申请账号,自己创建 api_key,创建账号的时候还得帮 visa 卡,麻烦;二来 Brave 目前似乎根本不可用(Docker 版本我没试,用的 NPX),按照提示走完后服务器压根连接不上。

最后我好不容易找到一种方案,用 smithery-ai 转过的方案(https://smithery.ai/server/@smithery-ai/brave-search):

但是,在实际运行中经常就连接不上。这里最离谱的是,即使在实际上连不上,但 Windsurf 自带的状态提示那仍然是岁月静好,绿光依旧。

所以,我觉得大爷咱还是不伺候了,直接换 Duckduckgo 得了,虽然只有基本的搜索功能,只要有保护措施的网站就凉凉,但毕竟免费啊。关于搜索,可以看两篇文章:

  • Deep Research 的 AI 搜索工具摸底:https://mp.weixin.qq.com/s/5KYl1rD4Vri8D3RhtaZbGQ
  • MCP 服务器大比拼:https://mp.weixin.qq.com/s/yWx7iC4cOZe8QSet93lKGA(结论推荐 Bing)

Duckduckgo 的部署就非常简单了,Google 搜【duckduckgo mcp】第一条的 github 项目就是:

布置也非常简单,连 api_key 都不用。但有一点要注意,这里的 command 是 uvx,而 uvx 是 uv 包的一个指令。uv 就类似于 pip 一样,是个命令行工具,只不过专门针对 Python。

所以,先安装 uv,终端中输入指令 pip install uv,回车,安装完可以用 uv help 查看是否成功。

安装完了 uv  以后,可以进一步安装 uvx ,这件事也可以直接让 Windsurf 干:

可以看到,它会自己检查当前包版本的兼容性,自己找到正确方向。但我建议,很多时候自己还是要稍微懂一点,如果一上来就让 AI 分析配置的 json 文件,它会直接把最初的 uvx 指令改成 npx。

还有坑爹的一点,无论啥操作,最好把自己的 Python 版本升到 3.10 以上,这样很多兼容性问题都能解决,命令行指令:brew install python@3.10 (Mac),或者自己从 Python 官网下载也行。

如果 uvx 也安装完了,接下来就可以安装 duckduckgo-mcp-server ,指令是 uv pip install duckduckgo-mcp-server,那么就大功告成了。

添加 Fetch MCP

最后一步是添加 Fetch MCP,Fetch 的作用就是解析特定网页,内容提取成 Markdown。来看它的实际作用:

其实 Fecth 很适合做网页保存工具。怎么添加 Fecth MCP?方法和前面一样,MCP.so 中也能直接搜到:

又是 UVX命令,幸好前面已经安装过了,所以这块影响不大。 到这里,回顾下整个的安装情况:

接下来,我们让 windsurf 添加实景图片:

让我们继续 nearby-places ,我需要你在当前的基础上,搜索当前地点的可用实景图片,fecth 保存下来,然后展示在我们自己制作的网页中

这中间会经历很多错误,比如网站禁止爬虫,或者下载失败之类。总之我只秉持一个原则:告诉它图片没有下载成功,重新尝试。

最后的最后,我直接让它用免费网站的示例图了(因为失败次数太多了…)

效果如下:

网址体验:https://mcp.edgeone.site/share/tw5SPul6W8Jx2K19diKuU

其实还有非常多、非常多要优化的地方,比如高德的具体地图显示、更多位置信息的推荐。但本次项目的核心目的是为了练习如何添加 MCP,就不继续深入了,下次再聊。

最后要注意的地方

如果你发现程序运行了很多都没有动静,可能是它压根就没运行。

如图所示,右侧有个 Not auto-run,这种时候一般要自己打开终端运行,你也可以更改它的默认逻辑,点击底部的 user allow list,自己选择执行逻辑,我比较懒,直接选了 Auto 。

本文由人人都是产品经理作者【善宝橘】,微信公众号:【善宝橘】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。

题图来自Unsplash,基于 CC0 协议。