Skip to main content
Glama

logo-mcp

一个智能Logo提取和分析的MCP(Model Context Protocol)服务器,支持从网站URL自动识别并提取Logo图标,并提供详细的Logo分析功能。

功能特性

🎯 智能Logo提取

  • 多源识别:支持从favicon、Apple Touch图标、OpenGraph图像、CSS类名等多种方式提取Logo

  • 智能评分:自动评估候选Logo质量,选择最佳版本

  • 格式支持:支持PNG、JPG、SVG等多种图像格式

  • 尺寸优化:自动选择合适尺寸的Logo版本

📊 Logo分析

  • 详细信息:提供Logo尺寸、格式、类型等完整信息

  • 多候选比较:显示所有可能的Logo候选项及其评分

  • 质量评估:自动评估Logo图像质量和可用性

  • 快速URL获取:支持直接获取最佳Logo的URL地址

安装使用

作为MCP服务器使用

  1. 安装依赖:

npm install @lucianaib/logo-mcp
  1. 在MCP客户端配置中添加:

{ "mcpServers": { "logo-mcp": { "command": "npx", "args": ["@lucianaib/logo-mcp"] } } }

![CodeBuddy 配置成功示例.png](src\CodeBuddy 配置成功示例.png)

开发环境设置

  1. 克隆仓库:

git clone https://github.com/lfrbmw/Logo-MCP.git cd Logo-MCP
  1. 安装依赖:

npm install
  1. 构建项目:

npm run build
  1. 启动开发服务器:

npm run dev

MCP工具

使用示例:

使用mcp提取 https://juejin.cn/的 Logo

实战找到logo.png

get_best_logo_url

从网站提取并返回最佳Logo的URL地址,适用于只需要获取最佳Logo URL的场景

参数:

  • url (必需): 要分析的网站URL

示例:

{ "name": "get_best_logo_url", "arguments": { "url": "https://www.google.com" } }

analyze_logo

分析Logo的基本信息(尺寸、格式、质量等),支持onlyBestUrl参数只返回最佳Logo的URL

参数:

  • url (必需): 要分析的网站URL

  • onlyBestUrl (可选): 是否只返回最佳Logo的URL,默认为false

示例:

{ "name": "analyze_logo", "arguments": { "url": "https://www.github.com", "onlyBestUrl": false } }

技术架构

核心模块

  • LogoExtractor: 负责从网站提取Logo候选项,实现多源识别和智能评分算法

  • ImageProcessor: 提供图像处理功能,包括格式转换、尺寸调整和质量增强

依赖库

  • @modelcontextprotocol/sdk: MCP协议支持,提供服务器和通信框架

  • axios: HTTP请求处理,用于获取网站内容和下载Logo图像

  • cheerio: HTML解析,用于从网页中提取Logo相关信息

  • sharp: 图像处理,提供格式转换、尺寸调整和增强功能

  • image-size: 图像尺寸检测,用于获取Logo图像的尺寸信息

  • url-parse: URL解析,用于处理和规范化网站URL

  • mime-types: MIME类型检测,用于识别图像文件格式

Logo提取策略

1. 多源候选提取

  • Favicon链接 (<link rel="icon">)

  • Apple Touch图标 (<link rel="apple-touch-icon">)

  • OpenGraph图像 (<meta property="og:image">)

  • CSS类名识别 (.logo, #logo, .brand等)

  • 品牌相关图像

2. 智能评分算法

  • 类型权重:Logo类名 > Apple Touch > Favicon > 品牌图像 > OG图像

  • 尺寸评分:偏好32-512px的正方形或接近正方形图像

  • 质量检测:过滤损坏或空白图像

3. 最佳选择

根据综合评分自动选择最符合主视觉的Logo版本

Logo分析流程

1. 多源提取

  • HTML解析: 从页面meta标签提取favicon、apple-touch-icon等

  • CSS分析: 通过类名和ID识别可能的Logo元素

  • OpenGraph: 解析OG图像标签获取社交媒体使用的Logo

  • 智能检测: 识别页面上可能的品牌标识元素

2. 候选评分

  • 类型权重: 根据来源类型分配权重(如明确的logo类名权重更高)

  • 尺寸分析: 评估图像尺寸是否适合作为Logo(32px-512px范围内)

  • 宽高比: 优先选择接近正方形的图像

  • 质量检测: 检查图像是否损坏或过于模糊

3. 结果输出

  • 详细分析: 提供所有候选项的详细信息及评分

  • 最佳推荐: 根据综合评分推荐最合适的Logo

  • 快速获取: 支持直接返回最佳Logo的URL地址

错误处理

  • 网络错误:超时重试和友好提示

  • 图像损坏:自动检测和跳过

  • 格式不支持:清晰的错误信息

  • 无Logo情况:返回友好的无结果提示

性能优化

  • 并发处理:多候选Logo并行验证

  • 缓存机制:避免重复下载

  • 内存管理:及时释放图像缓冲区

  • 超时控制:防止长时间阻塞

贡献指南

  1. Fork项目

  2. 创建功能分支 (git checkout -b feature/AmazingFeature)

  3. 提交更改 (git commit -m 'Add some AmazingFeature')

  4. 推送到分支 (git push origin feature/AmazingFeature)

  5. 打开Pull Request

许可证

本项目采用MIT许可证 - 查看 LICENSE 文件了解详情

作者

支持

如果您遇到问题或有功能建议,请在 GitHub Issues 中提出。


Logo MCP - 让Logo提取变得简单智能 🚀

-
security - not tested
F
license - not found
-
quality - not tested

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/OnePieceLwc/logo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server