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 ¶
- type Backend
- func (b *Backend) Capabilities() *fabric.Capabilities
- func (b *Backend) Close() error
- func (b *Backend) ExecuteCustomOperation(ctx context.Context, op string, params map[string]interface{}) (interface{}, error)
- func (b *Backend) ExecuteQuery(ctx context.Context, query string) (*fabric.QueryResult, error)
- func (b *Backend) GetMetadata(ctx context.Context, resource string) (map[string]interface{}, error)
- func (b *Backend) GetSchema(ctx context.Context, resource string) (*fabric.Schema, error)
- func (b *Backend) ListResources(ctx context.Context, filters map[string]string) ([]fabric.Resource, error)
- func (b *Backend) ListTools(ctx context.Context) ([]string, error)
- func (b *Backend) Name() string
- func (b *Backend) Ping(ctx context.Context) error
- type Config
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 ¶
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) 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 ¶
ExecuteQuery executes a SQL query via the Teradata MCP server.
func (*Backend) GetMetadata ¶
GetMetadata retrieves metadata for a resource.
func (*Backend) ListResources ¶
func (b *Backend) ListResources(ctx context.Context, filters map[string]string) ([]fabric.Resource, error)
ListResources lists available tables/resources.
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.