globestudio
MCP server for GlobeStudio.
README
<div align="center">
Globestudio
Open-source dotted maps and animated 3D globes for designers, animators, and creative developers.
<a href="https://globestudio.app"><img src="public/og/default.gif" alt="Globestudio — animated dotted 3D globe with 21 shader looks" width="640" /></a>
Pick a country or the whole world, customize dots and shapes, apply shader effects, and export PNG, SVG, or animated WebM. Built on React + Three.js.
globestudio.app · Live demos · Roadmap · Discussions
</div>
Why Globestudio?
Most open-source map tooling is built for engineers — tile servers, geocoding, GIS data pipelines. Globestudio is built for the other half of the stack: the landing-page hero shot, the launch teaser, the explainer scrollytell, the deck slide that needs a globe but not a database.
Think of it as a Shader Lab for maps and globes — a designer-first canvas with presets, effects, motion, and clean exports. Composable, web-native, and yours to remix.
Features
- 🌍 Maps for any scope — world, country, continent, subregion, US state
- 🔄 Flat ↔ 3D globe — same dot data, two views, smooth morph
- 🎨 12 dot shapes + custom upload — Circle · Hexagon · Triangle · Pentagon · Square · Diamond · Star · Plus · Ring · Voxel · Particle Grid · ASCII glyphs · your own SVG/PNG
- 🪄 21 shader looks — Halftone, Risograph, Newsprint, Aurora, Pixel, Bayer, Atkinson, Wireframe, CRT, Glitch, Bad TV, Bloom, Metal, Iridescent, Pencil, Corrupt, Toon, Threshold, Vapor, Topographic — plus the base Default. Stackable on any preset.
- 🌈 Gradients + alpha on dot color, land fill, and country stroke
- ✨ Live animations — rotation, twinkle, size jitter, network arcs,
motion-aware (respects
prefers-reduced-motion) - 🎛️ 21 curated presets — every shader look is a one-click preset with
matching backgrounds, density, dot size, and globe chrome. Shareable
URLs at
/looks/:id. - 💾 Real exports — PNG (high-res via WebGL re-render), SVG (with shader effects baked in), WebM video (looped or one-shot), JSON config
- ⌨️ Full keyboard system —
Sshuffle,[/]cycle presets,Dexport,Rreset,Gtoggle view,Htoggle panel,?help - ♿ Accessibility — WCAG 2.2 AA conformant. Keyboard-first, screen-
reader proxy DOM for canvas state, focus trap on modals, motion
preferences honored. See
ACCESSIBILITY.md
Quickstart
Use it
The live tool runs entirely client-side:
Pick a country, tweak the look, export.
Run it locally
Requires Node 20+ and npm.
git clone https://github.com/alevizio/globestudio
cd globestudio
npm install
npm run dev
Open http://127.0.0.1:5173/.
Build it
npm run build # → dist/
npm run preview # serve dist/ locally
npm test -- --run # 152 tests across 24 files
npm run test:e2e # browser smoke + accessibility checks
Embed it anywhere
Globestudio ships two embed paths — pick whichever fits the tool:
One-line script tag (Recommended)
<div data-globestudio data-look="halftone" data-density="50"
style="width: 100%; height: 480px;"></div>
<script async src="https://globestudio.app/embed.js"></script>
~3kb gzipped, zero dependencies, works in Webflow / Squarespace / blog
posts / anywhere HTML is allowed. Every embed param has a matching
data-* attribute. Watches the DOM for later-added elements via
MutationObserver, so SPAs and dynamic content work too.
Plain iframe
<iframe
src="https://globestudio.app/embed?look=halftone&density=70&autoSpin=1"
width="100%"
height="500"
style="border:0"
loading="lazy"
title="Globestudio dotted globe"
></iframe>
Query parameters: look, density, dotSize, dotColor, worldFill,
renderMode (dots/solid), selection (world, country:USA,
continent:Europe, subregion:Western Europe), motion, tiltX,
tiltY, autoSpin, view (flat/globe), static (freeze motion for
static previews), transparent, background, source (analytics tag).
Resize-aware via postMessage — listen for
{ type: "globestudio-resize", height } from the embed and resize the
iframe to match. WebGL required; falls back to a still preview + a
"how to enable WebGL" panel if the GL context can't be created.
Per-tool integration guides: Webflow · Framer · Figma · Notion · Plain HTML · All integrations →
Reading material: How to make a dotted world map in 2026 · All articles →
Use it from AI tools (MCP)
Globestudio ships a Model Context Protocol server, so Claude, Cursor, and any MCP-compatible assistant can generate globes, build share URLs, and grab embed snippets straight from a chat:
claude mcp add globestudio -- npx -y @globestudio/mcp
Full tool list and setup in packages/mcp/README.md.
What you can build with it
| Use case | What it gives you |
|---|---|
| Landing page hero | A live animated globe behind your headline. Export PNG for static, WebM for video. |
| Launch teaser | Animated dot map of where your users are. WebM ready for X/LinkedIn. |
| Deck visuals | Per-country SVGs that drop straight into Keynote, Figma, or print layouts. |
| Data story | Hand-picked region + dot palette for a feature, blog post, or report. |
| Brand system | A consistent dotted-globe mark across your site, app, and docs. |
| Stream / podcast graphic | Looping WebM background with the CRT or Glitch preset. |
Runnable examples
The examples/ directory holds 7 reference projects with
runnable HTML and adaptation guides. Highlights:
embed-snippet— the minimum-viable iframe pattern. Copy into Webflow, Framer, Notion, plain HTML, anywhere.hero-globe— full-bleed animated globe behind a landing-page hero.shader-presets-showcase— all 16 presets in one auto-fit gallery, perfect for picking a look.
Share what you make in Show & Tell.
Documentation
| CONTRIBUTING | Local setup, project shape, design rules, how to submit presets/examples |
| ROADMAP | What's shipped, what's next, what's parked |
| CHANGELOG | What changed and when |
| GOVERNANCE | How decisions get made |
| CODE_OF_CONDUCT | Community standards |
| SECURITY | Reporting vulnerabilities |
| SUPPORT | Where to ask questions |
How it compares
There's no shortage of map and globe tools — Globestudio doesn't try to replace any of them. It owns the aesthetic-asset shelf: stylized output that ships to a landing page hero, deck slide, OG card, or launch teaser. Different tools for different jobs:
| Globestudio | globe.gl | Mapbox Studio | Felt | Haikei | |
|---|---|---|---|---|---|
| 3D globe out of box | ✅ | ✅ | ❌ | ❌ | ❌ |
| Dotted maps | ✅ 12 shapes | partial | ❌ | ❌ | ❌ |
| Shader aesthetic looks | ✅ 21 | ❌ | custom WebGL only | ❌ | ❌ |
| Multiple projections | 5 | sphere only | many | many | n/a |
| No-code GUI | ✅ | ❌ library | ✅ | ✅ | ✅ |
| PNG / SVG / WebM export | ✅ | manual | print / PDF | ✅ | PNG / SVG |
| Embed iframe | ✅ /embed |
DIY | ✅ | ✅ | DIY |
| Framer / Webflow components | ✅ | ❌ | plugins | ❌ | ❌ |
| No signup / no API key | ✅ | n/a | ❌ | ❌ | ✅ |
| Free + MIT | ✅ | ✅ (library) | freemium | paid | free, closed |
What Globestudio gives up: GIS-accurate data overlays, large dataset analysis, real-time collaboration. If those are what you need, reach for Mapbox / Felt / Kepler — they're great at them.
Built on the shoulders of: globe.gl and COBE defined what a modern OSS 3D globe library looks like. dotted-map is the engine under the dot field. Stamen Maps was the spiritual ancestor of "maps as visual aesthetic."
Tech stack
Built with:
- React 19 + Vite for the app shell
- Three.js for the WebGL globe, instanced dot rendering, shader effects, network arcs
- dotted-map for the source dot field
- d3-geo + d3-geo-projection + topojson-client for projections (Mercator, Equal Earth, Winkel Tripel, Robinson) and topology decoding
- world-countries + world-atlas + us-atlas for source geography
- satori + @resvg/resvg-js for the OG share card pipeline (JSX → SVG → PNG at build time)
- Pixelarticons by Gerrit Halfmann for the in-app icon set — 24×24 pixel-grid icons with
currentColorfill so they theme cleanly - Vitest + Testing Library + axe-core for tests and the WCAG 2.2 AA accessibility guard
No backend and no accounts. Privacy-respecting Vercel Analytics and Speed
Insights honor Do Not Track, Global Privacy Control, and the local opt-out in
/privacy; everything else renders in your browser.
Contributing
We want contributions. Code, presets, example projects, screenshots, docs rewrites — all of it counts.
The shortest path:
- Build something cool with the live tool → drop it in Show & Tell
- Found a bug? → Bug report
- Made a preset you love? → Preset submission
- Have an idea? → Ideas discussion
Full guide in CONTRIBUTING.md.
License
MIT. Use it, remix it, ship it. If you use it commercially or prominently we'd love to hear about it (no obligation, just curious).
The included geography data comes from world-atlas, us-atlas, and world-countries — all with permissive licenses. If you build on top of derived map data outside this repo, double-check the source attributions.
<div align="center">
Made by @alevizio · alevizio.com · twitter.com/alevizio
</div>
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。