---
name: logohub
description: Search brand vector logos, read SVG source code, and get 1024px PNG/JPEG/WebP raster images in four language versions (zh-CN / zh-TW / ja / en). Use when the user needs brand logo assets, brand colors, or vector file URLs.
---

# LogoHub Brand Vector Logos

LogoHub indexes high-precision vector logos of tech companies, AI models, programming languages, cloud-native infrastructure, universities, and more. It is public and read-only; no registration or API key is required.

Site root: `https://logohub.afengblog.com`

## MCP or HTTP API

- For tool orchestration (multi-step search inside a client, fetching source by slug): connect to MCP at `https://logohub.afengblog.com/mcp`.
- For one-off fetches, scripts, or static builds: call the HTTP API directly.
- Both share the same ranking rules, URL contract, language versions, and rate-limit quota.

## MCP Tools

| Tool | Purpose | Returns |
|---|---|---|
| `search_logos` | Search by keyword, Pinyin, or category with `limit` and `offset` | Metadata + `urls` + `alternates`, no SVG source |
| `get_logo` | Fetch one brand by slug or id | Metadata + `svgContent` + `urls` + `alternates` |
| `get_logos` | Batch-fetch 1–20 brands by slug | Metadata + `urls` + `alternates`; missing slugs in `missing` |

All three tools accept an optional `locale` argument.

## HTTP API

| Path | Description |
|---|---|
| `GET https://logohub.afengblog.com/api/search?q=&category=&sort=&order=&limit=&offset=&lang=` | Search; `q` required, `limit` max 20, `sort` is `latest` / `name`, `order` is `asc` / `desc` |
| `GET https://logohub.afengblog.com/api/logos/:slug?lang=` | One brand with `svgContent`, `urls`, and related logos |
| `GET https://logohub.afengblog.com/api/logos?q=&category=&sort=&order=&limit=&offset=&lang=` | List and filter, SVG source omitted by default, `limit` max 20 |
| `GET https://logohub.afengblog.com/api/stats` | Total count and per-category counts |
| `GET https://logohub.afengblog.com/api/health` | Health check; returns 503 when the database is not ready |

## Language Versions

- Values: `zh-CN` (Simplified Chinese, default), `zh-TW` (Traditional Chinese), `ja` (Japanese), `en` (English).
- The HTTP API uses `lang` (case-insensitive, aliases like `zh-hk` / `zh-hant` normalize to `zh-TW`); MCP uses `locale` (canonical spelling only). Both default to `zh-CN`.
- The response and every item carry `locale`, identifying the language version of the content. `name`, `categoryName`, `description`, and `tags` are returned in that language; `nameZhCN` always keeps the original Simplified Chinese name.
- `urls.page` is the detail page for that language; `alternates` lists absolute detail page URLs for every language version, so citations can match the reader.
- An unsupported `lang` returns `400` (`invalid_locale` with a `supported` list); an unsupported MCP `locale` is rejected by argument validation.

## Search Rules

- Multiple keywords separated by whitespace are combined with AND.
- Ranking per keyword, high to low: exact slug/id > exact Chinese/English name > exact Pinyin > slug/id/name prefix > Pinyin prefix > tag match > name/Pinyin substring > description substring.
- Pinyin works: `支付宝` matches `zhifubao` (full) or `zfb` (initials); `微信` matches `weixin` or `wx`.
- Traditional Chinese and localized display names such as `支付寶` or `WeChat` match directly.
- No spelling correction or fuzzy matching; if nothing matches, try the English brand name or a shorter prefix.

## Asset URLs

Every item includes `urls`:

| Field | Pattern | Description |
|---|---|---|
| `page` | `https://logohub.afengblog.com/logo/{slug}` | Detail page; prefixed with the language when one is requested, e.g. `/ja/logo/{slug}` |
| `svg` | `https://logohub.afengblog.com/logos/{svgFile}` | Original vector file, served statically |
| `png` | `https://logohub.afengblog.com/logos/{slug}.png` | 1024×1024 transparent PNG |
| `jpg` | `https://logohub.afengblog.com/logos/{slug}.jpg` | 1024×1024 white-background JPEG |
| `webp` | `https://logohub.afengblog.com/logos/{slug}.webp` | 1024×1024 transparent WebP |

Raster images are generated per slug on demand and fit into 1024×1024 with the original aspect ratio; there is no size parameter. Responses carry a one-year `Cache-Control` header.

## Rate Limits and Errors

- `/api/*`, `/mcp`, and raster images are limited to 20 requests/sec per source IP.
- Over the limit you get `429` with `Retry-After`, plus `X-RateLimit-Limit` and `X-RateLimit-Remaining` headers.
- Unknown slugs return `404` for detail and raster requests; batch requests list them in `missing` and still return `200`.
- A failed raster conversion returns `502`; retrying is safe.

## Terms of Use

All brand logos and trademarks belong to their respective owners. Content is provided under Article 24 of the Copyright Law of the People's Republic of China for personal study, academic exchange, technical research, and design reference only; unauthorized commercial use is prohibited. Cite the detail page in the `page` field as the source.
