返回市场
麦克服重混图标

麦克服重混图标

作者:Remix-Design61 星标更新:2025-10-26

项目介绍

RemixIcon MCP

NPM 版本 NPM 许可证 NPM 下载量

English | 简体中文

一个轻量级的模型上下文协议(MCP)服务器,它将图标相关的关键词直接映射到Remix Icon元数据。提供简洁的关键词(最多20个),接收最匹配的5个图标名称和元数据——采用FlexSearch支持的本地搜索,架构清晰。

功能

  • 智能关键词输入 – 支持最多20个逗号分隔的关键词,拒绝自然语言句子以优化搜索质量。
  • 固定前5结果 – 返回最相关的5个图标,便于集中决策。
  • 基于FlexSearch的索引 – 使用FlexSearch v0.8的文档索引来实现高性能的本地Remix Icon目录中的标记查找。
  • 清晰的架构 – 域实体、应用用例、基础设施适配器和MCP接口保持隔离,便于测试。
  • 命令行工具就绪 – 可作为独立的命令行工具通过npx remixicon-mcp运行,或集成到MCP客户端中。
  • 适合LLM的响应 – 返回排名候选、匹配标记,并明确指导模型选择一个图标。

快速开始

安装

# 全局安装为CLI工具
npm install -g remixicon-mcp

# 或使用npx直接运行
npx remixicon-mcp

# 开发环境
pnpm install
pnpm typecheck
pnpm test

使用

作为独立的CLI工具

你可以通过标准I/O直接运行MCP服务器进行测试或集成:

# 使用npx运行
npx remixicon-mcp

# 或者如果全局安装了
remixicon-mcp

平台设置

Claude Desktop

配置 在你的claude_desktop_config.json中添加以下内容:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "remix-icon": {
      "command": "npx",
      "args": ["-y", "remixicon-mcp"]
    }
  }
}

设置步骤

  1. 保存配置文件
  2. 完全退出并重新启动Claude Desktop
  3. search_icons工具将在你的对话中可用

Claude Code

选项1:市场插件(推荐)

# 在Claude Code中添加市场插件
/plugin marketplace add Remix-Design/remixicon-mcp

优点:

  • 自动安装和更新
  • 完整的插件元数据和版本控制
  • 丰富的发现功能,包括关键词和分类
  • 完全集成到Claude Code的插件生态系统中

选项2:手动配置

# 快速命令行设置
claude mcp add --transport stdio remixicon -- npx -y remixicon-mcp

或者手动添加到项目的.claude/settings.json

{
  "mcp": {
    "servers": {
      "remix-icon": {
        "command": "npx",
        "args": ["-y", "remixicon-mcp"]
      }
    }
  }
}

设置步骤

  1. 选择上述的一种安装方法
  2. 重启Claude Code使更改生效
  3. search_icons工具将在你的会话中可用

Codex

配置

# 快速命令行设置
codex mcp add remixicon -- npx -y remixicon-mcp

设置步骤

  1. 运行上述安装命令
  2. 重启Codex使更改生效
  3. search_icons工具将在你的对话中可用

可用工具

服务器通过标准I/O使用JSON-RPC 2.0与官方@modelcontextprotocol/sdk通信,并公开一个工具:

search_icons

输入keywords字符串(逗号分隔,最多20个关键词)
输出:最相关的5个图标及其元数据
格式:人类可读的摘要+结构化的元数据

示例用法

JSON-RPC调用:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "search_icons",
    "arguments": {
      "keywords": "布局, 网格, 设计"
    }
  }
}

示例响应: 服务器返回与关键词最匹配的5个图标,包括名称、类别和使用信息。

项目结构

.
├── bin/
│   └── run.cjs                     # CLI入口点用于npx执行
├── src/
│   ├── cli/                        # CLI运行程序实现
│   ├── bootstrap/                  # 清晰架构边界依赖绑定
│   ├── domain/                     # 图标实体和关键词解析器
│   ├── application/                # 搜索用例协调验证和排名
│   ├── infrastructure/search/      # 基于FlexSearch的存储库实现
│   ├── interface/mcp/              # 使用@modelcontextprotocol/sdk构建的MCP服务器
│   └── data/tags.json              # 用于搜索功能的Remix Icon标签
├── tests/                          # 覆盖解析器和用例行为的Vitest套件
├── .claude-plugin/
│   └── marketplace.json            # Claude Code插件发现的市场元数据
├── package.json                    # 适合pnpm的清单和脚本
└── tsconfig.json                   # 严格的TypeScript配置,带有Node类型定义

实现说明

  • 关键词解析支持Unicode感知边界,支持最多20个逗号分隔的关键词,拒绝句子形式的输入。
  • 增强检测区分关键词列表(带分隔符)和自然语言句子(空格分隔短语)。
  • FlexSearch索引图标名称、标签、用途和类别;字段权重加上标记匹配驱动确定性评分。
  • 固定前5结果提供集中、相关匹配,无需配置复杂性。
  • 应用层结合解析器验证、存储库查询和响应格式化,使得接口仅处理传输问题。
  • MCP响应包含自然语言指导和机器可读匹配,以便LLM客户端可以选择一个图标。
  • CLI运行程序允许通过npx或全局安装进行独立执行,便于集成。

开发脚本

pnpm typecheck   # 严格的TypeScript检查(tsc --noEmit)
pnpm test        # 运行Vitest套件
pnpm exec biome check --write --unsafe   # 使用Biome格式化和修复代码

许可证

MIT许可证