mcgibs/tests/fixtures/colormap_sample.xml
Ryan Malloy f7fad32a9e Implement mcgibs FastMCP server for NASA GIBS
Complete implementation of all modules:
- constants.py: GIBS API endpoints, projections, TileMatrixSet defs
- models.py: Pydantic models for layers, colormaps, geocoding
- geo.py: Nominatim geocoding with rate limiting and caching
- capabilities.py: WMTS GetCapabilities XML parser with search
- colormaps.py: Colormap v1.3 parser with natural-language summaries
- client.py: Async GIBS HTTP client wrapping all API interactions
- server.py: FastMCP 3.0 tools, resources, and prompts

11 MCP tools, 3 resources, 2 prompts. 47 tests, all passing.
2026-02-18 14:55:41 -07:00

33 lines
2.4 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<ColorMaps xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ColorMap title="Surface Air Temperature" units="K">
<ColorMapEntry rgb="227,245,255" transparent="false" sourceValue="[0,1)" value="[-INF,200.0)" ref="1"/>
<ColorMapEntry rgb="204,234,252" transparent="false" sourceValue="[1,2)" value="[200.0,210.0)" ref="2"/>
<ColorMapEntry rgb="150,200,230" transparent="false" sourceValue="[2,3)" value="[210.0,220.0)" ref="3"/>
<ColorMapEntry rgb="100,180,220" transparent="false" sourceValue="[3,4)" value="[220.0,230.0)" ref="4"/>
<ColorMapEntry rgb="80,160,200" transparent="false" sourceValue="[4,5)" value="[230.0,240.0)" ref="5"/>
<ColorMapEntry rgb="50,140,180" transparent="false" sourceValue="[5,6)" value="[240.0,250.0)" ref="6"/>
<ColorMapEntry rgb="100,200,100" transparent="false" sourceValue="[6,7)" value="[250.0,260.0)" ref="7"/>
<ColorMapEntry rgb="180,220,50" transparent="false" sourceValue="[7,8)" value="[260.0,270.0)" ref="8"/>
<ColorMapEntry rgb="255,200,50" transparent="false" sourceValue="[8,9)" value="[270.0,280.0)" ref="9"/>
<ColorMapEntry rgb="255,150,50" transparent="false" sourceValue="[9,10)" value="[280.0,290.0)" ref="10"/>
<ColorMapEntry rgb="255,100,50" transparent="false" sourceValue="[10,11)" value="[290.0,300.0)" ref="11"/>
<ColorMapEntry rgb="220,50,30" transparent="false" sourceValue="[11,12)" value="[300.0,310.0)" ref="12"/>
<ColorMapEntry rgb="180,20,50" transparent="false" sourceValue="[12,13)" value="[310.0,320.0)" ref="13"/>
<ColorMapEntry rgb="251,3,207" transparent="false" sourceValue="[13,14)" value="[320.0,+INF)" ref="14"/>
<Legend type="continuous">
<LegendEntry rgb="227,245,255" tooltip="&lt; 200 K" id="1"/>
<LegendEntry rgb="204,234,252" tooltip="200 - 210 K" id="2" showTick="true" showLabel="true"/>
<LegendEntry rgb="100,200,100" tooltip="250 - 260 K" id="7" showTick="true" showLabel="true"/>
<LegendEntry rgb="255,100,50" tooltip="290 - 300 K" id="11" showTick="true" showLabel="true"/>
<LegendEntry rgb="251,3,207" tooltip="&gt; 320 K" id="14"/>
</Legend>
</ColorMap>
<ColorMap>
<ColorMapEntry rgb="0,0,0" transparent="true" sourceValue="-9999" nodata="true" label="Missing Data"/>
<Legend type="classification">
<LegendEntry rgb="0,0,0" tooltip="Missing Data" id="1"/>
</Legend>
</ColorMap>
</ColorMaps>