{
  "serverInfo": {
    "name": "cesium-mcp-runtime",
    "version": "1.143.4"
  },
  "tools": [
    {
      "name": "flyTo",
      "description": "飞行到指定经纬度位置（带动画过渡）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "longitude": {
            "type": "number",
            "description": "经度（-180 ~ 180）"
          },
          "latitude": {
            "type": "number",
            "description": "纬度（-90 ~ 90）"
          },
          "height": {
            "type": "number",
            "default": 50000,
            "description": "相机高度（米），默认 50000"
          },
          "heading": {
            "type": "number",
            "default": 0,
            "description": "航向角（度），0 为正北"
          },
          "pitch": {
            "type": "number",
            "default": -45,
            "description": "俯仰角（度），-90 为正下方"
          },
          "duration": {
            "type": "number",
            "default": 2,
            "description": "飞行动画时长（秒）"
          }
        },
        "required": [
          "longitude",
          "latitude"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "addGeoJsonLayer",
      "description": "添加 GeoJSON 图层到地图（支持 Point/Line/Polygon，可配置颜色/分级/分类渲染）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "图层ID（不传则自动生成）"
          },
          "name": {
            "type": "string",
            "description": "图层显示名称"
          },
          "data": {
            "type": "object",
            "additionalProperties": {},
            "description": "GeoJSON FeatureCollection 对象"
          },
          "style": {
            "type": "object",
            "additionalProperties": {},
            "description": "样式配置（color, opacity, pointSize, choropleth, category）"
          }
        },
        "required": [
          "data"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "addLabel",
      "description": "为 GeoJSON 要素添加文本标注（显示属性值）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "additionalProperties": {},
            "description": "GeoJSON FeatureCollection 对象"
          },
          "field": {
            "type": "string",
            "description": "用作标注文本的属性字段名（如 \"name\"、\"population\"）"
          },
          "style": {
            "type": "object",
            "additionalProperties": {},
            "description": "标注样式（font, fillColor, outlineColor, scale 等）"
          }
        },
        "required": [
          "data",
          "field"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "addHeatmap",
      "description": "添加热力图图层（基于 GeoJSON 点数据生成热力可视化）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "additionalProperties": {},
            "description": "GeoJSON Point FeatureCollection"
          },
          "radius": {
            "type": "number",
            "default": 30,
            "description": "热力影响半径（像素）"
          }
        },
        "required": [
          "data"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "removeLayer",
      "description": "从地图上移除指定图层（按图层ID）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "要移除的图层ID（可通过 listLayers 获取）"
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "clearAll",
      "description": "清除地图上的所有图层、实体、动画和轨迹（一键重置场景）",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "setBasemap",
      "description": "切换底图风格（暗色/卫星/标准/OSM/ArcGIS/浅色/天地图等）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "basemap": {
            "type": "string",
            "enum": [
              "dark",
              "satellite",
              "standard",
              "osm",
              "arcgis",
              "light",
              "tianditu_vec",
              "tianditu_img",
              "amap",
              "amap_satellite"
            ],
            "description": "底图类型：dark=暗色, satellite=卫星影像, standard=标准, osm=OpenStreetMap, arcgis=ArcGIS街道, light=浅色, tianditu_vec=天地图矢量, tianditu_img=天地图影像, amap=高德地图, amap_satellite=高德卫星"
          },
          "token": {
            "type": "string",
            "description": "底图服务令牌（天地图等需要认证的服务必填）"
          },
          "url": {
            "type": "string",
            "description": "自定义URL模板（{x},{y},{z}占位符），提供时忽略basemap参数"
          }
        },
        "required": [
          "basemap"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "screenshot",
      "description": "截取当前地图视图（返回 base64 PNG）",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "highlight",
      "description": "高亮指定图层的要素",
      "inputSchema": {
        "type": "object",
        "properties": {
          "layerId": {
            "type": "string",
            "description": "图层ID"
          },
          "featureIndex": {
            "type": "number",
            "description": "要素索引（不传则高亮全部）"
          },
          "color": {
            "type": "string",
            "default": "#FFFF00",
            "description": "高亮颜色（CSS 格式）"
          }
        },
        "required": [
          "layerId"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "measure",
      "description": "测量距离或面积（基于坐标计算，可在地图上显示）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "type": "string",
            "enum": ["distance", "area"],
            "description": "测量模式：distance=距离, area=面积"
          },
          "positions": {
            "type": "array",
            "items": {
              "type": "array",
              "items": { "type": "number" },
              "minItems": 2,
              "maxItems": 3
            },
            "minItems": 2,
            "description": "坐标数组 [[lon,lat,alt?], ...]"
          },
          "showOnMap": {
            "type": "boolean",
            "default": true,
            "description": "是否在地图上显示测量结果"
          },
          "id": {
            "type": "string",
            "description": "自定义测量实体ID"
          }
        },
        "required": ["mode", "positions"],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "setView",
      "description": "瞬间切换到指定经纬度视角（无动画）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "longitude": {
            "type": "number",
            "description": "经度（-180 ~ 180）"
          },
          "latitude": {
            "type": "number",
            "description": "纬度（-90 ~ 90）"
          },
          "height": {
            "type": "number",
            "default": 50000,
            "description": "高度（米）"
          },
          "heading": {
            "type": "number",
            "default": 0,
            "description": "航向角（度）"
          },
          "pitch": {
            "type": "number",
            "default": -90,
            "description": "俯仰角（度）"
          },
          "roll": {
            "type": "number",
            "default": 0,
            "description": "翻滚角（度）"
          }
        },
        "required": [
          "longitude",
          "latitude"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "getView",
      "description": "获取当前相机视角信息（经纬度、高度、角度）",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "zoomToExtent",
      "description": "缩放到指定地理范围",
      "inputSchema": {
        "type": "object",
        "properties": {
          "west": {
            "type": "number",
            "description": "西边界经度（度）"
          },
          "south": {
            "type": "number",
            "description": "南边界纬度（度）"
          },
          "east": {
            "type": "number",
            "description": "东边界经度（度）"
          },
          "north": {
            "type": "number",
            "description": "北边界纬度（度）"
          },
          "duration": {
            "type": "number",
            "default": 2,
            "description": "动画时长（秒）"
          }
        },
        "required": [
          "west",
          "south",
          "east",
          "north"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "addMarker",
      "description": "在指定经纬度添加标注点，返回 layerId 供后续操作",
      "inputSchema": {
        "type": "object",
        "properties": {
          "longitude": {
            "type": "number",
            "description": "经度（-180 ~ 180）"
          },
          "latitude": {
            "type": "number",
            "description": "纬度（-90 ~ 90）"
          },
          "label": {
            "type": "string",
            "description": "标注文本"
          },
          "color": {
            "type": "string",
            "default": "#3B82F6",
            "description": "标注颜色（CSS 格式）"
          },
          "size": {
            "type": "number",
            "default": 12,
            "description": "点大小（像素）"
          },
          "id": {
            "type": "string",
            "description": "自定义图层ID（不传则自动生成）"
          }
        },
        "required": [
          "longitude",
          "latitude"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "addPolyline",
      "description": "在地图上添加折线（路径、线段），返回 entityId",
      "inputSchema": {
        "type": "object",
        "properties": {
          "coordinates": {
            "type": "array",
            "items": {
              "type": "array",
              "items": { "type": "number" }
            },
            "description": "折线坐标数组 [[lon, lat, height?], ...]"
          },
          "color": {
            "type": "string",
            "default": "#3B82F6",
            "description": "线条颜色（CSS 格式）"
          },
          "width": {
            "type": "number",
            "default": 3,
            "description": "线条宽度（像素）"
          },
          "clampToGround": {
            "type": "boolean",
            "default": true,
            "description": "是否贴地"
          },
          "label": {
            "type": "string",
            "description": "折线标注文本"
          }
        },
        "required": ["coordinates"],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "addPolygon",
      "description": "在地图上添加多边形区域（面积、边界），返回 entityId",
      "inputSchema": {
        "type": "object",
        "properties": {
          "coordinates": {
            "type": "array",
            "items": {
              "type": "array",
              "items": { "type": "number" }
            },
            "description": "多边形外环坐标 [[lon, lat, height?], ...]"
          },
          "color": {
            "type": "string",
            "default": "#3B82F6",
            "description": "填充颜色（CSS 格式）"
          },
          "outlineColor": {
            "type": "string",
            "default": "#FFFFFF",
            "description": "描边颜色"
          },
          "opacity": {
            "type": "number",
            "default": 0.6,
            "description": "填充透明度（0~1）"
          },
          "extrudedHeight": {
            "type": "number",
            "description": "拉伸高度（米），可用于创建立体效果"
          },
          "clampToGround": {
            "type": "boolean",
            "default": true,
            "description": "是否贴地"
          },
          "label": {
            "type": "string",
            "description": "多边形标注文本"
          }
        },
        "required": ["coordinates"],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "addModel",
      "description": "在指定经纬度放置 3D 模型（glTF/GLB），返回 entityId",
      "inputSchema": {
        "type": "object",
        "properties": {
          "longitude": {
            "type": "number",
            "description": "经度（-180 ~ 180）"
          },
          "latitude": {
            "type": "number",
            "description": "纬度（-90 ~ 90）"
          },
          "height": {
            "type": "number",
            "default": 0,
            "description": "放置高度（米）"
          },
          "url": {
            "type": "string",
            "description": "glTF/GLB 模型文件 URL"
          },
          "scale": {
            "type": "number",
            "default": 1,
            "description": "模型缩放比例"
          },
          "heading": {
            "type": "number",
            "default": 0,
            "description": "航向角（度），0=正北"
          },
          "pitch": {
            "type": "number",
            "default": 0,
            "description": "俯仰角（度）"
          },
          "roll": {
            "type": "number",
            "default": 0,
            "description": "翻滚角（度）"
          },
          "label": {
            "type": "string",
            "description": "模型标注文本"
          }
        },
        "required": ["longitude", "latitude", "url"],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "updateEntity",
      "description": "更新已有实体的属性（位置、颜色、标签、缩放、可见性）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entityId": {
            "type": "string",
            "description": "实体ID（addMarker/addPolyline 等返回的 entityId）"
          },
          "position": {
            "type": "object",
            "properties": {
              "longitude": { "type": "number" },
              "latitude": { "type": "number" },
              "height": { "type": "number" }
            },
            "required": ["longitude", "latitude"],
            "description": "新位置坐标"
          },
          "label": {
            "type": "string",
            "description": "新标注文本"
          },
          "color": {
            "type": "string",
            "description": "新颜色（CSS 格式）"
          },
          "scale": {
            "type": "number",
            "description": "新缩放比例"
          },
          "show": {
            "type": "boolean",
            "description": "是否显示"
          }
        },
        "required": ["entityId"],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "removeEntity",
      "description": "移除单个实体（通过 entityId）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entityId": {
            "type": "string",
            "description": "要移除的实体ID"
          }
        },
        "required": ["entityId"],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "setLayerVisibility",
      "description": "设置图层可见性",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "图层ID"
          },
          "visible": {
            "type": "boolean",
            "description": "是否可见"
          }
        },
        "required": [
          "id",
          "visible"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "listLayers",
      "description": "获取当前所有图层列表（含 ID、名称、类型、可见性）",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "getLayerSchema",
      "description": "获取图层的属性字段结构 — 返回字段名、类型、示例值，适用于 GeoJSON/CZML/KML/3D Tiles 图层",
      "inputSchema": {
        "type": "object",
        "properties": {
          "layerId": {
            "type": "string",
            "description": "图层ID（可通过 listLayers 获取）"
          }
        },
        "required": ["layerId"],
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "updateLayerStyle",
      "description": "修改已有图层的样式（颜色、透明度、标注样式等）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "layerId": {
            "type": "string",
            "description": "图层ID"
          },
          "labelStyle": {
            "type": "object",
            "additionalProperties": {},
            "description": "标注样式（font, fillColor, outlineColor, outlineWidth, scale 等）"
          },
          "layerStyle": {
            "type": "object",
            "additionalProperties": {},
            "description": "图层样式（color, opacity, strokeWidth, pointSize）"
          }
        },
        "required": [
          "layerId"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "playTrajectory",
      "description": "播放移动轨迹动画",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "轨迹图层ID"
          },
          "name": {
            "type": "string",
            "description": "轨迹名称"
          },
          "coordinates": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "number"
              }
            },
            "description": "轨迹坐标数组 [[lon, lat, alt?], ...]"
          },
          "durationSeconds": {
            "type": "number",
            "default": 10,
            "description": "动画时长（秒）"
          },
          "trailSeconds": {
            "type": "number",
            "default": 2,
            "description": "尾迹长度（秒）"
          },
          "label": {
            "type": "string",
            "description": "移动体标签"
          }
        },
        "required": [
          "coordinates"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "load3dTiles",
      "description": "加载 3D Tiles 数据集（支持 URL 或 Cesium Ion 资产 ID）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "图层ID"
          },
          "name": {
            "type": "string",
            "description": "图层名称"
          },
          "url": {
            "type": "string",
            "description": "tileset.json 的 URL（与 ionAssetId 二选一）"
          },
          "ionAssetId": {
            "type": "number",
            "description": "Cesium Ion 资产 ID（与 url 二选一）"
          },
          "maximumScreenSpaceError": {
            "type": "number",
            "default": 16,
            "description": "最大屏幕空间误差（值越小越精细）"
          },
          "heightOffset": {
            "type": "number",
            "description": "高度偏移（米）"
          }
        },
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "loadTerrain",
      "description": "加载或切换地形（平坦/ArcGIS/CesiumIon/自定义 URL）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "enum": [
              "flat",
              "arcgis",
              "cesiumion"
            ],
            "description": "地形提供者类型"
          },
          "url": {
            "type": "string",
            "description": "自定义地形服务 URL"
          },
          "cesiumIonAssetId": {
            "type": "number",
            "description": "Cesium Ion 资产ID（provider=cesiumion 时需要）"
          }
        },
        "required": [
          "provider"
        ],
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "loadImageryService",
      "description": "加载影像服务图层（WMS/WMTS/XYZ/ArcGIS MapServer/Cesium Ion）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "图层ID"
          },
          "name": {
            "type": "string",
            "description": "图层名称"
          },
          "url": {
            "type": "string",
            "description": "影像服务 URL（与 ionAssetId 二选一）"
          },
          "ionAssetId": {
            "type": "number",
            "description": "Cesium Ion 影像资产 ID（与 url 二选一）"
          },
          "serviceType": {
            "type": "string",
            "enum": [
              "wms",
              "wmts",
              "xyz",
              "arcgis_mapserver",
              "ion"
            ],
            "description": "服务类型（使用 ionAssetId 时可不填）"
          },
          "layerName": {
            "type": "string",
            "description": "WMS/WMTS 图层名"
          },
          "opacity": {
            "type": "number",
            "default": 1,
            "description": "透明度（0~1）"
          }
        },
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": {
        "taskSupport": "forbidden"
      }
    },
    {
      "name": "loadCzml",
      "description": "加载 CZML 时序数据源（CesiumJS 原生格式，支持时变位置/样式/动画）。data 和 url 二选一",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string", "description": "图层ID（不传则自动生成）" },
          "name": { "type": "string", "description": "数据源显示名称" },
          "data": { "type": "array", "description": "CZML 数据包数组（与 url 二选一）" },
          "url": { "type": "string", "description": "CZML 文件 URL（与 data 二选一，浏览器端 fetch 加载）" },
          "sourceUri": { "type": "string", "description": "CZML 中相对引用的基础 URI" },
          "clampToGround": { "type": "boolean", "description": "将实体贴地显示" },
          "flyTo": { "type": "boolean", "description": "加载后自动飞行到数据范围（默认 true）" }
        },
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "loadKml",
      "description": "加载 KML/KMZ 数据源（Google Earth 格式）。data 和 url 二选一",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string", "description": "图层ID（不传则自动生成）" },
          "name": { "type": "string", "description": "数据源显示名称" },
          "url": { "type": "string", "description": "KML/KMZ 文件 URL（与 data 二选一，浏览器端 fetch 加载）" },
          "data": { "type": "string", "description": "KML XML 字符串（与 url 二选一）" },
          "sourceUri": { "type": "string", "description": "KML 中相对引用的基础 URI" },
          "clampToGround": { "type": "boolean", "description": "将实体贴地显示" },
          "flyTo": { "type": "boolean", "description": "加载后自动飞行到数据范围（默认 true）" }
        },
        "additionalProperties": false,
        "$schema": "http://json-schema.org/draft-07/schema#"
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "lookAtTransform",
      "description": "环绕式相机注视某位置（ENU变换 + 朝向/俯仰/距离）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "longitude": { "type": "number", "description": "目标经度" },
          "latitude": { "type": "number", "description": "目标纬度" },
          "height": { "type": "number", "default": 0, "description": "目标高度（米）" },
          "heading": { "type": "number", "default": 0, "description": "朝向角（度）" },
          "pitch": { "type": "number", "default": -45, "description": "俯仰角（度）" },
          "range": { "type": "number", "default": 5000, "description": "与目标的距离（米）" }
        },
        "required": ["longitude", "latitude"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "startOrbit",
      "description": "开始相机环绕当前中心旋转",
      "inputSchema": {
        "type": "object",
        "properties": {
          "speed": { "type": "number", "default": 1, "description": "旋转速度（度/秒）" },
          "direction": { "type": "string", "enum": ["clockwise", "counterclockwise"], "default": "clockwise" }
        },
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "stopOrbit",
      "description": "停止环绕动画",
      "inputSchema": { "type": "object", "properties": {}, "additionalProperties": false },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "setCameraOptions",
      "description": "配置相机控制器（启用/禁用旋转、缩放、倾斜等）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "enableRotate": { "type": "boolean", "description": "启用旋转" },
          "enableZoom": { "type": "boolean", "description": "启用缩放" },
          "enableTilt": { "type": "boolean", "description": "启用倾斜" },
          "enableLook": { "type": "boolean", "description": "启用环视" },
          "enableTranslate": { "type": "boolean", "description": "启用平移" }
        },
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "addBillboard",
      "description": "在指定位置添加图片图标",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string", "description": "实体ID" },
          "name": { "type": "string", "description": "名称" },
          "position": { "type": "object", "properties": { "longitude": { "type": "number" }, "latitude": { "type": "number" }, "height": { "type": "number" } }, "required": ["longitude", "latitude"] },
          "image": { "type": "string", "description": "图片URL" },
          "scale": { "type": "number", "default": 1, "description": "缩放" },
          "color": { "type": "string", "description": "叠加颜色" }
        },
        "required": ["position", "image"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "addBox",
      "description": "添加带尺寸和材质的3D盒体",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string" },
          "name": { "type": "string" },
          "position": { "type": "object", "properties": { "longitude": { "type": "number" }, "latitude": { "type": "number" }, "height": { "type": "number" } }, "required": ["longitude", "latitude"] },
          "dimensions": { "type": "object", "properties": { "x": { "type": "number" }, "y": { "type": "number" }, "z": { "type": "number" } }, "required": ["x", "y", "z"] },
          "material": { "description": "材质（颜色字符串或材质对象）" },
          "outline": { "type": "boolean" },
          "outlineColor": { "type": "string" },
          "orientation": { "type": "object", "properties": { "heading": { "type": "number" }, "pitch": { "type": "number" }, "roll": { "type": "number" } } }
        },
        "required": ["position", "dimensions"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "addCorridor",
      "description": "添加走廊（带宽度的路径）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string" },
          "name": { "type": "string" },
          "positions": { "type": "array", "items": { "type": "object", "properties": { "longitude": { "type": "number" }, "latitude": { "type": "number" }, "height": { "type": "number" } } } },
          "width": { "type": "number", "description": "走廊宽度（米）" },
          "material": { "description": "材质" },
          "extrudedHeight": { "type": "number" }
        },
        "required": ["positions", "width"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "addCylinder",
      "description": "添加圆柱体或圆锥体",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string" },
          "name": { "type": "string" },
          "position": { "type": "object", "properties": { "longitude": { "type": "number" }, "latitude": { "type": "number" }, "height": { "type": "number" } }, "required": ["longitude", "latitude"] },
          "length": { "type": "number", "description": "高度（米）" },
          "topRadius": { "type": "number", "description": "顶部半径" },
          "bottomRadius": { "type": "number", "description": "底部半径" },
          "material": { "description": "材质" },
          "outline": { "type": "boolean" },
          "outlineColor": { "type": "string" }
        },
        "required": ["position", "length", "topRadius", "bottomRadius"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "addEllipse",
      "description": "添加椭圆",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string" },
          "name": { "type": "string" },
          "position": { "type": "object", "properties": { "longitude": { "type": "number" }, "latitude": { "type": "number" }, "height": { "type": "number" } }, "required": ["longitude", "latitude"] },
          "semiMajorAxis": { "type": "number", "description": "长半轴（米）" },
          "semiMinorAxis": { "type": "number", "description": "短半轴（米）" },
          "material": { "description": "材质" },
          "outline": { "type": "boolean" },
          "outlineColor": { "type": "string" },
          "extrudedHeight": { "type": "number" }
        },
        "required": ["position", "semiMajorAxis", "semiMinorAxis"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "addRectangle",
      "description": "按地理范围添加矩形",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string" },
          "name": { "type": "string" },
          "coordinates": { "type": "object", "properties": { "west": { "type": "number" }, "south": { "type": "number" }, "east": { "type": "number" }, "north": { "type": "number" } }, "required": ["west", "south", "east", "north"] },
          "material": { "description": "材质" },
          "outline": { "type": "boolean" },
          "outlineColor": { "type": "string" },
          "extrudedHeight": { "type": "number" },
          "height": { "type": "number" }
        },
        "required": ["coordinates"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "addWall",
      "description": "沿路径添加墙体",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": { "type": "string" },
          "name": { "type": "string" },
          "positions": { "type": "array", "items": { "type": "object", "properties": { "longitude": { "type": "number" }, "latitude": { "type": "number" } } } },
          "maximumHeights": { "type": "array", "items": { "type": "number" } },
          "minimumHeights": { "type": "array", "items": { "type": "number" } },
          "material": { "description": "材质" },
          "outline": { "type": "boolean" },
          "outlineColor": { "type": "string" }
        },
        "required": ["positions"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "createAnimation",
      "description": "创建基于时间的路径动画（实体沿路径运动）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entityId": { "type": "string", "description": "动画实体ID" },
          "waypoints": { "type": "array", "items": { "type": "object", "properties": { "longitude": { "type": "number" }, "latitude": { "type": "number" }, "height": { "type": "number" }, "time": { "type": "number", "description": "到达时间（秒偏移）" } }, "required": ["longitude", "latitude", "time"] } },
          "model": { "type": "string", "description": "3D模型URL或预设名称（cesium_man, cesium_air, ground_vehicle, cesium_drone）" },
          "modelScale": { "type": "number", "default": 1 },
          "loop": { "type": "boolean", "default": false },
          "pathWidth": { "type": "number", "default": 2 },
          "pathColor": { "type": "string", "default": "YELLOW" }
        },
        "required": ["entityId", "waypoints"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "controlAnimation",
      "description": "播放或暂停动画",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entityId": { "type": "string" },
          "action": { "type": "string", "enum": ["play", "pause"] }
        },
        "required": ["entityId", "action"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "removeAnimation",
      "description": "删除动画实体",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entityId": { "type": "string" }
        },
        "required": ["entityId"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "listAnimations",
      "description": "列出所有活跃的动画",
      "inputSchema": { "type": "object", "properties": {}, "additionalProperties": false },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "updateAnimationPath",
      "description": "更新动画路径的可视属性",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entityId": { "type": "string" },
          "show": { "type": "boolean" },
          "width": { "type": "number" },
          "color": { "type": "string" }
        },
        "required": ["entityId"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "trackEntity",
      "description": "相机追踪实体",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entityId": { "type": "string" }
        },
        "required": ["entityId"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "controlClock",
      "description": "配置Cesium时钟（时间范围、速度、动画状态）",
      "inputSchema": {
        "type": "object",
        "properties": {
          "shouldAnimate": { "type": "boolean" },
          "multiplier": { "type": "number", "description": "时钟速度倍率" },
          "startTime": { "type": "string", "description": "ISO 8601 开始时间" },
          "stopTime": { "type": "string", "description": "ISO 8601 结束时间" },
          "currentTime": { "type": "string", "description": "ISO 8601 当前时间" },
          "clockRange": { "type": "string", "enum": ["UNBOUNDED", "CLAMPED", "LOOP_STOP"] }
        },
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "setGlobeLighting",
      "description": "启用/禁用地球光照和大气效果",
      "inputSchema": {
        "type": "object",
        "properties": {
          "enableLighting": { "type": "boolean", "description": "启用光照" },
          "enableFog": { "type": "boolean", "description": "启用雾效" },
          "enableGroundAtmosphere": { "type": "boolean", "description": "启用地表大气" },
          "enableSkyAtmosphere": { "type": "boolean", "description": "启用天空大气" }
        },
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "setSceneOptions",
      "description": "Configure scene environment (fog, atmosphere, shadows, sun, moon, background color, depth testing)",
      "inputSchema": {
        "type": "object",
        "properties": {
          "fogEnabled": { "type": "boolean", "description": "Enable/disable fog" },
          "fogDensity": { "type": "number", "description": "Fog density (0.0~1.0)" },
          "fogMinimumBrightness": { "type": "number", "description": "Minimum fog brightness (0.0~1.0)" },
          "skyAtmosphereShow": { "type": "boolean", "description": "Show sky atmosphere" },
          "skyAtmosphereHueShift": { "type": "number", "description": "Sky hue shift (-1.0~1.0)" },
          "skyAtmosphereSaturationShift": { "type": "number", "description": "Sky saturation shift (-1.0~1.0)" },
          "skyAtmosphereBrightnessShift": { "type": "number", "description": "Sky brightness shift (-1.0~1.0)" },
          "groundAtmosphereShow": { "type": "boolean", "description": "Show ground atmosphere" },
          "shadowsEnabled": { "type": "boolean", "description": "Enable shadows" },
          "shadowsSoftShadows": { "type": "boolean", "description": "Use soft shadows" },
          "shadowsDarkness": { "type": "number", "description": "Shadow darkness (0.0~1.0)" },
          "sunShow": { "type": "boolean", "description": "Show the sun" },
          "sunGlowFactor": { "type": "number", "description": "Sun glow factor" },
          "moonShow": { "type": "boolean", "description": "Show the moon" },
          "depthTestAgainstTerrain": { "type": "boolean", "description": "Enable depth test against terrain" },
          "backgroundColor": { "type": "string", "description": "Scene background color (CSS format)" }
        },
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "setPostProcess",
      "description": "Configure post-processing effects (bloom glow, ambient occlusion SSAO, anti-aliasing FXAA)",
      "inputSchema": {
        "type": "object",
        "properties": {
          "bloom": { "type": "boolean", "description": "Enable bloom glow effect" },
          "bloomContrast": { "type": "number", "description": "Bloom contrast" },
          "bloomBrightness": { "type": "number", "description": "Bloom brightness" },
          "bloomDelta": { "type": "number", "description": "Bloom delta" },
          "bloomSigma": { "type": "number", "description": "Bloom sigma" },
          "bloomStepSize": { "type": "number", "description": "Bloom step size" },
          "bloomGlowOnly": { "type": "boolean", "description": "Show only glow" },
          "ambientOcclusion": { "type": "boolean", "description": "Enable SSAO" },
          "aoIntensity": { "type": "number", "description": "AO intensity" },
          "aoBias": { "type": "number", "description": "AO bias" },
          "aoLengthCap": { "type": "number", "description": "AO length cap" },
          "aoStepSize": { "type": "number", "description": "AO step size" },
          "fxaa": { "type": "boolean", "description": "Enable FXAA anti-aliasing" }
        },
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "setIonToken",
      "description": "Set Cesium Ion access token for loading Ion assets (3D Tiles, imagery, terrain). Must be called before loading private Ion resources.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "token": { "type": "string", "description": "Cesium Ion access token" }
        },
        "required": ["token"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "geocode",
      "description": "将地址、地标或地名转换为地理坐标（经纬度）。使用 OpenStreetMap Nominatim 免费服务，无需 API Key。",
      "inputSchema": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 1,
            "description": "地址、地标或地名，例如 \"故宫\"、\"Eiffel Tower\"、\"东京塔\""
          },
          "countryCode": {
            "type": "string",
            "minLength": 2,
            "maxLength": 2,
            "description": "两位 ISO 国家代码限制搜索范围（如 \"CN\"、\"US\"、\"JP\"）"
          }
        },
        "required": ["address"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "batchAddEntities",
      "description": "批量添加多个实体（一次调用创建多个 marker/polyline/polygon/model 等），返回所有 entityId",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entities": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": ["marker", "polyline", "polygon", "model", "billboard", "box", "cylinder", "ellipse", "rectangle", "wall", "corridor"],
                  "description": "实体类型"
                }
              },
              "required": ["type"]
            },
            "description": "实体定义数组，每个元素包含 type 字段和该类型所需的参数"
          }
        },
        "required": ["entities"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "queryEntities",
      "description": "查询已有实体 — 按名称、类型、空间范围过滤，返回 entityId/name/type/position 列表",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "名称模糊匹配（不区分大小写）"
          },
          "type": {
            "type": "string",
            "enum": ["marker", "polyline", "polygon", "model", "billboard", "box", "cylinder", "ellipse", "rectangle", "wall", "corridor", "label", "unknown"],
            "description": "按实体类型过滤"
          },
          "bbox": {
            "type": "array",
            "items": { "type": "number" },
            "minItems": 4,
            "maxItems": 4,
            "description": "空间范围过滤 [west, south, east, north]（度）"
          }
        },
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "getEntityProperties",
      "description": "获取指定实体的详细属性 — 包括类型、位置、自定义属性和图形属性",
      "inputSchema": {
        "type": "object",
        "properties": {
          "entityId": {
            "type": "string",
            "description": "实体ID（可通过 queryEntities 获取）"
          }
        },
        "required": ["entityId"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "saveViewpoint",
      "description": "保存当前视角为书签（名称 → 视角状态），可通过 loadViewpoint 恢复",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "书签名称（唯一标识，重复则覆盖）"
          }
        },
        "required": ["name"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "loadViewpoint",
      "description": "恢复已保存的视角书签（带飞行动画），返回保存的视角状态",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "书签名称"
          },
          "duration": {
            "type": "number",
            "description": "飞行动画时长（秒），0 表示瞬移，默认 2"
          }
        },
        "required": ["name"],
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "listViewpoints",
      "description": "列出所有已保存的视角书签",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    },
    {
      "name": "exportScene",
      "description": "导出当前场景快照 — 包含视角、图层列表、实体列表和时间戳",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "execution": { "taskSupport": "forbidden" }
    }
  ],
  "resources": [
    {
      "name": "camera",
      "uri": "cesium://scene/camera",
      "description": "当前相机状态（经纬度、高度、角度）",
      "mimeType": "application/json"
    },
    {
      "name": "layers",
      "uri": "cesium://scene/layers",
      "description": "当前已加载的图层列表（ID、名称、类型、可见性）",
      "mimeType": "application/json"
    }
  ],
  "prompts": []
}