logoforge
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@logoforgebuild a logo cloud with stripe, supabase, and vercel"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Logoforge
Brand logos for developers, as shadcn components.
909 clean SVG logos of the tools developers use — as files, as typed React components, through a shadcn registry, a JSON API and an MCP server for AI editors.
Website · Logo cloud builder · Docs · Request a logo
Why Logoforge
One component per logo, typed.
<StripeLogo />,<GithubLogo variant="mono" />,<VercelLogo type="wordmark" />— TypeScript only offers the variants a logo really has.Dark mode that works. Near-black marks (GitHub, Vercel, Notion…) ship a dark file; the component switches with your
.darkclass, no JavaScript.Mono that keeps its detail. Badge-style marks (Adobe apps, AWS services) get a knockout one-color version — the symbol cut out of its shape — not a solid blob.
Logo clouds in one command. Pick 3–12 logos on /cloud; one
shadcn addinstalls the section and every logo it imports.African brands. MTN, Orange Money, M-Pesa, Flutterwave, Paystack, Moniepoint, OPay, Kuda, Chipper Cash, Yoco, Interswitch, Airtel, Orange, Andela — and more coming.
Every file is traceable. Each variant records its source, its exact upstream file and its licence.
Related MCP server: Svg/icons MCP
Use it
shadcn CLI
Add the registry to your components.json once:
{
"registries": {
"@logoforge": "https://logoforge.terravidhal.me/r/{name}.json"
}
}Then install any logo (slug = the logo page URL):
npx shadcn@latest add @logoforge/stripe @logoforge/supabaseimport { StripeLogo } from "@/components/logos/stripe";
<StripeLogo className="size-8" /> // brand colors, auto dark mode
<StripeLogo variant="mono" className="size-6" /> // currentColor
<StripeLogo type="wordmark" className="h-6 w-auto" />
<StripeLogo mode="dark" /> // force a theme (no Tailwind needed)
<StripeLogo title="" /> // decorative: aria-hiddenSVG files
Every variant is a plain file: https://logoforge.terravidhal.me/logos/<slug>/<variant>.svg
Variant | What it is | When |
| The mark, brand colors | always |
| One color, | most logos |
| For dark backgrounds | when the mark would vanish on dark |
| The full lockup | when the brand has one |
Or grab them straight from this repository: logos/.
MCP server (Claude, Cursor, Windsurf, VS Code)
claude mcp add --transport http logoforge https://logoforge.terravidhal.me/mcpTools: search_logos, list_categories, get_logo, get_logo_svg, get_logo_component, build_logo_cloud.
Setup for every editor: docs/mcp.
JSON API
curl https://logoforge.terravidhal.me/api/logos.json # every logo
curl https://logoforge.terravidhal.me/api/logos/stripe.json # one logo, with sourcesStatic, no key, CORS open. Or read data/logos.json directly.
What's in this repository
logos/<slug>/*.svg optimized SVG files, one folder per logo
components/<slug>.tsx the generated React component (what the registry installs)
data/logos.json GENERATED manifest: names, aliases, categories, colors, variants, sources
data/curation.json which logos ship and where each comes from ← edit this
data/overrides.json reviewed fixes, each with its reason ← and this
data/additions/<slug>/ hand-sourced artwork + source.json (official or public domain)
data/backgrounds.json GENERATED badge detection for knockout monos
scripts/ the pipeline: import · analyze · check
reports/ import report + contact sheets for visual reviewHow the set is built
Sources, pinned —
sources.lock.jsonfixes the Simple Icons version and the gilbarbara/logos commit.Licence filter — CC0 only from the sets: Simple Icons icons published under another licence (CC BY, GPL, MIT…) are dropped. Brands no free set covers are added by hand in
data/additions/, public-domain files first, the brand's own artwork otherwise — each with itssource.json.Optimize & vet — SVGO (viewBox kept, no fixed size, ids prefixed by slug); any script, event handler, embedded image or external reference is rejected.
Variants — dark files are derived automatically (black ↔ white swap for knockout marks, near-black text to white, dark brand colors lightened to a 3:1 contrast, masks left untouched); monos come from Simple Icons, or are derived — as knockouts for badge marks detected in headless Chrome.
Components — SVGR turns each variant into JSX; ids are suffixed per variant so several can share a page.
Human review — every run writes contact sheets (
reports/review-NN.html); anything flagged must be looked at before it ships, and the decision is recorded indata/overrides.json.
npm install
npm run import # build logos/, components/, data/logos.json, reports/
npm run analyze # detect badge icons (needs Chrome; CHROME_PATH to override), then import again
npm run check # validate everything — runs in CI on every pull requestContributing
Request a logo — open an issue with the brand name and a link to its official brand assets.
Add a logo from a free set:
Add an entry to
data/curation.json:{ "slug": "acme", "si": "<simple-icons slug>", "gb": "<gilbarbara shortname>", "categories": ["devtools"] }.npm run import && npm run analyze && npm run import, then open the contact sheet inreports/and look at your logo on light and dark, in color and mono.Fix anything off in
data/overrides.jsonwith areason, runnpm run check, open a pull request.
Add a logo no free set has: create data/additions/<slug>/icon.svg from a public-domain file or the brand's own website, plus a source.json (origin, page, file, license: public-domain or trademark, retrieved), and add "addition": true to its curation entry. Never trace a PNG: if no vector exists, the logo waits.
Categories are listed in data/categories.json.
Everyone taking part follows the Code of Conduct.
Licences and trademarks
Tooling and data (scripts, components template, manifest): MIT.
Artwork: from Simple Icons (CC0 1.0), gilbarbara/logos (CC0 1.0), Wikimedia Commons public-domain files, and — for a few brands no free set covers — the brands' own artwork. See CREDITS.md; every file's source is in
data/logos.json.Trademarks: all product names, logos and brands are property of their respective owners. They are provided for identification only and their presence does not imply endorsement. A free licence on a file grants nothing on the brand: use a logo to refer to its product, and follow the brand's guidelines.
Brand owners: to remove or correct a logo, write from your company's domain to the address on logoforge.terravidhal.me/legal — handled within 72 hours.
Built by Vidhal Elame · sibling of Blockforge
Related MCP Connectors
Icons for agentic development: search & fetch 366,000+ open-source icons as SVG/PNG. No API key.
@latest documentation and code examples to 9000+ libraries for LLMs and AI code editors in a singl…
Multilingual semantic SVG icon search with previews for AI coding agents. 20,000+ icons.
Search and fetch SVG icons from 250,000+ icons across 200+ open-source icon sets.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceVisual icon search, retrieval, and comparison for AI agents. Search 200k+ icons semantically, render side-by-side comparison grids, and retrieve raw SVG markup — all tools return images so vision-capable LLMs can see the icons.1-

Svg/icons MCPofficial
AlicenseNot gradedqualityCmaintenanceEnables AI coding tools to search, inspect, recommend, and export SVG icons from svgicons.com for use in design systems, frontend projects, and AI-assisted workflows.MIT- AlicenseNot gradedqualityBmaintenanceEnables AI assistants like Claude Code and Cursor to get evidence-based tool and workflow recommendations from community data.MIT
- AlicenseAqualityBmaintenanceEnables AI coding agents to search, retrieve, and add Lucide SVG icons to projects.524 npmMIT