01 - MCP 概念
约 670 字大约 2 分钟
2025-03-30
MCP(Model Context Protocol)又被称之为模型上下文协议,MCP 就像是 AI 世界中的 “通用插座”,为 AI 模型与外部数据源和工具之间搭建起沟通的桥梁,致力于标准化应用程序为 LLM 提供上下文的方式,让不同的 AI 组件和系统能够顺畅连接、协同工作。这个就有点像Jdbc 协议一样,通过定义规范,让中间件厂商进行实现。
我们开发的大模型应用程序可以通过MCPClient去访问外部资源,并且是典型的Client-Server架构。实现了大模型工具实现和工具调用的分离,就像通过一个第三方管家,来统一管理函数调用,在我看来MCP就是比FunctionCalling的更高一级抽像,也是实现智能体Agent的基础。
2、npx和uvx
npx是nodeJs下的一个工具可以执行一些Ts或者JS脚本甚至应用程序,uvx的功能则和他很类似是python环境下执行脚本的工具,因为我们使用的文件服务器MCP服务端是使用Ts代码写的,而访问数据库的MCP服务端程序是用Python写的所以我们必须去安装下这两个命令以支持MCPClient调用,简单来说,使用 TypeScript 编写的 MCP server 可以通过 npx 命令来运行,使用 Python 编写的 MCP server 可以通过 uvx 命令来运行。
2.1、npx
npx是Node.js的一个命令行工具,用于直接运行 npm 包中的命令,无需全局安装或显式指定路径。
安装nodejs就默认自带这个工具了。 https://nodejs.org/zh-cn
npx 的核心价值在于 简化开发流程,通过临时安装、版本指定和依赖隔离,解决了全局包污染和版本冲突问题。
临时使用场景:无需全局安装即可运行包,执行后自动清理临时文件。 解决依赖冲突: 优先使用项目本地安装的包版本,避免全局版本冲突
可以直接试用npx -v 查看版本
C:\Windows\System32>npx -v
10.8.2
2.2、uvx
uvx 则需要安装,
uv 类似于anaconda ,是python 虚拟环境管理软件,安装上之后,就有了uvx
下载uv-installer.ps1,并执行下面命令,之后就安装上了 uvx
https://gitee.com/starplatinum111/install_conf/blob/master/uv-installer.ps1
C:\Windows\System32>uvx -V
uv-tool-uvx 0.5.21 (3478c068b 2025-01-17)
2.3 相关链接
MCP 官网
https://modelcontextprotocol.io/sdk/java/mcp-server
SDK示例:
typescript:https://github.com/modelcontextprotocol/typescript-sdk
python:https://github.com/modelcontextprotocol/python-sdk
2.4、直接使用npx 和 uvx 环境下的MCP-Server(stdIo)
TODO...