MCP插件市场
这 MCP插件市场 是一个简单的命令行界面(CLI) 用于浏览、安装、测试和删除Multi-Chain插件 编程(MCP)代理。它就像一个轻量级的扩展 商店,灵感来自VS Code的扩展库,可用于 管理本地代理工具。
为什么是插件市场?
通过附加组件扩展产品是一种公认的做法 通过市场提供这些插件,用户可以添加功能 根据需求【253161270797461†L20-L24】。但有一些重要的设计 创建市场时要做的选择:是否只列出 内部插件或接受社区提交,插件将如何 与核心产品集成,以及您将如何管理 兼容性【253161270797461†L20-L27】。你也应该决定是否 将建立自己的市场或依赖现有的市场。使用a 现有的市场提供了曝光和信任,但也做出了牺牲 控制提交的内容及其定价【253161270797461†L61-L67】。 建立自己的市场可以让你控制,但需要更多 邀请社区提交意见书以快速 种植选择【253161270797461†L68-L72】。
最后,市场体验必须是开放的,易于使用 开发人员和客户:提交和审查流程应 简单明了,导航应该直观,分类 应组织良好【253161270797461†L121-L134】。添加评级和 评论提供了社会证明,并帮助用户做出明智的决定。
特性
- 列出可用插件 –显示插件目录
它们的名称、版本和描述。
- 安装插件 –从本地包文件安装插件
进入代理人的 plugins/ 目录。安装只需复制 将插件文件夹添加到本地环境。
- 卸载插件 –删除插件及其文件。
- 测试插件 –运行插件的内置测试函数(如果
提供)以验证其是否正常工作。
- 搜索插件 –按关键字过滤插件。
安装
- 克隆此存储库,并可选择创建虚拟环境:
python3 -m venv venv
source venv/bin/activate- 安装依赖项:
pip install -r requirements.txt用法
使用CLI管理MCP插件。以下命令是 可用:
# List available (remote) plugins
python -m mcp_plugin_marketplace.cli list
# Install a plugin from a local zip file
python -m mcp_plugin_marketplace.cli install path/to/plugin.zip
# Uninstall a plugin by name
python -m mcp_plugin_marketplace.cli uninstall plugin_name
# Test a plugin
python -m mcp_plugin_marketplace.cli test plugin_name插件必须实现一个简单的接口:它们应该是Python 带有a的包裹 manifest.json 描述插件的文件(名称, 版本、描述)和a plugin.py 模块暴露 run_test() 市场使用的功能 test 命令。看 这 sample_plugin 以目录为例。
运作原理
插件存储在名为 plugins_installed/ 在你的 主目录。市场从以下位置读取插件元数据 manifest.json 文件,允许它列出已安装的插件。它也 从JSON文件加载可用插件的目录(您可以 配置源)。安装插件会复制插件文件夹 融入当地环境;卸载会将其删除。
CLI是用 click 并使用标准的Python文件操作。 确实如此 不 默认情况下从远程服务器下载插件; 相反,它希望您提供一个本地存档。未来 版本,您可以实现远程下载和身份验证。
局限性和未来工作
这个市场提供了一个基本的脚手架,不能处理 版本冲突、插件之间的依赖关系或更新 通知。它不会对插件进行签名或验证签名。这 插件测试系统只调用一个 run_test() 功能和 假设插件可以安全执行。制作此工具 您应该准备好实施安全检查、版本和依赖关系 管理、远程目录集成和web UI。
参考文献
- 附加市场 –通过市场提供插件
用户只在需要时添加功能,但这需要做出决定 关于范围(内部与社区)和兼容性管理【253161270797461†L20-L27】。
- 市场设计选择 –建立自己的市场
控制,但需要更多的努力;利用现有市场 提供曝光但控制较少【253161270797461†L61-L67】。打开 市场到社区的提交可以快速扩展您的 目录【253161270797461†L68-L72】。
- 用户体验 –市场应该是可见的,易于访问
使用简单的工具为开发人员和客户导航 提交流程和直观搜索【253161270797461†L121-L134】。
