← All WebMCP sites

cesium-browser-agent.pages.dev

AI & Agentshttps://cesium-browser-agent.pages.dev/listed as of 2026-07-14
Cesium Agent Lab
See Ora's auditWe loaded this site in a real browser and scored its tools. Score: 68/100 (C).

Tools

flyToactimperative
Animate the camera to a geographic location. Use for visible navigation requested by the user. Returns { success: boolean, message?: string, error?: string }.
Input schema
{
  "type": "object",
  "properties": {
    "longitude": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude in decimal degrees"
    },
    "latitude": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude in decimal degrees"
    },
    "height": {
      "type": "number",
      "minimum": 0,
      "maximum": 50000000,
      "description": "Height above the ellipsoid in meters"
    },
    "heading": {
      "type": "number",
      "minimum": 0,
      "maximum": 360
    },
    "pitch": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "duration": {
      "type": "number",
      "minimum": 0,
      "maximum": 60
    }
  },
  "required": [
    "longitude",
    "latitude"
  ],
  "additionalProperties": false
}
setViewactimperative
Set the camera position immediately without animation. Use for deterministic setup or instant view changes. Returns { success: boolean, message?: string, error?: string }.
Input schema
{
  "type": "object",
  "properties": {
    "longitude": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude in decimal degrees"
    },
    "latitude": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude in decimal degrees"
    },
    "height": {
      "type": "number",
      "minimum": 0,
      "maximum": 50000000,
      "description": "Height above the ellipsoid in meters"
    },
    "heading": {
      "type": "number",
      "minimum": 0,
      "maximum": 360
    },
    "pitch": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "roll": {
      "type": "number",
      "minimum": -180,
      "maximum": 180
    }
  },
  "required": [
    "longitude",
    "latitude"
  ],
  "additionalProperties": false
}
getViewanswerimperative
Get current camera position (longitude, latitude, height, angles) Returns { success, data: { longitude, latitude, height, heading, pitch, roll }, message? }.
Input schema
{
  "type": "object",
  "properties": {}
}
addMarkeractimperative
Add a point marker at coordinates, returns entityId for later reference Returns { success, data: { entityId }, message? }; keep entityId for removeEntity.
Input schema
{
  "type": "object",
  "properties": {
    "longitude": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude in decimal degrees"
    },
    "latitude": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude in decimal degrees"
    },
    "label": {
      "type": "string",
      "maxLength": 200
    },
    "color": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
    },
    "size": {
      "type": "number",
      "minimum": 1,
      "maximum": 128
    },
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    }
  },
  "required": [
    "longitude",
    "latitude"
  ],
  "additionalProperties": false
}
addPolylineactimperative
Draw a polyline (path/route) on the map, returns entityId Returns { success, data: { entityId }, message? }; keep entityId for removeEntity.
Input schema
{
  "type": "object",
  "properties": {
    "coordinates": {
      "type": "array",
      "items": {
        "type": "array",
        "prefixItems": [
          {
            "type": "number",
            "minimum": -180,
            "maximum": 180,
            "description": "Longitude in decimal degrees"
          },
          {
            "type": "number",
            "minimum": -90,
            "maximum": 90,
            "description": "Latitude in decimal degrees"
          },
          {
            "type": "number",
            "minimum": -12000,
            "maximum": 50000000,
            "description": "Optional height in meters"
          }
        ],
        "minItems": 2,
        "maxItems": 3,
        "description": "Coordinate tuple [longitude, latitude, optional height]"
      },
      "minItems": 2,
      "maxItems": 10000
    },
    "color": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
    },
    "width": {
      "type": "number",
      "minimum": 1,
      "maximum": 64
    },
    "clampToGround": {
      "type": "boolean"
    },
    "label": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "coordinates"
  ],
  "additionalProperties": false
}
addPolygonactimperative
Draw a polygon area on the map, returns entityId Returns { success, data: { entityId }, message? }; keep entityId for removeEntity.
Input schema
{
  "type": "object",
  "properties": {
    "coordinates": {
      "type": "array",
      "items": {
        "type": "array",
        "prefixItems": [
          {
            "type": "number",
            "minimum": -180,
            "maximum": 180,
            "description": "Longitude in decimal degrees"
          },
          {
            "type": "number",
            "minimum": -90,
            "maximum": 90,
            "description": "Latitude in decimal degrees"
          },
          {
            "type": "number",
            "minimum": -12000,
            "maximum": 50000000,
            "description": "Optional height in meters"
          }
        ],
        "minItems": 2,
        "maxItems": 3,
        "description": "Coordinate tuple [longitude, latitude, optional height]"
      },
      "minItems": 3,
      "maxItems": 10000
    },
    "color": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
    },
    "outlineColor": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
    },
    "opacity": {
      "type": "number",
      "minimum": 0,
      "maximum": 1
    },
    "extrudedHeight": {
      "type": "number",
      "minimum": 0,
      "maximum": 100000
    },
    "clampToGround": {
      "type": "boolean"
    },
    "label": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "coordinates"
  ],
  "additionalProperties": false
}
addLabelactimperative
Add text labels for GeoJSON features (display property values) Returns { success, data: { labelCount: integer }, message? }.
Input schema
{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "GeoJSON FeatureCollection containing Point, LineString, or Polygon features",
      "properties": {
        "type": {
          "const": "FeatureCollection"
        },
        "features": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "const": "Feature"
              },
              "id": {
                "type": [
                  "string",
                  "number"
                ]
              },
              "geometry": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "Point"
                      },
                      "coordinates": {
                        "type": "array",
                        "prefixItems": [
                          {
                            "type": "number",
                            "minimum": -180,
                            "maximum": 180,
                            "description": "Longitude in decimal degrees"
                          },
                          {
                            "type": "number",
                            "minimum": -90,
                            "maximum": 90,
                            "description": "Latitude in decimal degrees"
                          },
                          {
                            "type": "number",
                            "minimum": -12000,
                            "maximum": 50000000,
                            "description": "Optional height in meters"
                          }
                        ],
                        "minItems": 2,
                        "maxItems": 3,
                        "description": "Coordinate tuple [longitude, latitude, optional height]"
                      }
                    },
                    "required": [
                      "type",
                      "coordinates"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "LineString"
                      },
                      "coordinates": {
                        "type": "array",
                        "items": {
                          "type": "array",
                          "prefixItems": [
                            {
                              "type": "number",
                              "minimum": -180,
                              "maximum": 180,
                              "description": "Longitude in decimal degrees"
                            },
                            {
                              "type": "number",
                              "minimum": -90,
                              "maximum": 90,
                              "description": "Latitude in decimal degrees"
                            },
                            {
                              "type": "number",
                              "minimum": -12000,
                              "maximum": 50000000,
                              "description": "Optional height in meters"
                            }
                          ],
                          "minItems": 2,
                          "maxItems": 3,
                          "description": "Coordinate tuple [longitude, latitude, optional height]"
                        },
                        "minItems": 2
                      }
                    },
                    "required": [
                      "type",
                      "coordinates"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "Polygon"
                      },
                      "coordinates": {
                        "type": "array",
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "prefixItems": [
                              {
                                "type": "number",
                                "minimum": -180,
                                "maximum": 180,
                                "description": "Longitude in decimal degrees"
                              },
                              {
                                "type": "number",
                                "minimum": -90,
                                "maximum": 90,
                                "description": "Latitude in decimal degrees"
                              },
                              {
                                "type": "number",
                                "minimum": -12000,
                                "maximum": 50000000,
                                "description": "Optional height in meters"
                              }
                            ],
                            "minItems": 2,
                            "maxItems": 3,
                            "description": "Coordinate tuple [longitude, latitude, optional height]"
                          },
                          "minItems": 4
                        },
                        "minItems": 1
                      }
                    },
                    "required": [
                      "type",
                      "coordinates"
                    ],
                    "additionalProperties": false
                  }
                ]
              },
              "properties": {
                "type": [
                  "object",
                  "null"
                ],
                "description": "Feature attributes used for labels and thematic styling"
              }
            },
            "required": [
              "type",
              "geometry",
              "properties"
            ],
            "additionalProperties": false
          }
        }
      },
      "required": [
        "type",
        "features"
      ],
      "additionalProperties": false
    },
    "field": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "style": {
      "type": "object",
      "properties": {
        "font": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "fillColor": {
          "type": "string",
          "minLength": 1,
          "maxLength": 64,
          "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
        },
        "outlineColor": {
          "type": "string",
          "minLength": 1,
          "maxLength": 64,
          "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
        },
        "outlineWidth": {
          "type": "number",
          "minimum": 0,
          "maximum": 10
        },
        "backgroundColor": {
          "type": "string",
          "minLength": 1,
          "maxLength": 64,
          "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
        },
        "showBackground": {
          "type": "boolean"
        },
        "pixelOffset": {
          "type": "array",
          "items": {
            "type": "number",
            "minimum": -1000,
            "maximum": 1000
          },
          "minItems": 2,
          "maxItems": 2
        },
        "scale": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 10
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "data",
    "field"
  ],
  "additionalProperties": false
}
addGeoJsonLayeractimperative
Add a GeoJSON data layer to the map (Point/Line/Polygon with styling) Returns { success, data: { id, name, type, visible, color, dataRefId? }, message? }; use id with highlight.
Input schema
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "GeoJSON FeatureCollection containing Point, LineString, or Polygon features",
      "properties": {
        "type": {
          "const": "FeatureCollection"
        },
        "features": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "const": "Feature"
              },
              "id": {
                "type": [
                  "string",
                  "number"
                ]
              },
              "geometry": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "Point"
                      },
                      "coordinates": {
                        "type": "array",
                        "prefixItems": [
                          {
                            "type": "number",
                            "minimum": -180,
                            "maximum": 180,
                            "description": "Longitude in decimal degrees"
                          },
                          {
                            "type": "number",
                            "minimum": -90,
                            "maximum": 90,
                            "description": "Latitude in decimal degrees"
                          },
                          {
                            "type": "number",
                            "minimum": -12000,
                            "maximum": 50000000,
                            "description": "Optional height in meters"
                          }
                        ],
                        "minItems": 2,
                        "maxItems": 3,
                        "description": "Coordinate tuple [longitude, latitude, optional height]"
                      }
                    },
                    "required": [
                      "type",
                      "coordinates"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "LineString"
                      },
                      "coordinates": {
                        "type": "array",
                        "items": {
                          "type": "array",
                          "prefixItems": [
                            {
                              "type": "number",
                              "minimum": -180,
                              "maximum": 180,
                              "description": "Longitude in decimal degrees"
                            },
                            {
                              "type": "number",
                              "minimum": -90,
                              "maximum": 90,
                              "description": "Latitude in decimal degrees"
                            },
                            {
                              "type": "number",
                              "minimum": -12000,
                              "maximum": 50000000,
                              "description": "Optional height in meters"
                            }
                          ],
                          "minItems": 2,
                          "maxItems": 3,
                          "description": "Coordinate tuple [longitude, latitude, optional height]"
                        },
                        "minItems": 2
                      }
                    },
                    "required": [
                      "type",
                      "coordinates"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "const": "Polygon"
                      },
                      "coordinates": {
                        "type": "array",
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "prefixItems": [
                              {
                                "type": "number",
                                "minimum": -180,
                                "maximum": 180,
                                "description": "Longitude in decimal degrees"
                              },
                              {
                                "type": "number",
                                "minimum": -90,
                                "maximum": 90,
                                "description": "Latitude in decimal degrees"
                              },
                              {
                                "type": "number",
                                "minimum": -12000,
                                "maximum": 50000000,
                                "description": "Optional height in meters"
                              }
                            ],
                            "minItems": 2,
                            "maxItems": 3,
                            "description": "Coordinate tuple [longitude, latitude, optional height]"
                          },
                          "minItems": 4
                        },
                        "minItems": 1
                      }
                    },
                    "required": [
                      "type",
                      "coordinates"
                    ],
                    "additionalProperties": false
                  }
                ]
              },
              "properties": {
                "type": [
                  "object",
                  "null"
                ],
                "description": "Feature attributes used for labels and thematic styling"
              }
            },
            "required": [
              "type",
              "geometry",
              "properties"
            ],
            "additionalProperties": false
          }
        }
      },
      "required": [
        "type",
        "features"
      ],
      "additionalProperties": false
    },
    "style": {
      "type": "object",
      "properties": {
        "color": {
          "type": "string",
          "minLength": 1,
          "maxLength": 64,
          "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
        },
        "opacity": {
          "type": "number",
          "minimum": 0,
          "maximum": 1
        },
        "pointSize": {
          "type": "number",
          "minimum": 1,
          "maximum": 128
        },
        "strokeWidth": {
          "type": "number",
          "minimum": 0,
          "maximum": 64
        },
        "randomColor": {
          "type": "boolean"
        },
        "gradient": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64,
            "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
          },
          "minItems": 2,
          "maxItems": 2
        },
        "choropleth": {
          "type": "object",
          "properties": {
            "field": {
              "type": "string",
              "minLength": 1
            },
            "breaks": {
              "type": "array",
              "items": {
                "type": "number"
              },
              "minItems": 1
            },
            "colors": {
              "type": "array",
              "items": {
                "type": "string",
                "minLength": 1,
                "maxLength": 64,
                "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
              },
              "minItems": 2
            }
          },
          "required": [
            "field",
            "breaks",
            "colors"
          ],
          "additionalProperties": false
        },
        "category": {
          "type": "object",
          "properties": {
            "field": {
              "type": "string",
              "minLength": 1
            },
            "colors": {
              "type": "array",
              "items": {
                "type": "string",
                "minLength": 1,
                "maxLength": 64,
                "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
              },
              "minItems": 1
            }
          },
          "required": [
            "field"
          ],
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
setBasemapactimperative
Switch basemap style Returns { success, data: { basemap }, message? }.
Input schema
{
  "type": "object",
  "properties": {
    "basemap": {
      "type": "string",
      "enum": [
        "dark",
        "satellite",
        "standard",
        "osm",
        "arcgis",
        "light"
      ],
      "description": "Basemap type: dark, satellite, standard, osm, arcgis, light"
    }
  },
  "required": [
    "basemap"
  ]
}
removeEntityactimperative
Remove a single entity by its entityId Returns { success, message? } or { success: false, error } when entityId is not found.
Input schema
{
  "type": "object",
  "properties": {
    "entityId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    }
  },
  "required": [
    "entityId"
  ],
  "additionalProperties": false
}
clearAllactimperative
Clear all layers, entities, animations, and trajectories (reset scene) Returns { success, data: { removedLayers, removedEntities }, message? }.
Input schema
{
  "type": "object",
  "properties": {}
}
geocodeactimperative
Convert address/place name to geographic coordinates (uses OSM Nominatim, no API key needed) Returns { success, longitude?, latitude?, displayName?, boundingBox?, message? }.
Input schema
{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 2,
      "maxLength": 300
    },
    "countryCode": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    }
  },
  "required": [
    "address"
  ],
  "additionalProperties": false
}
highlightactimperative
Highlight features of a layer Returns { success: boolean, message?: string, error?: string }.
Input schema
{
  "type": "object",
  "properties": {
    "layerId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "featureIndex": {
      "type": "integer",
      "minimum": 0
    },
    "color": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "CSS color such as #3B82F6 or rgba(59,130,246,0.8)"
    }
  },
  "required": [
    "layerId"
  ],
  "additionalProperties": false
}
measureactimperative
Measure distance or area between coordinates Returns { success, data: { mode, value, unit, segments?, id? }, message? }.
Input schema
{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "distance",
        "area"
      ]
    },
    "positions": {
      "type": "array",
      "items": {
        "type": "array",
        "prefixItems": [
          {
            "type": "number",
            "minimum": -180,
            "maximum": 180,
            "description": "Longitude in decimal degrees"
          },
          {
            "type": "number",
            "minimum": -90,
            "maximum": 90,
            "description": "Latitude in decimal degrees"
          },
          {
            "type": "number",
            "minimum": -12000,
            "maximum": 50000000,
            "description": "Optional height in meters"
          }
        ],
        "minItems": 2,
        "maxItems": 3,
        "description": "Coordinate tuple [longitude, latitude, optional height]"
      },
      "minItems": 2,
      "maxItems": 10000
    },
    "showOnMap": {
      "type": "boolean"
    },
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    }
  },
  "required": [
    "mode",
    "positions"
  ],
  "additionalProperties": false
}
screenshotactimperative
Capture current map view (returns base64 PNG) Returns { success, data: { dataUrl, width, height }, message? }; dataUrl is a base64 PNG.
Input schema
{
  "type": "object",
  "properties": {}
}
Listings are sourced from public community registries and shown as reported.