teradata

package
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 15, 2026 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Copyright 2026 Teradata

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Package teradata provides a Teradata backend implementation using the official Teradata MCP server (https://github.com/Teradata/teradata-mcp-server).

This backend wraps the public Teradata MCP server, which provides tools for: - Query execution (Base Tools) - RAG (Search Tools) - Feature Store operations - Data Quality checks - DBA operations - Security management - Vector Store operations - ML functions - Plotting - Backup and Restore

The Teradata MCP server is a Python-based server that connects to Teradata databases and exposes operations via the Model Context Protocol.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Backend

type Backend struct {
	// contains filtered or unexported fields
}

Backend implements fabric.ExecutionBackend for Teradata databases using the official Teradata MCP server.

func NewBackend

func NewBackend(ctx context.Context, cfg Config) (*Backend, error)

NewBackend creates a new Teradata backend that uses the official Teradata MCP server.

Prerequisites:

  • Python installed
  • uv package manager installed (pip install uv)
  • Teradata MCP server installed (uv pip install teradata-mcp-server)
  • Teradata database accessible from this machine

The backend will spawn the teradata-mcp-server process and communicate with it via the Model Context Protocol (stdio transport).

func (*Backend) Capabilities

func (b *Backend) Capabilities() *fabric.Capabilities

Capabilities returns the backend's capabilities.

func (*Backend) Close

func (b *Backend) Close() error

Close closes the backend and releases resources.

func (*Backend) ExecuteCustomOperation

func (b *Backend) ExecuteCustomOperation(ctx context.Context, op string, params map[string]interface{}) (interface{}, error)

ExecuteCustomOperation executes a custom operation via the MCP server. This allows access to Teradata-specific tools like: - RAG operations - Feature Store operations - Data Quality checks - Vector Store operations - ML functions - Plotting - Backup/Restore

func (*Backend) ExecuteQuery

func (b *Backend) ExecuteQuery(ctx context.Context, query string) (*fabric.QueryResult, error)

ExecuteQuery executes a SQL query via the Teradata MCP server.

func (*Backend) GetMetadata

func (b *Backend) GetMetadata(ctx context.Context, resource string) (map[string]interface{}, error)

GetMetadata retrieves metadata for a resource.

func (*Backend) GetSchema

func (b *Backend) GetSchema(ctx context.Context, resource string) (*fabric.Schema, error)

GetSchema retrieves schema information for a table.

func (*Backend) ListResources

func (b *Backend) ListResources(ctx context.Context, filters map[string]string) ([]fabric.Resource, error)

ListResources lists available tables/resources.

func (*Backend) ListTools

func (b *Backend) ListTools(ctx context.Context) ([]string, error)

ListTools returns all available tools from the Teradata MCP server. This includes Base Tools, RAG Tools, Feature Store Tools, Data Quality Tools, DBA Tools, Security Tools, Vector Store Tools, ML Functions, Plot Tools, and BAR Tools.

func (*Backend) Name

func (b *Backend) Name() string

Name returns the backend name.

func (*Backend) Ping

func (b *Backend) Ping(ctx context.Context) error

Ping checks if the backend is healthy.

type Config

type Config struct {
	// Host is the Teradata database host (e.g., "teradata.example.com")
	Host string

	// Port is the Teradata database port (default: 1025)
	Port int

	// Username for Teradata authentication
	Username string

	// Password for Teradata authentication
	Password string

	// Database is the default database/schema to use
	Database string

	// MCPServerPath is the path to the teradata-mcp-server executable
	// If empty, assumes "teradata-mcp-server" is in PATH
	MCPServerPath string

	// Logger for backend operations
	Logger *zap.Logger

	// ToolPrefix to use for tool names (default: "teradata")
	ToolPrefix string
}

Config holds configuration for the Teradata backend.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL