1.首先主机应用程序启动并初始化MCP客户端,每个客户端与一个MCP服务器建立专属连接,确保通信链路的稳定性与安全性。
2.在系统初始化阶段,MCP Client首先从MCP Server获取可用的工具清单和能力描述,让模型知道有哪些可以调用的外部技能。
3.当用户输入一个问题后,MCP Client会将这些工具描述采用Function Calling格式传给LLM,让模型具备调用外部工具的能力。
4.LLM根据当前对话的上下文、用户问题意图以及工具能力描述,判断是否需要使用外部工具,并决定调用哪一个工具、传入什么参数。
5.如果模型发起调用请求,MCP Client会根据模型的选择,通过MCP Server发起标准化的工具调用请求,由MCP Server执行实际工具逻辑后,将结果返回给MCP Client。
6.当工具的执行结果被传回LLM后,由模型将这个结果与原始用户问题以及已有的上下文等信息进行整合,生成符合用户需求的自然语言回应。
7.最后,MCP Client将模型生成的回答展示给用户。