Inspiration

Cities publish valuable information about their trees, but that data is often difficult for ordinary people to explore. Tree Radar began as a way to turn official municipal tree datasets into a searchable, visual map that makes urban trees easier to discover.

The WebMCP Challenge raised a different question: what if an AI agent could work with the same interface instead of requiring a separate API or agent-only application?

The goal became to let people explore trees visually while allowing an agent to understand the available city data, search it through structured tools, and bring useful results back onto the same map.

What it does

Tree Radar is an interactive city tree map built from public municipal data.

For the WebMCP Challenge, it exposes three browser-native tools:

  • get_city_coverage — lets an agent understand which city datasets are available
  • find_trees — searches the tree dataset using structured criteria
  • show_trees_on_map — turns selected search results into visible state on the map

The current WebMCP demo includes more than 118,000 Taichung street-tree records.

Together, the tools create a human-agent loop: a person can ask about trees in natural language, the agent can discover and call the appropriate tools, and matching trees can then be shown on the same interactive map for the person to explore.

How we built it

Tree Radar is built with Next.js, TypeScript, React, and MapLibre GL JS.

The WebMCP implementation registers three explicit tools through the browser's model context. Each tool has a bounded responsibility and structured inputs and outputs.

The workflow is deliberately separated into three steps:

  1. discover available city coverage
  2. search for matching trees
  3. explicitly choose which results to display on the map

This keeps information retrieval separate from state-changing behavior: searching does not unexpectedly change the map.

The production build was tested in a WebMCP-capable browser to verify tool discovery, structured calls, tree search, and the final map transition.

Challenges we ran into

One of the main challenges was deciding what should become an agent capability and what should remain normal application behavior.

Exposing too much would make the integration harder to understand and less predictable. The three-tool design came from keeping the agent surface small and making state-changing behavior explicit.

Municipal tree data also contains variations in species naming. Search behavior was refined to support useful partial species matching while keeping results bounded and predictable.

Accomplishments that we're proud of

The result is not a separate AI demo layered beside Tree Radar. The agent and the existing web interface participate in the same task: the agent handles structured discovery and search, while the map remains the shared visual surface where people can inspect the result.

The WebMCP flow has been validated end to end in production with all three tools discoverable and callable.

Tree Radar existed before this challenge as a city-tree exploration product. The WebMCP integration is a new extension built specifically for the WebMCP Challenge. The challenge work includes the browser-native WebMCP tool layer, the three-tool discovery/search/map workflow, WebMCP-specific acceptance testing, and a dedicated challenge repository whose commit history documents this work separately from the pre-existing product.

What we learned

The most important lesson was that WebMCP is useful for more than retrieving information from a website.

It can create a bridge between agent reasoning and an existing visual interface. In Tree Radar, the agent does not replace the map. It helps a person reach meaningful results, then hands those results back to the interface where spatial context becomes visible.

Designing a small, explicit tool surface also made the interaction easier to reason about than exposing every possible application action.

What's next for Tree Radar

Tree Radar is expanding toward broader city coverage while keeping the same principle: official public data should be easier for people to explore and understand.

The WebMCP experiment also points toward a larger possibility for Tree Radar: as more city datasets become available, agents could help people navigate increasingly large collections of urban tree data without replacing the visual and geographic context that makes that data meaningful.

Built With

Share this project:

Updates

Submission history