Sandbox
@maptiler/maptiler-skills

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.

39 stars4 forksUpdated 10d ago
Who it's for

Builders who want their agent to write MapTiler code with the right APIs, SDKs, and map styles.

What it delivers

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

  1. 1Works with Claude Code, Gemini CLI, Cursor, Windsurf, and dozens of other agents. The…
    npx skills add maptiler/maptiler-skills
  2. 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
  3. 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
  4. 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
  5. 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/
  6. 6Project-scoped only. Copy the skill folder into the project's skills directory
    mkdir -p .cursor/skills && cp -r skills/maptiler .cursor/skills/

README

Company Logo

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 / *-v3 style 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:

  1. The skill is the portable content: a SKILL.md plus a references/ folder. This is what every agent actually reads, and it's identical across tools.
  2. The plugin is a Claude Code–specific wrapper for distributing the skill through a marketplace. Other tools don't use it.
  3. 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 PlatformFile 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 APIscloud-api-*, cloud-admin-api-*
On-Premise Infrastructureon-prem-*
Vector Tile Schemasmap-resources-schemas-*
MapLibre Style Specmap-resources-specifications-*



🚀 Prerequisites


Links



💬 Support




🤝 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.


Get Your API Key FREE
Start building with 100,000 free map loads per month ・ No credit card required.


💜 Made with love by the MapTiler team

WebsiteDocumentationGitHub

Files in the repo

Repository payload6 top-level entries
  • .claude-plugin
  • .github
  • images
  • skills
  • LICENSE.md
  • README.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More skills

obra/
superpowers

An agentic skills framework & software development methodology that works.

285k
1 add

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.

117k
1 add
Vincentwei1021/
anything2explainer

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.

666

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…)

71k