# semantic.yamltables:-catalog:analyticsschema:publictable:customersdescription:Core customer master data containing all registered usersowners:-name:Jane Smithtype:userrole:Data Steward-name:Platform Teamtype:grouprole:Technical Ownertags:-name:productiondescription:Production-ready dataset-name:verifieddomain:name:Customerdescription:Customer-related data assetsglossary_terms:-urn:glossary:customercolumns:customer_id:description:Unique customer identifieremail:description:Customer email addresssensitive:truesensitivity_level:PIItags:-piisubscription:description:Current subscription tierglossary_terms:-urn:glossary:subscription-tierglossary:-urn:urn:glossary:customername:Customerdefinition:An individual or organization that has registered for our services-urn:urn:glossary:subscription-tiername:Subscription Tierdefinition:The service level associated with a customer accountrelated_terms:-urn:glossary:customer
The provider checks for file modifications at the specified interval and reloads if the file has changed. This enables updating metadata without restarting mcp-trino.
import("github.com/txn2/mcp-trino/pkg/semantic/providers/static""github.com/txn2/mcp-trino/pkg/tools")// Create provider from environmentprovider,err:=static.New(static.FromEnv())iferr!=nil{log.Fatal(err)}deferprovider.Close()// Or configure programmaticallyprovider,err:=static.New(static.Config{FilePath:"/etc/mcp-trino/semantic.yaml",WatchInterval:30*time.Second,})// Add to toolkittoolkit:=tools.NewToolkit(trinoClient,cfg,tools.WithSemanticProvider(provider),)