You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+17-8Lines changed: 17 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,7 @@ Questo server permette agli agenti AI (come Claude Code) di esplorare ontologie,
10
10
11
11
## Strumenti disponibili
12
12
13
-
Il server espone **34 strumenti** organizzati in 11 categorie:
13
+
Il server espone **38 strumenti** organizzati in 12 categorie:
14
14
15
15
### 1. Operazioni Base
16
16
*`query_sparql`: Esegue una query SPARQL raw contro l'endpoint. Utile per esplorazione ad-hoc.
@@ -25,8 +25,6 @@ Il server espone **34 strumenti** organizzati in 11 categorie:
25
25
### 3. Modello Dati (Ontologie)
26
26
*`list_ontologies`: Elenca le ontologie disponibili (es. Città, Servizi Pubblici).
27
27
*`explore_ontology`: Mostra Classi e Proprietà definite in una specifica ontologia.
28
-
*`list_properties`: Elenca ObjectProperty e DatatypeProperty con dominio e range.
29
-
*`get_property_details`: Ottiene dettagli completi di una proprietà (dominio, range, inverse, functional).
30
28
31
29
### 4. Vocabolari Controllati (Reference Data)
32
30
*`list_vocabularies`: Elenca i vocabolari controllati disponibili (ConceptScheme) con conteggio istanze.
@@ -47,24 +45,34 @@ Nota: questi tool restano utili, ma su `schema.gov.it` sono spesso secondari. Il
47
45
*`suggest_improvements`: Euristiche per trovare anomalie strutturali nell'ontologia (classi orfane, cicli).
48
46
*`describe_resource`: **CBD**. Ottiene tutte le triple di una risorsa (Concise Bounded Description).
49
47
50
-
### 7. Dati Geografici (Italia)
48
+
### 7. Proprieta e Relazioni
49
+
*`list_properties`: Elenca ObjectProperty e DatatypeProperty con dominio e range.
50
+
*`get_property_details`: Ottiene dettagli completi di una proprietà (dominio, range, inverse, functional).
51
+
*`list_instances_of_class`: Elenca le istanze di una classe presente nel catalogo.
52
+
*`find_recommended_scheme_for_property`: Suggerisce il ConceptScheme più adatto per i valori controllati di una proprietà.
53
+
54
+
### 8. Dati Geografici (Italia)
51
55
*`list_municipalities`: Elenca i comuni italiani con codici ISTAT e Belfiore, con filtro per nome.
52
56
*`list_provinces`: Elenca le province italiane con sigla automobilistica e codice metro.
53
57
*`list_identifiers`: Esplora gli identificatori CLV (Codice Catastale, Sigla Automobilistica, ecc.).
58
+
*`resolve_territorial_uri`: Risolve codici territoriali italiani verso URI canonici del catalogo.
54
59
55
-
### 8. Endpoint SPARQL Esterni (linked data)
60
+
### 9. Endpoint SPARQL Esterni (linked data)
56
61
*`recommend_external_endpoints`: Restituisce una short list curata di endpoint SPARQL pubblici utili da usare insieme a `schema.gov.it`.
57
62
*`list_linked_endpoints`: Scopre gli endpoint SPARQL collegati al catalogo via `dcat:DataService`.
58
63
*`query_external_endpoint`: Esegue una query SPARQL su qualsiasi endpoint HTTPS pubblico, con compressione del risultato per ridurre i token.
59
64
*`find_external_alignments`: Trova i mapping verso risorse esterne (Eurostat, DBpedia, ecc.).
60
65
*`explore_external_endpoint`: Esplora la struttura di un endpoint esterno (classi e conteggi).
61
66
62
-
### 9. Ontologia Locale
67
+
### 10. Ontologia Locale
63
68
*`inspect_local_ontology`: Carica e riassume un file RDF/OWL locale (TTL, OWL, NT, JSON-LD) — classi, proprietà, namespace, conteggio triple. Il file viene cachato in memoria dopo il primo caricamento.
64
69
*`query_local_ontology`: Esegue una query SPARQL SELECT su un file locale. Prefissi standard iniettati automaticamente. Risultati compressi come gli altri tool.
65
70
*`compare_local_with_remote`: Confronta le classi/proprietà definite localmente con quelle presenti in schema.gov.it — utile per scoprire cosa riusare o allineare.
66
71
67
-
### 10. Meta-Ottimizzazione
72
+
### 11. Workflow Upload HTTP
73
+
*`query_uploaded_store`: Esegue query SPARQL SELECT su uno store temporaneo creato via `POST /upload`, utile in modalità HTTP.
74
+
75
+
### 12. Meta-Ottimizzazione
68
76
*`suggest_new_tools`: Analizza i log delle query RAW e suggerisce nuovi tool specializzati in base all'utilizzo reale.
69
77
*`analyze_usage`: Analizza i log interni per identificare pattern, errori e query frequenti.
70
78
@@ -240,7 +248,8 @@ Una volta configurato, puoi chiedere all'agente cose come:
240
248
***Prefixes Automatici**: Non serve definire `rdf:`, `owl:`, `skos:`, ecc. nelle query interne. Il server li aggiunge automaticamente. Per gli endpoint esterni i prefissi non vengono iniettati di default.
241
249
***Compressione Token**: Le liste lunghe (> 5 item) vengono restituite in formato tabellare compatto per risparmiare token.
242
250
***Input Sanitizzati**: Tutti i parametri utente sono sanitizzati per prevenire SPARQL injection.
243
-
***Ontologia Locale**: I tool del gruppo 9 (`inspect_local_ontology`, `query_local_ontology`, `compare_local_with_remote`) usano [oxigraph](https://github.com/oxigraph/oxigraph) (WASM) per caricare file RDF/OWL locali in memoria ed eseguire SPARQL. I file vengono cachati dopo il primo caricamento; le query successive sullo stesso file non rileggono il disco. Formati supportati: `.ttl`, `.owl`, `.rdf`, `.nt`, `.jsonld`.
251
+
***Ontologia Locale**: I tool del gruppo 10 (`inspect_local_ontology`, `query_local_ontology`, `compare_local_with_remote`) usano [oxigraph](https://github.com/oxigraph/oxigraph) (WASM) per caricare file RDF/OWL locali in memoria ed eseguire SPARQL. I file vengono cachati dopo il primo caricamento; le query successive sullo stesso file non rileggono il disco. Formati supportati: `.ttl`, `.owl`, `.rdf`, `.nt`, `.jsonld`.
252
+
***Workflow Upload HTTP**: Il tool del gruppo 11 (`query_uploaded_store`) permette di interrogare via SPARQL uno store temporaneo creato via `POST /upload`, con scadenza automatica dopo un'ora.
244
253
***Logging**: Tutte le chiamate vengono loggate in `logs/usage_log.jsonl` per analisi e miglioramento continuo. Ogni entry include argomenti, riepilogo, `source_data_metrics` e `ai_data_metrics`: metriche quantitative dei dati ricevuti e del payload finale passato al modello, ad esempio numero di caratteri e, quando rilevabile, righe, colonne o numero di elementi.
245
254
***Trasporto**: Il server supporta sia `stdio` (default, per uso locale) che HTTP/SSE (via `MCP_TRANSPORT=sse`, per uso remoto/Docker).
0 commit comments