Santa MCP è un server MCP (Model Context Protocol) a tema natalizio che aggiunge strumenti magici a tema Babbo Natale al tuo assistente AI. Perfetto per aggiungere un tocco festivo alle tue conversazioni con GitHub Copilot o altri client MCP!
Santa MCP fornisce tre strumenti speciali:
Restituisce le previsioni meteo per qualsiasi località nella magica notte di Natale (24-25 dicembre). Scopri se Babbo Natale avrà condizioni ideali per il volo!
Valuta se un bambino è stato buono o cattivo durante l'anno e suggerisce una categoria di regalo appropriata. Include un database con comportamenti registrati per vari bambini.
Ottimizza il percorso di consegna della slitta di Babbo Natale tra diverse città. Calcola la distanza totale, il tempo stimato, il consumo di polvere magica e il team di renne necessario!
- .NET 10.0 o superiore
- Un client MCP (es. GitHub Copilot, Claude Desktop, ecc.)
-
Clona il repository:
git clone <url-del-repo> cd santa-mcp
-
Compila il progetto:
dotnet build -c Release
-
Pubblica l'eseguibile:
dotnet publish -c Release -o publish
-
Configura il tuo client MCP (vedi esempi sotto)
Per usare Santa MCP con GitHub Copilot in VS Code, crea o modifica il file mcp.json nella directory ~/Library/Application Support/Code - Insiders/User/ (o Code/User/ se usi VS Code stabile).
{
"servers": {
"santa-mcp": {
"type": "stdio",
"command": "/usr/local/share/dotnet/dotnet",
"args": [
"/percorso/assoluto/santa-mcp/publish/santa-mcp.dll"
]
}
},
"inputs": []
}{
"servers": {
"santa-mcp": {
"type": "stdio",
"command": "C:\\Program Files\\dotnet\\dotnet.exe",
"args": [
"C:\\percorso\\assoluto\\santa-mcp\\publish\\santa-mcp.dll"
]
}
},
"inputs": []
}Note:
- Sostituisci
/percorso/assoluto/oC:\\percorso\\assoluto\\con il percorso effettivo della tua installazione - Il comando
dotnetdeve puntare all'eseguibile del runtime .NET sul tuo sistema - Assicurati che GitHub Copilot sia abilitato per MCP nelle impostazioni di VS Code
Per altri client MCP (come Claude Desktop), aggiungi al file di configurazione MCP (solitamente ~/Library/Application Support/Claude/claude_desktop_config.json su macOS):
{
"mcpServers": {
"santa-mcp": {
"command": "/percorso/assoluto/santa-mcp/publish/santa-mcp"
}
}
}Ecco una conversazione ideale con Santa MCP tramite GitHub Copilot:
👤 Utente: Sai elencarmi i tool di santa mcp che hai a disposizione?
🤖 Copilot: Certo! Ho a disposizione questi strumenti di Santa MCP:
- LapponiaWeather - Ottiene le previsioni meteo per una località nella notte di Natale dell'anno corrente
- NaughtyOrNiceEvaluator - Valuta se un bambino è stato cattivo o buono e suggerisce una categoria di regalo appropriata
- SleighRouteOptimizer - Ottimizza il percorso di consegna della slitta di Babbo Natale tra diverse città, calcolando distanza, tempo e consumo di polvere magica
👤 Utente: Puoi dirmi il tempo di LapponiaWeather per Milano?
🤖 Copilot: Meteo per Milano nella notte di Natale 2025 (24-25 dicembre): Luna piena e neve fresca, temperatura -10°C, paesaggio da favola - notte da cartolina! 🌕
👤 Utente: E su Roma?
🤖 Copilot: Meteo per Roma nella notte di Natale 2025 (24-25 dicembre): Nevicata leggera, temperatura -5°C, vento calmo - perfetto per la slitta di Babbo Natale! ❄️
👤 Utente: Mi dai una valutazione su Bob?
🤖 Copilot: Ecco la valutazione di Bob:
{
"child": "Bob",
"locality": "Rovaniemi, Lapponia",
"year": 2025,
"score": 65,
"verdict": "mostly-nice",
"emoji": "😊",
"recommendedGiftCategory": "educational-toys",
"behaviorSummary": "Analizzati 5 comportamenti registrati",
"message": "👍 Ben fatto Bob! Continua così per l'anno prossimo!",
"weatherNote": "💡 Suggerimento: usa LapponiaWeather con località 'Rovaniemi, Lapponia' per conoscere il meteo della notte di Natale!"
}Bob è stato prevalentemente buono! Ha avuto alcuni momenti difficili (ha rotto il vaso del vicino e mentito ai genitori), ma ha dimostrato maturità chiedendo scusa spontaneamente e aiutando un'anziana ad attraversare.
👤 Utente: E Alice?
🤖 Copilot: Ho trovato due persone con il nome Alice nel database. Una è nata nel 2015 a Milano e una nel 1984 a Roma. Quale Alice ti interessa?
[Dopo aver specificato l'anno di nascita]
Per Alice di Milano (nata nel 2015):
{
"child": "Alice",
"locality": "Milano, Italia",
"year": 2025,
"score": 82,
"verdict": "nice",
"emoji": "😇",
"recommendedGiftCategory": "creative-toys",
"behaviorSummary": "Analizzati 5 comportamenti registrati",
"message": "🌟 Bravissima Alice! Babbo Natale è molto orgoglioso di te!",
"weatherNote": "💡 Suggerimento: usa LapponiaWeather con località 'Milano, Italia' per conoscere il meteo della notte di Natale!"
}Alice è stata bravissima! Ha aiutato la mamma, condiviso i giocattoli, fatto i compiti e persino pulito la cameretta senza che glielo chiedessero.
👤 Utente: Parlami di Charlie invece... mi interessa anche sapere le previsioni del tempo per la sua località
🤖 Copilot: Ecco le informazioni su Charlie:
Valutazione comportamento:
{
"child": "Charlie",
"locality": "New York, USA",
"year": 2025,
"score": 88,
"verdict": "nice",
"emoji": "😇",
"recommendedGiftCategory": "premium-toys",
"behaviorSummary": "Analizzati 5 comportamenti registrati",
"message": "🌟 Bravissimo Charlie! Babbo Natale è molto orgoglioso di te!"
}Meteo per New York nella notte di Natale: Nevicata leggera, temperatura -5°C, vento calmo - perfetto per la slitta di Babbo Natale! ❄️
Charlie è stato eccezionale quest'anno! Ha adottato un cane dal canile, fatto volontariato, organizzato una festa per un amico triste e condiviso la merenda. Merita davvero i regali premium! 🎁
santa-mcp/
├── Program.cs # Entry point del server MCP
├── Tools/
│ ├── LapponiaWeatherTool.cs # Tool per il meteo natalizio
│ ├── NaughtyOrNiceEvaluatorTool.cs # Tool per valutare i bambini
│ └── SleighRouteOptimizerTool.cs # Tool per ottimizzare il percorso
├── santa-mcp.csproj # File di progetto
└── README.md # Questo file
Per aggiungere un nuovo strumento:
- Crea una nuova classe nella cartella
Tools/ - Aggiungi l'attributo
[McpServerToolType]alla classe - Aggiungi l'attributo
[McpServerTool]ai metodi che vuoi esporre - Usa
[Description("...")]per descrivere il tool e i suoi parametri
Esempio:
using System.ComponentModel;
using ModelContextProtocol.Server;
namespace SantaMcp.Tools;
[McpServerToolType]
public class MioNuovoTool
{
[McpServerTool]
[Description("Descrizione del mio tool")]
public static string MioMetodo(string parametro)
{
// La tua logica qui
return "Risultato";
}
}Questo progetto è stato creato per dimostrare l'uso del Model Context Protocol con .NET e per aggiungere un po' di magia natalizia alle conversazioni con AI!
Questo progetto è distribuito con licenza libera. Sentiti libero di usarlo, modificarlo e condividerlo!
🎄 Buon Natale e buon coding! 🎁