tdsql-mcp 1.3.2__tar.gz → 1.3.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/PKG-INFO +1 -1
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/pyproject.toml +1 -1
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/guidelines.md +54 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/.env.example +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/.gitignore +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/8888 +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/CLAUDE.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/README.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/docs/architecture.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/requirements.txt +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/README.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/SKILL.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/aggregate-functions.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/ai-text-analytics.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/association-analysis.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/authorization-objects.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/bit-byte-functions.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/byom-model-loading.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/byom-scoring.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/catalog-views.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/conditional.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/data-cleaning.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/data-exploration.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/data-prep.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/data-types-casting.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/date-time.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/embeddings.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/fit-transform-pattern.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/geospatial.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/hypothesis-testing.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/index.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/json-functions.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/llm-providers.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/ml-functions.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/ml-patterns.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/model-evaluation.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/numeric-functions.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/path-analysis.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/query-tuning.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/sql-basics.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/string-functions.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/text-analytics.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-concepts.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-data-prep.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-diagnostics.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-dsp.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-estimation.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-forecasting.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-formula-rules.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-utility.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/utility-functions.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/vector-search.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/window-functions.md +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/src/tdsql_mcp/__init__.py +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/src/tdsql_mcp/server.py +0 -0
- {tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tdsql-mcp
|
|
3
|
-
Version: 1.3.
|
|
3
|
+
Version: 1.3.3
|
|
4
4
|
Summary: MCP server for Teradata Vantage — SQL execution and native analytics function reference for AI agents
|
|
5
5
|
Project-URL: Homepage, https://github.com/ksturgeon-td/tdsql-mcp
|
|
6
6
|
Project-URL: Repository, https://github.com/ksturgeon-td/tdsql-mcp
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tdsql-mcp"
|
|
7
|
-
version = "1.3.
|
|
7
|
+
version = "1.3.3"
|
|
8
8
|
description = "MCP server for Teradata Vantage — SQL execution and native analytics function reference for AI agents"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
@@ -195,6 +195,31 @@ Native functions distribute across all AMPs. The result set returned to the agen
|
|
|
195
195
|
| External TF-IDF | `TD_TFIDF` | `text-analytics` |
|
|
196
196
|
| External word embeddings | `TD_WordEmbeddings` | `text-analytics` |
|
|
197
197
|
|
|
198
|
+
### LLM-Powered Text Analytics (AI_* Functions)
|
|
199
|
+
|
|
200
|
+
> **Prerequisites:** Requires an authorization object and LLM provider configuration before use. See `authorization-objects` and `llm-providers` topics. All functions use `TD_SYSFNLIB.<FunctionName>(ON ...)` — do **not** add a `PARTITION BY` clause.
|
|
201
|
+
|
|
202
|
+
| Instead of this | Use this (native function) | Topic |
|
|
203
|
+
|-----------------|---------------------------|-------|
|
|
204
|
+
| External/post-hoc sentiment scoring | `AI_AnalyzeSentiment` | `ai-text-analytics` |
|
|
205
|
+
| Per-row LLM API calls with question + context data | `AI_AskLLM` (two-table: InputTable + ContextTable, co-partitioned by key) | `ai-text-analytics` |
|
|
206
|
+
| External language detection | `AI_DetectLanguage` | `ai-text-analytics` |
|
|
207
|
+
| External key phrase extraction | `AI_ExtractKeyPhrases` | `ai-text-analytics` |
|
|
208
|
+
| External PII masking | `AI_MaskPII` (detects PII + returns `Masked_Phrase` with `*` replacement) | `ai-text-analytics` |
|
|
209
|
+
| External NER (general named entities — people, places, orgs, dates) | `AI_RecognizeEntities` | `ai-text-analytics` |
|
|
210
|
+
| External PII entity detection (structured metadata, no masking) | `AI_RecognizePIIEntities` | `ai-text-analytics` |
|
|
211
|
+
| External text classification with custom label set | `AI_TextClassifier` — supports single-label and multi-label | `ai-text-analytics` |
|
|
212
|
+
| External summarization | `AI_TextSummarize` — supports 1–5 compression levels | `ai-text-analytics` |
|
|
213
|
+
| External translation | `AI_TextTranslate` | `ai-text-analytics` |
|
|
214
|
+
|
|
215
|
+
**NER/PII function selection:**
|
|
216
|
+
|
|
217
|
+
| Need | Function |
|
|
218
|
+
|------|----------|
|
|
219
|
+
| General named entities (people, places, orgs, dates) | `AI_RecognizeEntities` |
|
|
220
|
+
| PII detection + masked text output | `AI_MaskPII` |
|
|
221
|
+
| PII detection + structured metadata only (no masking) | `AI_RecognizePIIEntities` |
|
|
222
|
+
|
|
198
223
|
### Vector Search
|
|
199
224
|
|
|
200
225
|
| Instead of this | Use this (native function) | Topic |
|
|
@@ -211,6 +236,18 @@ Native functions distribute across all AMPs. The result set returned to the agen
|
|
|
211
236
|
|
|
212
237
|
**Finding the embedding model for an existing corpus:** Query `TD_SYSAI.TD_CollectionsV` or `TD_SYSAI.TD_VectorStores` to discover the model name, provider, and embedding size used to build a corpus. The query pipeline must use the exact same model — mismatched embeddings produce meaningless scores. See `vector-search` topic, "Discovering Existing Vector Stores" section.
|
|
213
238
|
|
|
239
|
+
### Embeddings
|
|
240
|
+
|
|
241
|
+
| Scenario | Use this | Topic |
|
|
242
|
+
|----------|---------|-------|
|
|
243
|
+
| REST-based embedding API (Azure, AWS Bedrock, GCP, NVIDIA NIM, LiteLLM) | `AI_TextEmbeddings` with `OutputFormat('VECTOR')` | `embeddings` |
|
|
244
|
+
| In-database inference — no external API (air-gapped or latency-sensitive) | `ONNXEmbeddings` — model stored as BLOB in Vantage; requires tokenizer table | `embeddings`, `byom-model-loading` |
|
|
245
|
+
| Classical word/document embeddings (GloVe-style) | `TD_WordEmbeddings` | `text-analytics` |
|
|
246
|
+
| Store embeddings for reuse | CTAS with `VECTOR` column, then `TD_VectorNormalize(Approach('UNITVECTOR'))` at storage time | `embeddings`, `vector-search` |
|
|
247
|
+
| Build fast approximate search index | `TD_HNSW` on normalized VECTOR column | `vector-search` |
|
|
248
|
+
|
|
249
|
+
> **Always use `OutputFormat('VECTOR')`** when embeddings will be stored, normalized, or used with `TD_VectorDistance` / `TD_HNSW` / `TD_HNSWPredict`. The `VECTOR` type integrates directly with all vector search functions. See `data-types-casting` for VECTOR sizing (bytes, not dimensions).
|
|
250
|
+
|
|
214
251
|
### JSON Data
|
|
215
252
|
|
|
216
253
|
| Operation | Use this | Topic |
|
|
@@ -236,6 +273,23 @@ Native functions distribute across all AMPs. The result set returned to the agen
|
|
|
236
273
|
| Vantage ARRAY → JSON | `ARRAY_TO_JSON(arr_col)` | `json-functions` |
|
|
237
274
|
| ST_Geometry ↔ GeoJSON | `GeoJSONFromGeom(geom)` / `GeomFromGeoJSON(json, srid)` | `json-functions` |
|
|
238
275
|
|
|
276
|
+
### BYOM — Bring Your Own Model
|
|
277
|
+
|
|
278
|
+
Apply externally trained models to in-database data without moving data out of Teradata. All scoring functions share the same two-table pattern: `InputTable` + `ModelTable DIMENSION`. See `byom-model-loading` topic for model ingestion; see `byom-scoring` for full syntax.
|
|
279
|
+
|
|
280
|
+
| Instead of this | Use this (native function) | Topic |
|
|
281
|
+
|-----------------|---------------------------|-------|
|
|
282
|
+
| Running PMML model inference externally | `PMMLPredict` | `byom-scoring` |
|
|
283
|
+
| Running H2O MOJO or Driverless AI model externally | `H2OPredict` (supports contributions, stage probabilities, leaf node assignments) | `byom-scoring` |
|
|
284
|
+
| Running ONNX tabular model externally | `ONNXPredict` (use `ShowModelInputFieldsMap('true')` to inspect tensor mapping) | `byom-scoring` |
|
|
285
|
+
| Running Dataiku Thin JAR externally | `DataikuPredict` (model_id = fully qualified Java class name) | `byom-scoring` |
|
|
286
|
+
| Running DataRobot Scoring Code externally | `DataRobotPredict` (cast DATE/TIMESTAMP to VARCHAR before scoring) | `byom-scoring` |
|
|
287
|
+
| Running MLeap model externally | `MLeapPredict` | `byom-scoring` |
|
|
288
|
+
| In-database text generation / seq-to-seq (translation, summarization) | `ONNXSeq2Seq` — ONNX transformer, no external API | `byom-scoring` |
|
|
289
|
+
| In-database text classification (transformer) | `ONNXClassification` — supports softmax, argmax, custom output column mapping | `byom-scoring` |
|
|
290
|
+
|
|
291
|
+
> **Architecture distinction:** `ONNXSeq2Seq` and `ONNXClassification` run Hugging Face ONNX transformer models entirely in-database. For REST-based LLM text tasks (sentiment, PII, translation, summarization), use the `AI_*` functions in `ai-text-analytics` instead.
|
|
292
|
+
|
|
239
293
|
### Statistical Testing
|
|
240
294
|
|
|
241
295
|
| Instead of this | Use this (native function) | Topic |
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/aggregate-functions.md
RENAMED
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/ai-text-analytics.md
RENAMED
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/association-analysis.md
RENAMED
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/authorization-objects.md
RENAMED
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/bit-byte-functions.md
RENAMED
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/byom-model-loading.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/data-exploration.md
RENAMED
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/data-types-casting.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/fit-transform-pattern.md
RENAMED
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/hypothesis-testing.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/model-evaluation.md
RENAMED
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/numeric-functions.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/string-functions.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/uaf-formula-rules.md
RENAMED
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/utility-functions.md
RENAMED
|
File without changes
|
|
File without changes
|
{tdsql_mcp-1.3.2 → tdsql_mcp-1.3.3}/skills/teradata-sql-analytics/syntax/window-functions.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|