Teradata

Teradata

MCP server enabling secure Teradata DB interaction for LLMs with OAuth 2.1.

6
Stars
1
Forks
0
Releases

Overview

Teradata MCP Server with OAuth 2.1 Authentication is a Model Context Protocol server implementation that enables secure interaction with Teradata databases for LLM-driven workflows. It supports running SQL queries, workload management, and business intelligence analytics via a curated set of Tools, with enterprise-grade OAuth 2.1 security provided through Keycloak integration. The server validates JWTs via JWKS endpoints, enforces scope-based authorization, exposes protected resource metadata (RFC 9728), and offers token introspection for opaque tokens. Discovery endpoints include the MCP server info and OAuth-protected resource metadata, plus a health check. Multiple MCP transports are supported (Server-Sent Events, Streamable HTTP, and Stdio), with corresponding discovery and health endpoints. Tools include Query (executes SELECT queries with teradata:query and teradata:read scopes), Schema tools (list_db, list_tables, show_tables_details), and Analysis tools (list_missing_values, list_negative_values, list_distinct_values, standard_deviation) for multi-task data analytics. The server emphasizes production-ready resilience, automatic connection retry, Docker deployment options, and Keycloak automation. It targets LLM-based data analytics use cases on Teradata and provides detailed docs and testing utilities.

Details

Owner
arturborycki
Language
Python
License
Updated
2025-12-07

Features

Query Tool

Execute SELECT queries to read data from the Teradata database. Requires teradata:query and teradata:read scopes. Input: query (string). Returns: array of objects.

Schema Tool - list_db

Lists all databases in the Teradata system. Requires teradata:read scope. Returns: list of databases.

Schema Tool - list_tables

Lists objects in a database. Input: db_name (string). Requires teradata:read scope. Returns: list of database objects under the provided or user default database.

Schema Tool - show_tables_details

Shows detailed information about database tables. Inputs: table_name (string), db_name (string). Requires teradata:read scope. Returns: array of column names and data types.

Analysis Tool - list_missing_values

Lists the top features with missing values in a table. Requires teradata:read scope.

Analysis Tool - list_negative_values

Lists how many features have negative values in a table. Requires teradata:read scope.

Analysis Tool - list_distinct_values

Lists how many distinct categories are there for a column in the table. Requires teradata:read scope.

Analysis Tool - standard_deviation

Computes the mean and standard deviation for a column in a table. Requires teradata:read scope.

Audience

LLM developersEnable LLMs to securely query Teradata and analyze data via MCP endpoints.

Tags

teradatamcpoauth-2.1keycloakjwtjwksauthorizationdiscoveryssestreamable-httpstdioanalyticsworkload-management