AI agents write SQL fluently, but without business context they guess: which price, which discount, which currency, which join. In this project the business meaning lives in OpenMetadata: a business glossary (RevenueDomain) defines every term with a definition, a formula for derived terms, and the source column plus the exact join for source terms, and the terms are tagged on the physical columns. A custom MCP server gives agents the tool build_query, which loads the glossary and the linked column metadata from OpenMetadata and lets the LLM compose SQL using exclusively that knowledge. Derived terms are expanded recursively until only source columns remain, so “revenue” becomes quantity × daily price × (1 − discount) × exchange rate × (1 + VAT), with all joins exactly as defined. If a question uses a term the glossary does not define, the agent refuses instead of inventing it, and generated SQL only runs through a read-only execute_query tool.