Iconx MCP 服务器
使用说明
-
项目简介
- 这是一个基于 Model Context Protocol (MCP) 的服务器端实现,专门用于 Iconify 图标生态的集成场景。服务器端会托管资源、注册工具并定义交互提示(Prompts),以标准化的 JSON-RPC 形式与 LLM 客户端通讯。
- 服务器核心功能包含:
- 工具(Tools)注册与执行,如搜索图标、添加图标等,LLM 可以通过调用这些工具获取动态数据或生成代码。
- 资源/数据管理能力,方便后续扩展资源读取/写入等能力。
- 通过 stdio 等传输协议提供通信能力,便于本地开发、测试及集成到开发流程中。
-
主要功能点
- MCP 服务器核心:实现 MCP 的请求/响应流程,注册工具、管理会话與能力声明。
- 工具注册与实现:如 search_icons、add_icons 等,支持输入 schemas、输出内容,便于 LLM 调用外部功能。
- 通过 StdioServerTransport 作为传输层,支持在命令行/脚本环境中直接运行和调试。
- 与 Iconify 图标数据源交互,按需要读取配置、请求远端数据并生成输出内容。
-
安装步骤
- 需要 Node.js 环境与 TypeScript 构建/执行能力。
- 安装依赖(在仓库根或对应包目录执行安装)以确保运行时所需的依赖就绪。
- 直接运行 MCP 服务器入口脚本(在本实现中,该入口脚本位于 packages/iconx/src/mcp-server.ts,带有可执行头,因此可直接运行或通过 ts-node/编译后入口运行)。
-
服务器配置(MCP 客户端需要的配置示例,供客户端连接与协作使用;以下为 JSON 配置示例,包含服务器名称、启动命令与参数等) { "serverName": "iconx-icons-mcp", "command": "node", "args": ["./packages/iconx/src/mcp-server.ts"], "workingDirectory": "<仓库根目录路径>", "transport": "stdio", "remarks": "上述入口为 Iconx MCP 服务器实现文件,使用 stdio 传输。实际部署时请根据运行环境选择合适的入口路径及打包后的可执行文件。" }
-
基本使用方法
- 启动服务器后,LLM 客户端通过 MCP JSON-RPC 规范向服务器发送请求,调用已注册的工具(如 search_icons、add_icons),并获取返回的结果。
- 客户端可以基于返回的 content 字段来呈现文本、表格或进一步处理(如将图标生成成 React 组件等)。
- 该实现示例内置工具为图标相关操作,便于在 LLM 对话中查询图标集合、生成图标相关资源等场景。
-
注意
- 该 MCP 服务器实现位于 iconx 包中,属于服务器端实现,非纯客户端示例。若在实际环境中运行,请确保 TypeScript 执行环境配置完备,或先进行编译打包后再执行。
- 如需扩展能力(新增资源、工具或 Prompts),可参考现有的工具注册逻辑进行扩展。