Plantilla
Widget de globo 3D para MCP Apps
Pon lugares sobre un globo en WebGL dentro de la conversación. Cada lugar es un marcador del tamaño de su valor; el globo gira solo y se puede arrastrar.
Usa three.js
¿Dónde están nuestros clientes? Sácamelo por ciudad, que lo quiero ver en un mapa.
Ha usado show_globe_3d
El de la casa: contorno negro, amarillo mantequilla y subrayado de rotulador en el título.
Los datos que recibe
| Campo | Tipo | Qué es |
|---|---|---|
| titleobligatorio | string | |
| subtitle | string | |
| placesobligatorio | object[] | |
| └ nameobligatorio | string | |
| └ latobligatorio | number | |
| └ lonobligatorio | number | |
| └ value | number | Sets the marker size |
Datos de ejemplo
{
"title": "Clientes por ciudad",
"subtitle": "Datos de ejemplo",
"places": [
{
"name": "Madrid",
"lat": 40.42,
"lon": -3.7,
"value": 42
},
{
"name": "Nueva York",
"lat": 40.71,
"lon": -74.01,
"value": 21
},
{
"name": "Londres",
"lat": 51.51,
"lon": -0.13,
"value": 18
},
{
"name": "Ciudad de México",
"lat": 19.43,
"lon": -99.13,
"value": 15
},
{
"name": "Sídney",
"lat": -33.87,
"lon": 151.21,
"value": 12
},
{
"name": "Estocolmo",
"lat": 59.33,
"lon": 18.07,
"value": 9
}
]
}La tool que lo muestra
Un widget hecho con esta plantilla se muestra con una tool. El modelo lee su descripción para decidir cuándo llamarla y rellena el esquema de entrada con los datos. Esta es la definición que exporta Widgetry:
{
"name": "show_globe_3d",
"title": "Globo 3D",
"description": "Shows places on an interactive 3D globe: each place has a name, latitude, longitude and an optional value that sets the size of its marker. The list of places sits beside it. Use it for offices, customers, events or any data spread across the world.",
"inputSchema": {
"type": "object",
"required": [
"title",
"places"
],
"properties": {
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"places": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": [
"name",
"lat",
"lon"
],
"properties": {
"name": {
"type": "string"
},
"lat": {
"type": "number",
"minimum": -90,
"maximum": 90
},
"lon": {
"type": "number",
"minimum": -180,
"maximum": 180
},
"value": {
"type": "number",
"minimum": 0,
"description": "Sets the marker size"
}
}
}
}
}
}
}Más plantillas
- TableroColumnas con tarjetas, etiquetas, fechas y personas. Como un tablero de Trello.
- Tarjeta auroraUn anuncio destacado con titular, cifra y botón, que cada diseño viste a su manera.
- El tiempoEl tiempo de un lugar con iconos SVG animados y las próximas horas; cada diseño pinta su propio cielo.
- Anillos de progresoObjetivos como anillos SVG que se llenan al aparecer, con su porcentaje.
- Gráfico de áreaUna serie en el tiempo como curva SVG con relleno degradado que se dibuja al entrar.
- Carrusel 3DTarjetas en un anillo que gira en 3D con perspectiva CSS. Se para al pasar el ratón.
- Cuenta atrásDías, horas, minutos y segundos hasta un evento, que cambian en vivo con un pequeño salto.
- HitosCifras que cuentan desde cero y entran en cascada, animadas con GSAP.
- DonutReparto en partes de un total, con Chart.js: se anima al entrar y responde al ratón.
- IndicadoresUna fila de cifras clave con su variación frente al periodo anterior.
- Gráfico de barrasBarras horizontales con su valor, ordenadas como lleguen.
- TablaFilas y columnas con cabecera fija; las columnas las decide quien llama.