An agentic skills framework & software development methodology that works.
MapTiler skill for Claude Code and other agents
This skill gives an agent MapTiler-specific guidance so it can generate correct code instead of guessing at endpoints, styles, layer names, or SDK versions. It covers web, mobile, and on-prem MapTiler surfaces, and it points the agent to the right reference files when a request matches geospatial work.
Builders who want their agent to write MapTiler code with the right APIs, SDKs, and map styles.
You can build location-aware features with fewer wrong endpoints, outdated style IDs, or guessed layer names.
What it does
On-demand skill loading
The agent only loads the skill when your request matches its description, so the guidance stays focused on map and location tasks.
Cross-platform MapTiler coverage
It covers web SDKs, React, Vue, Svelte, Angular, Leaflet, OpenLayers, Cesium, deck.gl, iOS, Android, Flutter, React Native, and on-prem tools.
Cloud API guidance
It tells the agent which MapTiler REST API to use for geocoding, weather, static maps, elevation, tiles, coordinates, IP geolocation, and admin tasks.
Pinned versions and style rules
It keeps SDKs, CDN scripts, and dependencies pinned, and it upgrades deprecated `*-v2` and `*-v3` style IDs to modern v4 styles.
Schema-aware map writing
It cross-references vector tile schemas and MapLibre style specs before inventing source layers, paint expressions, or filter keys.
Installation paths for multiple agents
It includes install paths for the Skills CLI, Claude Code plugin, Gemini CLI, Cursor, and Windsurf.
How to get it
- 1Works with Claude Code, Gemini CLI, Cursor, Windsurf, and dozens of other agents. The…
npx skills add maptiler/maptiler-skills
- 2Add the marketplace, install the plugin, then reload so the skill registers
/plugin marketplace add maptiler/maptiler-skills /plugin install maptiler@maptiler-skills /reload-plugins
- 3Run
git clone https://github.com/maptiler/maptiler-skills.git; mkdir "$HOME\.gemini\skills\maptiler" -Force; cp -Recurse maptiler-skills\skills\* "$HOME\.gemini\skills\maptiler\"; rm -Recurse -Force maptiler-skills
- 4Run
git clone https://github.com/maptiler/maptiler-skills.git && mkdir -p ~/.gemini/skills/maptiler && cp -r maptiler-skills/skills/* ~/.gemini/skills/maptiler/ && rm -rf maptiler-skills
- 5Or copy it in manually
# Global (every project) cp -r skills/maptiler ~/.gemini/skills/ # Project (run /trust in the session afterward, then restart) mkdir -p .gemini/skills && cp -r skills/maptiler .gemini/skills/
- 6Project-scoped only. Copy the skill folder into the project's skills directory
mkdir -p .cursor/skills && cp -r skills/maptiler .cursor/skills/
README
MapTiler — Agent Skill
Expert coding skill for building location-aware applications across the full MapTiler platform. It gives AI coding agents the context to generate correct, production-ready code using MapTiler Cloud APIs, the MapTiler SDK, MapTiler GeoSplats SDK mobile SDKs, and on-premise tools.
Built on the Agent Skills open standard, so the same skill works across Claude Code, Gemini CLI, Cursor, Windsurf, and other compatible AI agents.
🌐 Website 🔑 Get API Key
Table of Contents
What it does
A skill is on-demand expertise: the agent loads it only when your request matches the skill's description, then follows its instructions instead of guessing. When you ask for maps, geocoding, weather, elevation, vector tiles, or any geospatial feature, this skill makes the agent:
- Generate platform-correct code for web (MapTiler SDK JS, Leaflet, OpenLayers), frameworks (React, Svelte, Vue, Angular, Cesium, deck.gl), mobile (iOS Swift, Android Kotlin, Flutter, React Native), and on-premise (MapTiler Server, MapTiler Engine).
- Call the right Cloud REST API (geocoding, weather, static maps, elevation, tiles, coordinates, IP geolocation, admin/tilesets) with correct endpoints and auth patterns.
- Apply modern v4 styles automatically, upgrading deprecated
*-v2/*-v3style IDs wherever they appear. - Use pinned, current versions for every SDK, CDN script, and dependency, with no unresolved template placeholders.
- Cross-reference vector tile schemas (Planet v4, Buildings, Contours, Outdoor, Ocean, Landcover, Landform, Cadastre) before inventing source-layer names, paint expressions, or filter keys.
- Handle framework lifecycle correctly — WebGL cleanup, stale-closure prevention in React, isolated reactivity, ES module vs UMD CDN selection.
How skills, plugins, and agents fit together
It helps to keep three layers separate, because the install steps below differ by layer:
- The skill is the portable content: a
SKILL.mdplus areferences/folder. This is what every agent actually reads, and it's identical across tools. - The plugin is a Claude Code–specific wrapper for distributing the skill through a marketplace. Other tools don't use it.
- The agent (Claude Code, Gemini CLI, Cursor, Windsurf…) is the tool that loads the skill from its own skills directory.
So there are three ways to install: with the Skills CLI (npx skills add, auto-detects your agent and works across dozens of them), through the Claude Code plugin marketplace (Claude Code only), or by copying the skill folder into any agent's skills directory (works everywhere).
What triggers a skill is the same in every tool: the description field in the SKILL.md frontmatter. The agent matches your request against that description to decide whether to activate the skill, so installation alone isn't enough — the skill also has to be registered and triggered.
📦 Installation
Universal — via Skills CLI
Works with Claude Code, Gemini CLI, Cursor, Windsurf, and dozens of other agents. The Skills CLI auto-detects which agents you have installed and sets the skill up for each one, so you don't need to know the target directory yourself:
npx skills add maptiler/maptiler-skills
Claude Code — as a plugin
Add the marketplace, install the plugin, then reload so the skill registers:
/plugin marketplace add maptiler/maptiler-skills
/plugin install maptiler@maptiler-skills
/reload-plugins
Gemini CLI
Install straight from the repository with a single command:
Windows (PowerShell)
git clone https://github.com/maptiler/maptiler-skills.git; mkdir "$HOME\.gemini\skills\maptiler" -Force; cp -Recurse maptiler-skills\skills\* "$HOME\.gemini\skills\maptiler\"; rm -Recurse -Force maptiler-skills
Linux & macOS (bash)
git clone https://github.com/maptiler/maptiler-skills.git && mkdir -p ~/.gemini/skills/maptiler && cp -r maptiler-skills/skills/* ~/.gemini/skills/maptiler/ && rm -rf maptiler-skills
Or copy it in manually:
# Global (every project)
cp -r skills/maptiler ~/.gemini/skills/
# Project (run /trust in the session afterward, then restart)
mkdir -p .gemini/skills && cp -r skills/maptiler .gemini/skills/
Cursor
Project-scoped only. Copy the skill folder into the project's skills directory:
mkdir -p .cursor/skills && cp -r skills/maptiler .cursor/skills/
Windsurf
Project-scoped, read by the Cascade agent. Copy the skill folder in:
mkdir -p .windsurf/skills && cp -r skills/maptiler .windsurf/skills/
[!NOTE] Claude Code–specific frontmatter fields (such as
allowed-tools) are ignored by Windsurf without causing errors.
Other agents
Any tool that supports the Agent Skills standard can use this skill. The Skills CLI above already knows the skills directory for dozens of agents, so try npx skills add maptiler/maptiler-skills first. Otherwise, place the maptiler folder (containing SKILL.md and references/) wherever that agent looks for skill definitions.
📘 Repository layout
.claude-plugin/
marketplace.json — Claude Code marketplace manifest
plugin.json — Claude Code plugin manifest
skills/
maptiler/
SKILL.md — Skill entry point (always loaded when triggered)
references/
INDEX.md — Curated catalog of high-value docs
versions.md — Pinned versions of every library & dependency
cloud-api-*.md — Cloud REST APIs (geocoding, weather, static, …)
cloud-admin-api-*.md — Admin API (tilesets, uploads, analytics, keys)
sdk-js-*.md — MapTiler SDK JS core
web-libraries-*.md — React, Vue, Svelte, Angular, Leaflet, OL, Cesium, deck.gl
mobile-sdks-*.md — iOS, Android, Flutter, React Native
on-prem-*.md — Self-hosted Server & Tile Engine CLI
map-resources-schemas-*.md — Vector tile schemas (Planet v4, Buildings, …)
map-resources-specifications-*.md — MapLibre style spec (layers, sources, expressions)
examples-*.md — Runnable per-platform examples
complex-dds-expressions-guide.md — Data-driven styling deep dive
README.md — This file
For the Claude Code plugin to expose the skill, SKILL.md must live at skills/maptiler/SKILL.md — not at the repository root, and not inside .claude-plugin/. Only the manifests go in .claude-plugin/.
💡 Platform Coverage & File Prefix Conventions
To avoid cross-platform contamination when searching, use these filename prefix filters in the references/ directory:
| Target Platform | File Name Prefix |
|---|---|
| Web (Core JS SDK) | sdk-js-*, examples-sdk-js-* |
| Web Frameworks (React, Svelte, Vue, Angular) | web-libraries-*, examples-react-*, examples-svelte-*, examples-vuejs-*, examples-angular-* |
| Web Mapping Engines (Leaflet, OpenLayers, Cesium, deck.gl) | examples-leaflet-*, examples-openlayers-*, examples-cesium-*, web-libraries-deck-gl* |
| Android (Kotlin/Java) | mobile-sdks-android-*, examples-android-* |
| iOS (Swift) | mobile-sdks-ios-*, examples-ios-* |
| Cross-Platform Mobile (Flutter, React Native) | mobile-sdks-flutter-*, mobile-sdks-react-native-* |
| Cloud REST APIs | cloud-api-*, cloud-admin-api-* |
| On-Premise Infrastructure | on-prem-* |
| Vector Tile Schemas | map-resources-schemas-* |
| MapLibre Style Spec | map-resources-specifications-* |
🚀 Prerequisites
- A MapTiler API key from cloud.maptiler.com.
Links
- MapTiler Cloud Console
- MapTiler SDK JS · Docs · GitHub · NPM
- MapTiler GeoSplats SDK
- MapTiler iOS SDK
- Android SDK
- MapTiler Server
- MapTiler Engine
💬 Support
- 📚 Documentation - Comprehensive guides and API reference
- ✉️ Contact us - Get in touch or submit a request
- 🐦 Twitter/X - Follow us for updates
🤝 Contributing
We love contributions from the community! Whether it's bug reports, feature requests, or pull requests, all contributions are welcome:
- Fork the repository and create your branch from
main - If you've added code, add tests that cover your changes
- Ensure your code follows our style guidelines
- Give your pull request a clear, descriptive summary
- Open a Pull Request with a comprehensive description
📄 License
This project is licensed under the MIT – see the LICENSE file for details.
💜 Made with love by the MapTiler team
Files in the repo
- .claude-plugin
- .github
- images
- skills
- LICENSE.md
- README.md
Discussion (0)
Ask about usage, or say what you built with itSign in to join the discussion.
No comments yet. Be the first to say what this is good for.
More skills

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.
Topic in, narrated explainer video out. A Claude Code / Codex skill that turns any topic into a black-canvas motion-graphics explainer video with TTS voiceover, subtitles and a chapter progress bar. Chinese or English; every frame drawn in code with Remotion.
Public repository for Agent Skills
Open-source AI job search: scan job portals, evaluate listings into a structured A-H report with a global 1-5 score, tailor your CV, track applications — runs locally in your AI coding CLI (Claude Code, Codex, OpenCode, Antigravity…)

Production-grade engineering skills for AI coding agents.