Skip to content

Commit 1d959ff

Browse files
authored
Semantic layer doc (#359)
* updated doc
1 parent d7289b3 commit 1d959ff

4 files changed

Lines changed: 8 additions & 6 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,9 @@ Add this to `claude_desktop_config.json` (Settings > Developer > Edit Config):
5454
| **Use Case** | **Capabilities** | **Tools** |
5555
|---|---|---|
5656
| **Query & Analyze** | Explore tables, profile data, explain results, visualize patterns—no SQL needed | [base](src/teradata_mcp_server/tools/base/README.md), [dba](src/teradata_mcp_server/tools/dba/README.md), [qlty](src/teradata_mcp_server/tools/qlty/README.md), [plot](src/teradata_mcp_server/tools/plot/README.md) |
57+
| **Semantic Layer** | Generate custom semantic layers and tools from YAML or with our Agent Skill | [Learn more →](docs/server_guide/CUSTOMIZING.md) |
5758
| **AI & RAG Pipelines** | Semantic search, retrieval-augmented generation, vector storage | [rag](src/teradata_mcp_server/tools/rag/README.md), [tdvs](src/teradata_mcp_server/tools/tdvs/README.md), [fs](src/teradata_mcp_server/tools/fs/README.md) |
5859
| **Database Admin** | Manage security, monitor capacity, automate backups | [dba](src/teradata_mcp_server/tools/dba/README.md), [sec](src/teradata_mcp_server/tools/sec/README.md), [bar](src/teradata_mcp_server/tools/bar/README.md) |
59-
| **Custom Logic** | Define domain tools, metrics, and semantic layers in YAML | [Learn more →](docs/server_guide/CUSTOMIZING.md) |
6060

6161
## What's New (Latest Release)
6262

docs/server_guide/CUSTOMIZING.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,20 @@
66

77
The Teradata MCP server enables rapid creation of domain-focused semantic layers by allowing you to declaratively define custom tools, prompts, cubes, and glossary terms. No code change needed, you can customize the server by placing YAML files in your current working directory. This approach empowers admins and data teams to tailor the MCP experience to specific business domains—without writing Python code or modifying the server itself.
88

9+
You may use the [MCP Customization Agent Skill](https://github.com/Teradata/teradata-mcp-server/blob/main/agentic/skills/teradata-mcp-customisation/SKILL.md) to create semantic layer configuration based on your existing documentation.
10+
911
## Key principles
1012

1113
- **Domain Focus:** Build MCP servers that speak your users' language and provide business-relevant tools and explanations.
12-
- **Controlled Access:** Predefine queries, aggregations, and resources to ensure correctness, security, and optimal resource utilization.
14+
- **Controlled Access:** Predefine queries, semantic layers, and resources to ensure correctness, security, and optimal resource utilization.
1315
- **Declarative Workflow:** All customization is done via YAML—no code changes required. Admins can add, update, or remove domain logic by editing a single file.
1416
- **Trustworthy Outcomes:** By specifying queries and logic up front, you avoid the risks of LLMs repeatedly "guessing" at database structure, ensuring reliable, consistent and auditable results.
1517

1618
### Semantic Layer
1719
A semantic layer in this context is a collection of custom tools, prompts, cubes, and glossary terms focused on a specific business domain (e.g., sales, finance, HR). It provides:
1820
- **Custom Tools:** Parameterized SQL queries exposed as callable MCP tools.
21+
- **Cubes:** Semantic container defining business metrics and associated dimensions. Compiles and execute SQL at runtime.
1922
- **Prompts:** Predefined user prompts for natural language interactions.
20-
- **Cubes:** Aggregation templates for business metrics, with dimensions and measures.
2123
- **Glossary:** Domain-specific terms, definitions, and synonyms, automatically enriched from cubes and tools.
2224
- **Profiles:** Named sets of tools, prompts, and resources that enable domain-specific server instantiations.
2325

@@ -200,13 +202,13 @@ Each entry in the YAML file is keyed by its name and must specify a `type`. Supp
200202
#### Cube
201203
- **Required:**
202204
- `type`: Must be `cube`
203-
- `sql`: SQL base query
205+
- `sql`: SQL base query or table
204206
- `dimensions`: Dictionary of dimension definitions (each with `expression`)
205207
- `measures`: Dictionary of measure definitions (each with `expression`)
206208
- **Optional:**
207209
- `description`: Text description of the cube
210+
- `joins`: List of relations definitions add related tables/views to the model. Joins are materialized by the compiler only when needed for a selected dimension/metric requested otherwise.
208211
- `parameters`: Dictionary of parameter name (key) and properties (dictionary with `description`, `default`, `optional`, `required`, `type_hint`) - if used in the sql or join conditions
209-
- `joins`: List of join definitions used to add related tables/views only when needed
210212

211213
Cube definitions are exposed as MCP tools. The server generates the tool signature from the cube definition:
212214

docs/server_guide/agentic/skills/teradata-mcp-customisation

Whitespace-only changes.

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "teradata-mcp-server"
3-
version = "0.2.4"
3+
version = "0.2.5"
44

55
description = "Model Context Protocol (MCP) server for Teradata, Community edition"
66
readme = {file = "README.md", content-type = "text/markdown"}

0 commit comments

Comments
 (0)