MCP极简开发

MCP极简开发
🖥️ MCP核心原理
“MCP(模型上下文协议)是一个重要的技术框架,旨在提高多种应用程序之间的互操作性和安全性。”

什么是MCP?
模型上下文协议(Model Context Protocol,MCP) 是一个用于定义和管理不同模型之间交互的协议。
该协议在多个领域有广泛应用,包括安全威胁分析与未来研究方向。
MCP的核心架构
MCP的架构包含多个组件,其中包括API和MCP服务器。
这些组件共同支持数据处理与交互。
MCP的原理介绍
MCP的核心功能
允许不同模型间进行高效的上下文共享和交互。
提供了一种标准化的方式来访问和管理模型的状态。
MCP的开发与配置
开发环境配置
使用pip安装所需依赖:

bash
Copy
pip install uv
使用PowerShell安装:

bash
Copy
powershell -ExecutionPolicy ByPass -c “irm https://astral.sh/uv/install.ps1|iex"
使用uv的优势
显著提升包管理速度,适合频繁依赖管理的项目。
提供现代化依赖管理,优化开发体验。
有效避免依赖冲突,简化MCP项目的开发流程。
天气查询的MCP Server的开发
项目初始化步骤
项目初始化:
bash
Copy
uv init
创建虚拟环境:
bash
Copy
uv venv
激活虚拟环境:
bash
Copy
.venv\Scripts\activate
安装依赖:
bash
Copy
uv add mcp httpx
Server主程序编写
使用FastMCP类创建天气查询服务器。
通过@mcp.tool()装饰器定义工具函数。
使用httpx进行异步天气API请求。
进行异常处理和错误信息格式化。
实现JSON数据解析与格式化输出天气信息。
测试Server
在Trae的对话窗口中测试天气查询功能,确保能够成功返回数据。
MCP Client的开发
Client开发准备
安装依赖:
bash
Copy
uv add openai python-dotenv
配置环境变量,创建.env文件并添加:
text
Copy
BASE_URL=https://api.siliconflow.cn/v1
MODEL=Pro/deepseek-ai/DeepSeek-V3
API_KEY=“your api_key”
Client程序编写
使用AsyncExitStack管理异步资源。
通过stdio_client建立MCP服务器通信。
集成OpenAI接口,实现工具调用对话。
提供交互式命令行聊天接口。
Client测试
启动Client与Server进行测试,确保功能正常。
MCP Server的调试
Inspector工具
Inspector 是专为测试和调试MCP Server而设计的开发者工具。
提供交互式界面,方便开发者连接并测试MCP Server,监控运行状态和日志信息。
启动Inspector
在项目文件夹下运行以下命令:
bash
Copy
npx @modelcontextprotocol/inspector uv run weather.py
测试功能
在Inspector的Tools标签页下,输入测试城市名称(如“Wuhan”)并查看返回结果。
MCP Server的高级开发
基于SSE的MCP Server的开发
创建文件及修改:

将client.py和main.py删除,创建src文件夹并移动weather.py。
修改weather.py以使用SSE格式:
python
Copy
mcp.run(transport=‘sse’)
运行测试:

启动Inspector并连接后进行测试,确保返回结果。
MCP Server的上线发布
获取API Token并配置文件。
修改项目配置文件pyproject.toml,填入打包信息。
安装打包工具并上传项目:
bash
Copy
uv pip install build twine
python -m build
python -m twine upload dist/*
在Cline上应用MCP Server的案例
使用GitHub MCP Server进行仓库管理查询。
官方GitHub仓库地址:GitHub MCP Server。
🐳 在Cline上应用MCP Server的案例
8.1.1 基于GitHub MCP的仓库管理查询

  1. 获取GitHub的API token
    首先要进入 GitHub 个人访问令牌页面,创建一个访问令牌。

  2. 项目克隆及编译
    克隆GitHub上的源码到本地,并使用以下命令将其编译为二进制文件:

bash
Copy
go build -o github-mcp-server
3. 配置GitHub MCP的Json文件
进入Cline的MCP配置界面,在配置界面中粘贴以下代码。注意将“/path/to/github-mcp-server”替换为实际的项目构建路径,将 <YOUR_TOKEN> 替换为你的实际的GitHub API Token。

json
Copy
{
“mcp”: {
“servers”: {
“github”: {
“command”: “/path/to/github-mcp-server”,
“args”: [“stdio”],
“env”: {
“GITHUB_PERSONAL_ACCESS_TOKEN”: “<YOUR_TOKEN>”
}
}
}
}
}
4. GitHub MCP的测试
进入Cline的对话框,询问“我的github名叫xxx,我的github下面有哪些仓库”,可以看到Cline调用了GitHub的MCP工具,并列出了你的GitHub上的仓库。

8.1.2 基于Figma MCP的原型设计

  1. 获取Figma的API token
    访问Figma的官网 Figma官网,进入Settings设置中的Security选项卡下,创建一个token。

  2. 获取Figma UI页面的链接
    进入Figma的UI设置页面,右键页面,在下拉框的Copy/Paste as中选择Copy link to selection,保存这个链接备用。

  3. 配置Figma MCP的Json文件
    进入Cline的MCP配置界面,在配置界面中粘贴以下代码。注意将 <YOUR_TOKEN> 替换为你的实际的Figma Token。

json
Copy
{
“mcpServers”: {
“Framelink Figma MCP”: {
“command”: “cmd”,
“args”: $
“/c”,
“npx”,
“-y”,
“figma-developer-mcp”,
“–figma-api-key=”,
“–stdio”
$
}
}
}
4. Figma MCP的测试
在Cline聊天中输入“将我的这个页面1:1的复现出来,ui设计链接为 Figma页面链接”,可以看到Cline调用了Figma MCP的工具,并设计出了网页。

8.2.1 基于ArXiv MCP的论文搜索查询下载

  1. 配置Arxiv MCP的Json文件
    进入Trae的MCP手动配置界面,在配置界面中粘贴以下代码。注意将“/path/to/paper/storage”替换为你想要保存的实际路径。

json
Copy
{
“mcpServers”: {
“arxiv-mcp-server”: {
“command”: “uv”,
“args”: $
“tool”,
“run”,
“arxiv-mcp-server”,
“–storage-path”, “/path/to/paper/storage”
$
}
}
}
2. Arxiv MCP的测试
进入Trae的对话框内,输入“查找一下关于xxx的论文”,可以看到Trae调用了Arxiv MCP进行搜索、下载、读取等工具,并返回了结果。

8.2.2 基于Firecrawl MCP的网络信息抓取

  1. 获取Firecrawl的API Key
    访问Firecrawl的官网 Firecrawl官网,进入API Keys设置中,点击“Create API Key”,创建一个Key。

  2. 配置Firecrawl MCP的Json文件
    进入Trae的MCP手动配置界面,在配置界面中粘贴以下代码。注意将“YOUR-API-KEY”替换为你实际的Firecrawl的key。

json
Copy
{
“mcpServers”: {
“firecrawl-mcp”: {
“command”: “npx”,
“args”: " − y " , " f i r e c r a w l − m c p " "-y", "firecrawl-mcp" "y","firecrawlmcp",
“env”: {
“FIRECRAWL_API_KEY”: “YOUR-API-KEY”
}
}
}
}
3. Firecrawl MCP的测试
进入Trae的对话框内,输入“爬取这个网站的信息www.xxx,并总结一下内容”,可以看到Trae调用了Firecrawl MCP的爬取工具,并返回了爬取的结果。

8.2.3 基于Xmind MCP的思维导图整理

  1. 安装依赖包
    在命令行中输入以下命令,安装所需要的依赖:

bash
Copy
npm install @modelcontextprotocol/sdk adm-zip zod
2. 配置Xmind MCP的Json文件
进入Trae的MCP手动配置界面,在配置界面中粘贴以下代码。注意将“/Users/alex/XMind”替换为你实际的Xmind保存目录。

json
Copy
{
“mcpServers”: {
“xmind”: {
“command”: “npx”,
“args”: $
“-y”,
“@41px/mcp-xmind”,
“E:\code_demo\MCP_demo\text”
$
}
}
}
3. Xmind MCP的测试
进入Trae的对话框内,输入“总结某个xxx思维导图的内容”,可以看到Trae调用了Xmind MCP工具,并返回了读取总结后的结果。

8.2.4 基于无影AgentBayMCP的思维导图整理

  1. 登录无影agent bay官网获取无影agent bay MCP的Json文件
    登录后获取必要的Json代码和密钥。

  2. 在Trae中配置无影agentbayMCP的Json文件
    json
    Copy
    {
    “mcpServers”: {
    “wuying_mcp_server”: {
    “command”: “cmd”,
    “args”: $
    “/c”,
    “npx”,
    “-y”,
    “wuying-agentbay-mcp-server”
    $,
    “env”: {
    “APIKEY”: “粘贴在官网申请到的API key”
    }
    }
    }
    }
    8.2.6 基于Filesystem MCP的本地文件管理

  3. 配置Filesystem MCP的Json文件
    进入Trae的MCP手动配置界面,在配置界面中粘贴以下代码。注意将“/Users/username/Desktop”替换为你实际想要给AI操作的文件夹。

json
Copy
{
“mcpServers”: {
“filesystem”: {
“command”: “npx”,
“args”: $
“-y”,
“@modelcontextprotocol/server-filesystem”,
“/Users/username/Desktop”
$
}
}
}
2. Filesystem MCP测试结果展示
进入Trae的对话框内,输入“使用工具查询我的目录E:\WORK\写书\智能体进阶:MCP开发与应用\配套资料下有哪些文件”,可以看到Trae调用了Filesystem MCP的list_directory工具,并列出了文件夹下面的文件。继续询问“将Demo这个ppt文件改名为可学教程示例”,可以看到Trae调用了Filesystem MCP的move_file工具,并将PPT文件成功重命名。

🌍 旅游规划Agent
人工旅游规划的困难
信息处理效率低下
工作流程高度依赖人工经验:难以处理海量旅游数据,增加了人为错误的风险。
预订和行程细节确认:在确认行程时,易出现失误,影响整体体验。
个性化需求应对不足:难以满足游客日益增长的个性化需求。
突发情况应变能力弱:对天气变化、景点临时关闭等状况反应迟缓,缺乏灵活调整的能力。
💑 约会地点选择Agent
影响约会地点选择的现实因素
因素 描述
预算限制 情侣双方在预算上的考量和期望可能存在差异,在有限预算内找到双方满意的地点成为挑战。
兴趣不一致 情侣双方拥有不同的兴趣爱好,导致约会地点选择上的分歧。
时间安排冲突 快节奏的生活中,情侣双方可能因工作或生活作息不同,难以找到共同的空闲时间。
新鲜感缺失 对于交往已久的情侣,约会地点可能因重复而失去新鲜感,导致选择困难。
☁️ 每日天气推送Agent
智能天气助手
工作流程
实时精准的天气推送:提供个性化的穿衣建议和智能出行规划提醒。
极端天气预警通知:随时随地为用户提供精准快速的天气信息,确保出行安全。
🍔 附近餐厅推荐Agent
工作流程
选择困难症:在众多美食选择中,用户可能会感到困惑。
信息过载:多种美食APP、评价、排行榜让人眼花缭乱。
决策疲劳:反复比较菜品、价格、评价,担心选择错误。
✈️ 航班查询Agent
核心API接口
API接口 描述
机场未来天气 提供未来天气信息,帮助行程调整。
航班实时动态 实时更新航班状态,确保用户获取最新信息。
乘机舒适度 分析乘机过程中的舒适度,为用户提供建议。
航班中转方案 提供中转航班信息,帮助用户选择最佳出行方案。
机票价格服务 实时查询机票价格,帮助用户做出经济决策。
飞机实时定位 提供飞机的实时定位信息,方便行程管理和接送安排。
📚 自动上传笔记Agent
信息碎片化时代的挑战
主要问题
信息爆炸:面临海量的碎片化信息,难以有效筛选和消化。
知识碎片化:零散的知识点难以形成系统化的结构。
回顾困难:有效回顾已记录的内容变得复杂。
💳 智能记账Agent
记账的重要性
传统记账的困难
耗时费力:手动记录需要大量时间,容易遗漏。
分类困难:难以确定支出类别,影响预算控制。
智能记账的优势
实时更新:随时随地记录支出,避免遗漏。
数据分析:自动生成报表,帮助用户做出明智的财务决策。
安全性高:加密技术保护财务信息,减少隐私泄露风险。
📰 每日资讯获取Agent
热点新闻的关键指标
重要性
即时性与短暂性:热点新闻如浪花般转瞬即逝,但也具有深远影响。
高度聚焦性:迅速吸引公众注意力,成为社会讨论的中心。
显著影响力:塑造公众认知,影响企业与平台的决策。
🧠 结构化思考
“结构化思考是一种促进复杂问题解决的思维方式,通过有序的分析与反思,提高决策效率与方案质量。”

产品研发的挑战
在产品研发过程中,面对复杂的用户反馈和需求,常常难以厘清思路。通过结构化思维过程,我们能够促进大语言模型(Large Language Model,简称LLM)进行动态分析和深度反思,从而高效解决复杂问题。

复杂问题的需求
复杂情景决策:在复杂环境下做出有效决策。
问题诊断:对问题进行系统分析和诊断。
创意开发:在创意生成过程中保持系统性思维。
传统方法的局限性
传统的方法往往缺乏系统性,导致决策效率和方案质量受到影响。

解决方案
为了解决上述挑战,提出了以下策略:

解决方案 描述
逐步推理 通过分步分析来理清思路和问题。
结构化分解 将复杂问题分解为更小的可处理部分。
动态思考 根据反馈不断调整思路和方案。
优势与价值
提升复杂问题解决效率与质量:通过结构化思考,能够迅速厘清思路并辅助关键决策的制定。
促进思维链构建:建立系统性的思维链条,有助于更全面地解决问题。
反思机制的应用:通过反思机制持续优化方案质量,确保决策的有效性。
自动配图Agent
Wanx文生图MCP
Wanx文生图MCP是一种快速高效创作视觉内容的工具,能够告别费时费力的图像搜索与设计,直接将文本转化为精美图像。

传统视觉内容创作的痛点
在视觉内容创作过程中,常见的挑战包括:

新品发布会海报制作耗时费力。
自媒体文案配图搜索费时。
自行设计需要专业技能。
效率提升
通过Wanx文生图MCP,用户可以实现秒级响应,快速生成图像,极大提升视觉内容创作效率。适用于多种场景,如海报和自媒体等。

效率提升过程 描述
输入文本 用户输入文本描述。
处理 系统分析输入并生成图像。
生成图像 输出精美图像。
平台与配置
平台:Trae
详细配置:参见相关资料。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值