Skip to main content
Glama
hanaahammad

teradata-mcp-poc

by hanaahammad

🏦 AI-Powered Customer Intelligence PoC

Claude + Teradata ClearScape Analytics via Model Context Protocol (MCP)


What Is This?

This project demonstrates how Claude AI can be connected directly to Teradata to enable:

  • 🔍 Natural language data exploration — Ask Claude about your data in plain English

  • 🤖 In-database ML — Run KMeans clustering inside Teradata via Claude, no data movement

  • 📊 Progressive segmentation — Show how richer features reveal richer customer segments

  • 🔗 MCP as a data engineering framework — A reusable pattern for AI + enterprise data


Related MCP server: Teradata MCP Server

The Business Story

"We started with 50,000 customers and 2 years of transactions. By asking Claude natural language questions, we profiled our data, identified quality issues, and ran customer segmentation — all without writing a single line of SQL manually. Everything ran inside Teradata. No data left the platform."

Three Phases of Segmentation

Phase

Features Used

What It Reveals

1. Behavioral

RFM (Recency, Frequency, Monetary)

How customers transact

2. + Risk

RFM + Credit Score

Who is financially at-risk

3. + Demographics

RFM + Risk + Age + Income

Full customer identity

Each phase finds a different optimal number of clusters — proving that richer data = richer insight.


Architecture

┌─────────────────────────────────────────────────────┐
│                  Claude Desktop                      │
│          (Natural Language Interface)                │
└────────────────────┬────────────────────────────────┘
                     │ MCP Protocol
┌────────────────────▼────────────────────────────────┐
│              MCP Server (server.py)                  │
│   13 Tools: query, profile, skew, PI, KMeans...     │
└────────────────────┬────────────────────────────────┘
                     │ teradatasql
┌────────────────────▼────────────────────────────────┐
│         Teradata ClearScape Analytics                │
│   transactions │ demographics │ credit_risk          │
│   segmentation_*_scaled │ val.tda_kmeans             │
└─────────────────────────────────────────────────────┘

Project Structure

teradata-mcp-poc/
│
├── config.example.yaml        ← Copy this → config.yaml and add credentials
├── requirements.txt           ← Python dependencies
│
├── mcp/
│   └── server.py              ← MCP server (15 tools for Teradata)
│
├── notebooks/
│   └── 01_poc_walkthrough.ipynb  ← Full PoC narrative (run this first)
│
├── scripts/
│   └── kmeans_experiment.py   ← Standalone Python experiment runner
│
└── docs/
    └── mcp_tools_reference.md ← All 15 MCP tools explained

Quick Start

Prerequisites

1. Clone the repo

git clone https://github.com/YOUR_USERNAME/teradata-mcp-poc.git
cd teradata-mcp-poc

2. Install dependencies

pip install -r requirements.txt

3. Configure credentials

cp config.example.yaml config.yaml
# Edit config.yaml with your Teradata host, username, and password

4. Connect Claude Desktop to Teradata

Add this to your Claude Desktop config file:

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "teradata": {
      "command": "python",
      "args": ["C:\\path\\to\\teradata-mcp-poc\\mcp\\server.py"]
    }
  }
}

Restart Claude Desktop — you'll see teradata appear in Settings → Connectors.

5. Talk to your data

Open Claude Desktop and ask:

List all my Teradata databases
Show me the tables in demo_user
Profile the transactions table
Check for data skew on the customer_demographics table
Run a data quality check on demo_user.credit_risk

6. Run the notebook

jupyter notebook notebooks/01_poc_walkthrough.ipynb

MCP Tools Reference

Tool

What it does

run_sql

Execute any Teradata SQL

list_databases

Show all accessible databases

list_tables

Show tables in a database

get_schema

Column definitions via DBC.ColumnsV

get_table_ddl

Full CREATE TABLE statement

profile_table

Row count, nulls, distinct values, size

check_duplicates

Find duplicate rows on key columns

get_table_stats

Optimizer statistics (COLLECT STATS)

check_data_skew

AMP distribution analysis

get_pi_info

Primary Index definition

find_table_references

Views/macros that use a table

export_to_csv

Save query results to CSV

get_space_usage

Perm space usage per database

run_kmeans_experiment

Elbow analysis for k=2..N

run_kmeans_final

Save final KMeans model to table


Example Conversations with Claude

Data exploration:

"Profile the transactions table and tell me if there are any data quality issues"

Segmentation:

"Run a KMeans experiment on segmentation_rfm_scaled using monetary_scaled, frequency_scaled, recency_scaled for k=2 to 8"

Performance:

"Check if the customer_demographics table has any skew issues and review its Primary Index"

Lineage:

"Find everything that references the transactions table"


Dataset

The PoC uses a synthetic customer dataset with:

  • 799,477 transactions across 50,000 customers (Jan 2023 – Dec 2024)

  • Customer demographics: age, income, employment years

  • Credit risk: credit score (400–849), loan exposure, late payments

  • Pre-built features: RFM aggregations, multiple scaled tables for clustering


Tech Stack

Component

Technology

AI Interface

Claude Desktop

AI ↔ Data Protocol

MCP (Model Context Protocol)

Database

Teradata ClearScape Analytics

In-Database ML

Teradata VAL (val.tda_kmeans)

Python ML

teradataml, scikit-learn

Visualization

matplotlib, seaborn


License

MIT — free to use and adapt for your own PoC.


Built with Claude Desktop + Teradata ClearScape Analytics

F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hanaahammad/teradata-mcp-poc'

If you have feedback or need assistance with the MCP directory API, please join our Discord server