Overview

MCP server for LLM integration.

MCP Server

SMAvatar includes a Model Context Protocol (MCP) server that enables LLMs to discover and generate visuals through natural conversation.

What is MCP?

MCP (Model Context Protocol) is a standard for LLM tool integration. It allows AI assistants like Claude, GPT, and others to:

  • Discover available capabilities
  • Query locations, themes, and features
  • Generate valid API requests
  • Learn from documentation and examples

Use Cases

Conversational Map Creation

"Create a map of the US with Idaho highlighted in blue"

Educational Assistants

Build AI tutors that can generate geography materials on demand.

Developer Tools

Let AI assistants help developers integrate SMAvatar APIs.

Base URL

https://api.smavatar.com/api/mcp

Server Info

curl 'https://api.smavatar.com/api/mcp'

Response:

{
  "name": "SMAvatar MCP Server",
  "version": "1.0.0",
  "description": "MCP server for educational map generation",
  "capabilities": {
    "discovery": true,
    "learning": true,
    "creation": false
  },
  "tools": [
    "list-locations",
    "get-location-details",
    "list-features",
    "list-themes",
    "get-capabilities",
    "search-documentation",
    "get-api-example"
  ]
}

Available Tools

Discovery Tools (No Auth Required)

ToolDescription
list-locationsFind countries, states, cities
get-location-detailsGet detailed location info
list-themesList available map themes
get-theme-detailsGet theme styling info
get-capabilitiesWhat SMAvatar can/can't do

Discovery Tools (API Key Required)

ToolDescription
list-featuresFind rivers and lakes
get-feature-detailsGet feature geometry

Learning Tools

ToolDescription
search-documentationSearch our docs
get-api-exampleGet ready-to-use API examples
get-use-case-examplesEducational use case examples

Quick Example

An LLM conversation might look like:

User: "I need a map of the US with California highlighted"

LLM (internally):

  1. Calls list-locations?type=country → finds US location ID
  2. Calls list-locations?type=subdivision&q=california → finds CA code
  3. Calls get-api-example?scenario=country-map → gets template
  4. Returns API request to user:
curl -X POST '.../jobs/maps' -d '{
  "location_id": "bdd56f14-...",
  "configuration": {
    "highlight_subdivisions": [
      {"subdivision_code": "us-ca", "fill_color": "#3498db"}
    ]
  }
}'

Rate Limits

TierRequests/minRequests/hour
Anonymous10100
API Key1001000

Next Steps

Tools Reference

Complete reference for all MCP tools.

Examples

Example LLM conversations.

Built with Nuxt UI • © 2025