Skip to content

Spike: tileset explorer that previews a tileset's tiles in ChatGPT - #335

Draft
zmofei wants to merge 2 commits into
feat/chatgpt-thread-entrypointfrom
feat/chatgpt-tileset-explorer
Draft

zmofei wants to merge 2 commits into
feat/chatgpt-thread-entrypointfrom
feat/chatgpt-tileset-explorer

Conversation

@zmofei

@zmofei zmofei commented Nov 12, 2026

Copy link
Copy Markdown
Member

Stacked on #333. Adds tileset_explorer_tool and its MCP App, to look inside a vector (MVT) or raster tileset from a chat.

  • Tool: takes a tileset_id (username.id, or several vector tilesets joined with commas), reads its TileJSON and returns the source layers, their fields and the zoom range. The TileJSON tiles URLs carry the caller's token, so only metadata is returned.
  • Map: every source layer is drawn in its own color. The panel toggles layers, lists fields, shows tile boundaries and adds a base map. A click shows a feature's properties. Tiles load through mapbox:// with the account's public token, so a private tileset shows only for its own account.
  • In ChatGPT: opens as a tab next to the chat, and is a thread entrypoint (Mapbox Tileset Explorer) that starts on Mapbox Streets. While open it shares the tileset, view and selected feature with the conversation, and registers load_tileset and read_tileset_view through WebMCP, so the model switches tilesets and reads features in the open explorer instead of opening another.

Verified: build and unit tests pass (1318), and a local dev server lists tileset_explorer_tool.

Not verified: anything in ChatGPT yet.

Adds tileset_explorer_tool and its MCP App. The tool reads a tileset's
TileJSON and returns its source layers, fields and zoom range, without
the tile URLs, which carry the caller's token. The app draws every source
layer in its own color, toggles layers, shows tile boundaries and a base
map, and inspects a clicked feature.

In ChatGPT it opens as a tab, is a thread entrypoint, shares the tileset,
view and selected feature as model context, and registers load_tileset
and read_tileset_view through WebMCP.
@zmofei
zmofei force-pushed the feat/chatgpt-tileset-explorer branch from 7f7a1af to 1a5b6ab Compare November 12, 2026 14:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant