旅游网站建设 策划书IT周末做网站违反制度么
2026/2/4 9:32:23 网站建设 项目流程
旅游网站建设 策划书,IT周末做网站违反制度么,app怎么制作流程,网站建设公司讯息MCP是AI Agent调用工具的标准化协议#xff0c;解决了传统MN集成难题。通过统一接口#xff0c;实现工具可发现、可使用#xff0c;拓展大模型能力边界。本文详解MCP原理、执行流程#xff0c;并以Cherry Studio为例演示实践应用#xff0c;帮助开发者理解并应用这一关键技…MCP是AI Agent调用工具的标准化协议解决了传统M×N集成难题。通过统一接口实现工具可发现、可使用拓展大模型能力边界。本文详解MCP原理、执行流程并以Cherry Studio为例演示实践应用帮助开发者理解并应用这一关键技术。不管是搞 AI Coding还是做 AI 应用今年有个绕不开的技术点MCP。很多同学第一次接触 MCP感觉云里雾里到现在可能也是一知半解。本文将用相对通俗的语言配合一些动图让大家不仅知道 MCP 是什么、为什么用通过 Cherry Studio 让大家“看见”MCP 的过程理论与实践相结合。MCP 是什么简单讲 MCP 是一个 AI Agent 调用工具的协议。MCP 的客户端和服务端建立连接然后可以通过服务端调用工具执行各种操作。为什么需要 MCP解决传统的 M × N 集成噩梦在 MCP 出现之前AI Agent 连接外部工具基本就是“硬编码”一对一手工对接。比如说你有 M 个 AI 应用N 个工具(数据库、文件系统啥的)那就得写 M × N 个集成模块。每对接一个新工具,都要从头适配一遍费时费力。MCP 怎么解决的?引入一个通用协议就像 USB-C 标准一样。有了 MCPM 个 AI 应用只需实现一次 MCP 客户端N 个工具只需实现一次 MCP 服务器。一次对接解锁整个生态——这才是真正的效率提升!标准化工具的发现和使用MCP 的核心在于让工具可被发现、可被使用尤其是跨多个 Agent、模型或平台时。主要有以下几点标准化接口:MCP 提供统一框架让 AI 模型与外部工具无缝交互工具可发现性:标准化了工具的定义、托管和向 LLM 暴露的方式LLM 能轻松发现可用工具、理解架构并使用可靠性和可执行性:确保工具可靠可用、可发现、可执行,无需手动定制集成还能提供调用前的审批和审计工作流拓展能力边界大语言模型虽然很智能但也不是万能的。很多任务需要调用各种工具来实现。有了 MCP 就拓展了大模型的能力边界它能够获取更多信息能够执行更多复杂的操作。MCP 的原理整个过程就像“大老板用户找管家AI办事管家指挥专业工匠MCP Server干活”的过程。核心角色介绍User用户下达命令的大老板。MCP Host (客户端如 Cursor、Cherry Studio、Qoder等)AI 的运行环境相当于“管家办公室”。LLM (大模型如图中的 deepseek)AI 的大脑负责思考和决策。MCP Server (服务端)这是一个百宝箱里面装着各种**MCP Tools (工具)**专门干脏活累活比如查网页、读文件、查数据库。执行过程第一阶段提出需求与分析 (步骤 1-3)Input (输入) 你用户问了一个需要查资料或操作电脑的问题比如“帮我查查今天的天气”。Select MCP tool (选择工具) AI 大脑LLM一看发现自己不知道今天天气心想“我得用个天气工具才行”。Return MCP tool (确认工具)AI 告诉管家系统MCP Client“我要用‘天气查询’这个工具准备调用它。”第二阶段安全审批 (步骤 4)MCP Tool approval (工具审批) 这一步很关键 为了安全管家会转头问你“老板AI 想要调用‘天气查询’工具或者读取你的文件你同意吗”只有你点了“同意”流程才会继续。第三阶段干活与反馈 (步骤 5-8)Request tool call (请求调用) 获得批准后管家向存放工具的百宝箱MCP Server发出指令。Invoke MCP tool (执行工具) 百宝箱里的“天气工具”开始工作比如联网去气象局抓取数据。Tool Output (工具产出) 工具干完活了拿到结果例如“今天北京晴25度”。Return output (返回结果) 百宝箱把这个结果打包传回给管家系统。第四阶段整理汇报 (步骤 9-10)Send output and query to LLM (发送结果给 AI) 管家拿着你最初的问题和工具查到的结果一起交给 AI 大脑。就像对 AI 说“老板问天气的工具查到了是25度你组织下语言回复吧。”Generate (生成回答) AI 大脑结合数据写出一段通顺的人话“杭州今天天气晴朗气温25度…”最终展示给你。理论结合实践为了“看见” MCP 的执行过程我们采用 Cherry Studio 做演示。传送门https://www.cherry-ai.com/设置 - MCP - ModelScope 获取魔搭的密钥粘贴到这里。在网页版「开启」想用的 MCP 服务12306 车票查询https://www.modelscope.cn/mcp/servers/Joooook/12306-mcp时间服务https://www.modelscope.cn/mcp/servers/modelcontextprotocol/time在 Cherry Studio 中「获取服务器」并且「」启用。回到对话框中选择可能会用到的 MCP。直接对话可以看到 Cherry Studio 调用对应 MCP 的参数。具体的请求参数如下{ model: google/gemini-3-pro-preview, temperature: 1, messages: [ { role: system, content: In this environment you have access to a set of tools you can use to answer the users question. \\\nYou can use one tool per message, and will receive the result of that tool use in the users response. You use tools step-by-step to accomplish a given task, with each tool use informed by the result of the previous tool use.\n\n## Tool Use Formatting\n\nTool use is formatted using XML-style tags. The tool name is enclosed in opening and closing tags, and each parameter is similarly enclosed within its own set of tags. Heres the structure:\n\ntool_use\n name{tool_name}/name\n arguments{json_arguments}/arguments\n/tool_use\n\nThe tool name should be the exact name of the tool you are using, and the arguments should be a JSON object containing the parameters required by that tool. For example:\ntool_use\n namepython_interpreter/name\n arguments{\code\: \5 3 1294.678\}/arguments\n/tool_use\n\nThe user will respond with the result of the tool use, which should be formatted as follows:\n\ntool_use_result\n name{tool_name}/name\n result{result}/result\n/tool_use_result\n\nThe result should be a string, which can represent a file or any other output type. You can use this result as input for the next action.\nFor example, if the result of the tool use is an image file, you can use it in the next action like this:\n\ntool_use\n nameimage_transformer/name\n arguments{\image\: \image_1.jpg\}/arguments\n/tool_use\n\nAlways adhere to this format for the tool use to ensure proper parsing and execution.\n\n## Tool Use Examples\n\nHere are a few examples using notional tools:\n---\nUser: Generate an image of the oldest person in this document.\n\nA: I can use the document_qa tool to find out who the oldest person is in the document.\ntool_use\n namedocument_qa/name\n arguments{\document\: \document.pdf\, \question\: \Who is the oldest person mentioned?\}/arguments\n/tool_use\n\nUser: tool_use_result\n namedocument_qa/name\n resultJohn Doe, a 55 year old lumberjack living in Newfoundland./result\n/tool_use_result\n\nA: I can use the image_generator tool to create a portrait of John Doe.\ntool_use\n nameimage_generator/name\n arguments{\prompt\: \A portrait of John Doe, a 55-year-old man living in Canada.\}/arguments\n/tool_use\n\nUser: tool_use_result\n nameimage_generator/name\n resultimage.png/result\n/tool_use_result\n\nA: the image is generated as image.png\n\n---\nUser: \What is the result of the following operation: 5 3 1294.678?\\n\nA: I can use the python_interpreter tool to calculate the result of the operation.\ntool_use\n namepython_interpreter/name\n arguments{\code\: \5 3 1294.678\}/arguments\n/tool_use\n\nUser: tool_use_result\n namepython_interpreter/name\n result1302.678/result\n/tool_use_result\n\nA: The result of the operation is 1302.678.\n\n---\nUser: \Which city has the highest population , Guangzhou or Shanghai?\\n\nA: I can use the search tool to find the population of Guangzhou.\ntool_use\n namesearch/name\n arguments{\query\: \Population Guangzhou\}/arguments\n/tool_use\n\nUser: tool_use_result\n namesearch/name\n resultGuangzhou has a population of 15 million inhabitants as of 2021./result\n/tool_use_result\n\nA: I can use the search tool to find the population of Shanghai.\ntool_use\n namesearch/name\n arguments{\query\: \Population Shanghai\}/arguments\n/tool_use\n\nUser: tool_use_result\n namesearch/name\n result26 million (2019)/result\n/tool_use_result\nAssistant: The population of Shanghai is 26 million, while Guangzhou has a population of 15 million. Therefore, Shanghai has the highest population.\n\n## Tool Use Available Tools\nAbove example were using notional tools that might not exist for you. You only have access to these tools:\ntools\n\ntool\n nametool-12306_M-get_current_date_06mcp/name\n description获取当前日期以上海时区Asia/Shanghai, UTC8为准返回格式为 \yyyy-MM-dd\。主要用于解析用户提到的相对日期如“明天”、“下周三”提供准确的日期输入。/description\n arguments\n {\jsonSchema\:{\type\:\object\,\properties\:{},\additionalProperties\:false,\$schema\:\http://json-schema.org/draft-07/schema#\}}\n /arguments\n/tool\n\n\ntool\n nametool-12306_M-get_stations_code_in_city_06mcp/name\n description通过中文城市名查询该城市 **所有** 火车站的名称及其对应的 station_code结果是一个包含多个车站信息的列表。/description\n arguments\n {\jsonSchema\:{\type\:\object\,\properties\:{\city\:{\type\:\string\,\description\:\中文城市名称例如\\\北京\\\, \\\上海\\\\}},\required\:[\city\],\additionalProperties\:false,\$schema\:\http://json-schema.org/draft-07/schema#\}}\n /arguments\n/tool\n\n\ntool\n nametool-12306_M-get_station_code_of_citys_06mcp/name\n description通过中文城市名查询代表该城市的 station_code。此接口主要用于在用户提供**城市名**作为出发地或到达地时为接口准备 station_code 参数。/description\n arguments\n {\jsonSchema\:{\type\:\object\,\properties\:{\citys\:{\type\:\string\,\description\:\要查询的城市比如\\\北京\\\。若要查询多个城市请用|分割比如\\\北京|上海\\\。\}},\required\:[\citys\],\additionalProperties\:false,\$schema\:\http://json-schema.org/draft-07/schema#\}}\n /arguments\n/tool\n\n\ntool\n nametool-12306_M-get_station_code_by_names_06mcp/name\n description通过具体的中文车站名查询其 station_code 和车站名。此接口主要用于在用户提供**具体车站名**作为出发地或到达地时为接口准备 station_code 参数。/description\n arguments\n {\jsonSchema\:{\type\:\object\,\properties\:{\stationNames\:{\type\:\string\,\description\:\具体的中文车站名称例如\\\北京南\\\, \\\上海虹桥\\\。若要查询多个站点请用|分割比如\\\北京南|上海虹桥\\\。\}},\required\:[\stationNames\],\additionalProperties\:false,\$schema\:\http://json-schema.org/draft-07/schema#\}}\n /arguments\n/tool\n\n\ntool\n nametool-12306_M-get_station_by_telecode_06mcp/name\n description通过车站的 station_telecode 查询车站的详细信息包括名称、拼音、所属城市等。此接口主要用于在已知 telecode 的情况下获取更完整的车站数据或用于特殊查询及调试目的。一般用户对话流程中较少直接触发。/description\n arguments\n {\jsonSchema\:{\type\:\object\,\properties\:{\stationTelecode\:{\type\:\string\,\description\:\车站的 station_telecode (3位字母编码)\}},\required\:[\stationTelecode\],\additionalProperties\:false,\$schema\:\http://json-schema.org/draft-07/schema#\}}\n /arguments\n/tool\n\n\ntool\n nametool-12306_M-get_tickets_06mcp/name\n description查询12306余票信息。/description\n arguments\n {\jsonSchema\:{\type\:\object\,\properties\:{\date\:{\type\:\string\,\minLength\:10,\maxLength\:10,\description\:\查询日期格式为 \\\yyyy-MM-dd\\\。如果用户提供的是相对日期如“明天”请务必先调用 get-current-date 接口获取当前日期并计算出目标日期。\},\fromStation\:{\type\:\string\,\description\:\出发地的 station_code 。必须是通过 get-station-code-by-names 或 get-station-code-of-citys 接口查询得到的编码严禁直接使用中文地名。\},\toStation\:{\type\:\string\,\description\:\到达地的 station_code 。必须是通过 get-station-code-by-names 或 get-station-code-of-citys 接口查询得到的编码严禁直接使用中文地名。\},\trainFilterFlags\:{\type\:\string\,\pattern\:\^[GDZTKOFS]*$\,\maxLength\:8,\default\:\\,\description\:\车次筛选条件默认为空即不筛选。支持多个标志同时筛选。例如用户说“高铁票”则应使用 \\\G\\\。可选标志[G(高铁/城际),D(动车),Z(直达特快),T(特快),K(快速),O(其他),F(复兴号),S(智能动车组)]\},\earliestStartTime\:{\type\:\number\,\minimum\:0,\maximum\:24,\default\:0,\description\:\最早出发时间0-24默认为0。\},\latestStartTime\:{\type\:\number\,\minimum\:0,\maximum\:24,\default\:24,\description\:\最迟出发时间0-24默认为24。\},\sortFlag\:{\type\:\string\,\default\:\\,\description\:\排序方式默认为空即不排序。仅支持单一标识。可选标志[startTime(出发时间从早到晚), arriveTime(抵达时间从早到晚), duration(历时从短到长)]\},\sortReverse\:{\type\:\boolean\,\default\:false,\description\:\是否逆向排序结果默认为false。仅在设置了sortFlag时生效。\},\limitedNum\:{\type\:\number\,\minimum\:0,\default\:0,\description\:\返回的余票数量限制默认为0即不限制。\},\format\:{\type\:\string\,\pattern\:\^(text|csv|json)$\,\default\:\text\,\description\:\返回结果格式默认为text建议使用text与csv。可选标志[text, csv, json]\}},\required\:[\date\,\fromStation\,\toStation\],\additionalProperties\:false,\$schema\:\http://json-schema.org/draft-07/schema#\}}\n /arguments\n/tool\n\n\ntool\n nametool-12306_M-get_interline_tickets_06mcp/name\n description查询12306中转余票信息。尚且只支持查询前十条。/description\n arguments\n {\jsonSchema\:{\type\:\object\,\properties\:{\date\:{\type\:\string\,\minLength\:10,\maxLength\:10,\description\:\查询日期格式为 \\\yyyy-MM-dd\\\。如果用户提供的是相对日期如“明天”请务必先调用 get-current-date 接口获取当前日期并计算出目标日期。\},\fromStation\:{\type\:\string\,\description\:\出发地的 station_code 。必须是通过 get-station-code-by-names 或 get-station-code-of-citys 接口查询得到的编码严禁直接使用中文地名。\},\toStation\:{\type\:\string\,\description\:\出发地的 station_code 。必须是通过 get-station-code-by-names 或 get-station-code-of-citys 接口查询得到的编码严禁直接使用中文地名。\},\middleStation\:{\type\:\string\,\default\:\\,\description\:\中转地的 station_code 可选。必须是通过 get-station-code-by-names 或 get-station-code-of-citys 接口查询得到的编码严禁直接使用中文地名。\},\showWZ\:{\type\:\boolean\,\default\:false,\description\:\是否显示无座车默认不显示无座车。\},\trainFilterFlags\:{\type\:\string\,\pattern\:\^[GDZTKOFS]*$\,\maxLength\:8,\default\:\\,\description\:\车次筛选条件默认为空。从以下标志中选取多个条件组合[G(高铁/城际),D(动车),Z(直达特快),T(特快),K(快速),O(其他),F(复兴号),S(智能动车组)]\},\earliestStartTime\:{\type\:\number\,\minimum\:0,\maximum\:24,\default\:0,\description\:\最早出发时间0-24默认为0。\},\latestStartTime\:{\type\:\number\,\minimum\:0,\maximum\:24,\default\:24,\description\:\最迟出发时间0-24默认为24。\},\sortFlag\:{\type\:\string\,\default\:\\,\description\:\排序方式默认为空即不排序。仅支持单一标识。可选标志[startTime(出发时间从早到晚), arriveTime(抵达时间从早到晚), duration(历时从短到长)]\},\sortReverse\:{\type\:\boolean\,\default\:false,\description\:\是否逆向排序结果默认为false。仅在设置了sortFlag时生效。\},\limitedNum\:{\type\:\number\,\minimum\:1,\default\:10,\description\:\返回的中转余票数量限制默认为10。\},\format\:{\type\:\string\,\pattern\:\^(text|json)$\,\default\:\text\,\description\:\返回结果格式默认为text建议使用text。可选标志[text, json]\}},\required\:[\date\,\fromStation\,\toStation\],\additionalProperties\:false,\$schema\:\http://json-schema.org/draft-07/schema#\}}\n /arguments\n/tool\n\n\ntool\n nametool-12306_M-get_train_route_stations_06mcp/name\n description查询特定列车车次在指定区间内的途径车站、到站时间、出发时间及停留时间等详细经停信息。当用户询问某趟具体列车的经停站时使用此接口。/description\n arguments\n {\jsonSchema\:{\type\:\object\,\properties\:{\trainCode\:{\type\:\string\,\description\:\要查询的车次 train_code例如\\\G1033\\\。\},\departDate\:{\type\:\string\,\minLength\:10,\maxLength\:10,\description\:\列车出发的日期 (格式: yyyy-MM-dd)。如果用户提供的是相对日期请务必先调用 get-current-date 解析。\},\format\:{\type\:\string\,\pattern\:\^(text|json)$\,\default\:\text\,\description\:\返回结果格式默认为text建议使用text。可选标志[text, json]\}},\required\:[\trainCode\,\departDate\],\additionalProperties\:false,\$schema\:\http://json-schema.org/draft-07/schema#\}}\n /arguments\n/tool\n\n/tools\n\n## Tool Use Rules\nHere are the rules you should always follow to solve your task:\n1. Always use the right arguments for the tools. Never use variable names as the action arguments, use the value instead.\n2. Call a tool only when needed: do not call the search agent if you do not need information, try to solve the task yourself.\n3. If no tool call is needed, just answer the question directly.\n4. Never re-do a tool call that you previously did with the exact same parameters.\n5. For tool use, MAKE SURE use XML tag format as shown in the examples above. Do not use any other format.\n\n# User Instructions\n\n\nNow Begin! If you solve the task correctly, you will receive a reward of $1,000,000. }, { role: user, content: 查询明天杭州到上海的高铁票 } ], reasoning: { effort: low }, stream: true}提示词中列举了工具的使用方法可用的工具用户的问题。其中工具使用规则部分**工具使用规则**为了完成任务请务必始终遵守以下规则1. **始终为工具提供正确的参数**。切勿将变量名作为操作参数请直接使用具体的值。2. **仅在必要时调用工具**若无需获取外部信息请勿调用搜索代理Search Agent应尝试自行解决任务。3. 如果无需调用工具请直接回答问题。4. **切勿**使用完全相同的参数重复执行之前已进行过的工具调用。5. 进行工具调用时**务必**使用如上示例所示的 XML 标签格式。严禁使用任何其他格式。# 用户指令现在开始如果你能正确完成任务将获得 1,000,000 美元的奖励。有意思的是最后还“欺骗”AI 正确完成任务能够获得 100万美元奖励。我们可以看到每次调用的参数和返回值信息。最终给出每个时间段的车次、耗时和是否有票等。当前 MCP 应用问题在实际 AI 应用中如果你开启的 MCP 工具过多时把这些工具元信息发给大模型会消耗很多 tokens。而且如果相似的 MCP 过多很容易选错。当前 MCP 协议不完善虽然MCP协议包括工具、提示词还有资源然而实际上现在绝大多数 MCP 工具只有工具没有资源和提示词。而且现在很多人封装 MCP 服务的时候只是把之前面向 Web 的 API 包装成了MCP协议给模型的调用对 AI 并不是很友好。​最后我在一线科技企业深耕十二载见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事早已在效率与薪资上形成代际优势我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我整理出这套 AI 大模型突围资料包✅AI大模型学习路线图✅Agent行业报告✅100集大模型视频教程✅大模型书籍PDF✅DeepSeek教程✅AI产品经理入门资料完整的大模型学习和面试资料已经上传带到CSDN的官方了有需要的朋友可以扫描下方二维码免费领取【保证100%免费】​​为什么说现在普通人就业/升职加薪的首选是AI大模型人工智能技术的爆发式增长正以不可逆转之势重塑就业市场版图。从DeepSeek等国产大模型引发的科技圈热议到全国两会关于AI产业发展的政策聚焦再到招聘会上排起的长队AI的热度已从技术领域渗透到就业市场的每一个角落。智联招聘的最新数据给出了最直观的印证2025年2月AI领域求职人数同比增幅突破200%远超其他行业平均水平整个人工智能行业的求职增速达到33.4%位居各行业榜首其中人工智能工程师岗位的求职热度更是飙升69.6%。AI产业的快速扩张也让人才供需矛盾愈发突出。麦肯锡报告明确预测到2030年中国AI专业人才需求将达600万人人才缺口可能高达400万人这一缺口不仅存在于核心技术领域更蔓延至产业应用的各个环节。​​资料包有什么①从入门到精通的全套视频教程⑤⑥包含提示词工程、RAG、Agent等技术点② AI大模型学习路线图还有视频解说全过程AI大模型学习路线③学习电子书籍和技术文档市面上的大模型书籍确实太多了这些是我精选出来的④各大厂大模型面试题目详解⑤ 这些资料真的有用吗?这份资料由我和鲁为民博士共同整理鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。所有的视频教程由智泊AI老师录制且资料与智泊AI共享相互补充。这份学习大礼包应该算是现在最全面的大模型学习资料了。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念‌通过动态追踪大模型开发、数据标注伦理等前沿技术趋势‌构建起前沿课程智能实训精准就业的高效培养体系。课堂上不光教理论还带着学员做了十多个真实项目。学员要亲自上手搞数据清洗、模型调优这些硬核操作把课本知识变成真本事‌​​​​如果说你是以下人群中的其中一类都可以来智泊AI学习人工智能找到高薪工作一次小小的“投资”换来的是终身受益应届毕业生‌无工作经验但想要系统学习AI大模型技术期待通过实战项目掌握核心技术。零基础转型‌非技术背景但关注AI应用场景计划通过低代码工具实现“AI行业”跨界‌。业务赋能 ‌突破瓶颈传统开发者Java/前端等学习Transformer架构与LangChain框架向AI全栈工程师转型‌。获取方式有需要的小伙伴可以保存图片到wx扫描二v码免费领取【保证100%免费】**​

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询