Skip to main content
Glama

Teradata MCP Server

Official
by Teradata

Шаблон сервера Teradata MCP

Обзор

Сервер Teradata MCP — это проект с открытым исходным кодом, и мы приветствуем любые предложения через запросы на включение внесенных изменений.

Мы предоставляем три набора инструментов и соответствующие полезные подсказки.

  1. td_base_tools:
    • execute_read_query — запускает запрос на чтение
    • execute_write_query — запускает запрос на запись
    • read_table_DDL - возвращает результаты показа таблицы
    • read_database_list - возвращает список всех баз данных
    • read_table_list — возвращает список таблиц в базе данных
    • read_column_description - возвращает описание столбцов в таблице
    • read_table_preview - возвращает информацию о столбце и 5 строках из таблицы
    • read_table_affinity — получает таблицы, которые часто используются вместе
    • read_table_usage — измерение использования таблицы и представлений пользователями в заданной схеме.
    • prompt_general - Создание SQL-запроса к базе данных
    • prompt_table_business_description - формирует бизнес-описание таблицы
    • prompt_database_business_description - формирует бизнес-описание базы данных на основе таблиц
  2. td_dba_tools:
    • read_user_sql_list — возвращает список недавно выполненных SQL для пользователя
    • read_table_sql_list — возвращает список недавно выполненных SQL для таблицы
    • read_table_space - возвращает табличное пространство CurrentPerm
    • read_database_space — возвращает выделенное пространство, использованное пространство и процент использования для базы данных
    • read_database_version — возвращает информацию о версии базы данных
    • read_resuage_summary — получение сводных показателей использования системы Teradata по дням недели и часам для каждого типа рабочей нагрузки и уровня сложности запроса.
    • read_flow_control — получение метрик управления потоком данных системы Teradata по дням и часам
    • read_feature_usage — Получить метрики использования функций пользователя
    • read_user_delay — получение метрик задержки пользователя Teradata.
    • prompt_table_archive — создание стратегии архивации таблиц для таблиц базы данных.
    • prompt_database_lineage — создает направленную карту происхождения таблиц в базе данных.
  3. инструменты_качества_данных_td:
    • missing_values — возвращает список имен столбцов с отсутствующими значениями
    • negative_values — возвращает список имен столбцов с отрицательными значениями
    • distinct_categories — возвращает список категорий в столбце
    • standard_deviation — возвращает среднее значение и стандартное отклонение для столбца

Вы можете добавить пользовательские инструменты "query" в файл custom_tools.yaml или в любой файл, заканчивающийся на _tools.yaml . Просто укажите имя инструмента, описание и SQL-запрос для выполнения. На данный момент параметры не поддерживаются.

Каталог Test содержит простой инструмент ClientChatBot для тестирования инструментов.


Настройка среды

Шаг 1 - Окружение было собрано, предполагая, что у вас установлен пакет uv на локальной машине. Инструкции по установке uv можно найти на https://github.com/astral-sh/uv

Шаг 2 — Клонируйте репозиторий mcp-server с помощью

В Windows

mkdir MCP cd MCP git clone https://github.com/Teradata/teradata-mcp-server.git cd teradata-mcp-server uv sync .venv/Scripts/activate

На Mac/Linux

mkdir MCP cd MCP git clone https://github.com/Teradata/teradata-mcp-server.git cd teradata-mcp-server uv sync source .venv/bin/activate

Шаг 3 — Вам необходимо обновить файл .env

  • Переименуйте env-файл в .env
  • URI базы данных будет иметь следующий формат teradata://имя пользователя:пароль@хост:1025/имя базы данных, используйте ClearScape Analytics Experience https://www.teradata.com/getting-started/demos/clearscape-analytics
    • имя пользователя нуждается в обновлении
    • пароль необходимо обновить
    • хост Teradata нуждается в обновлении
    • имя базы данных нуждается в обновлении
  • Для работы кода /test/pydanticaiBedrock.py должны быть доступны учетные данные LLM.
  • Настройка SSE
    • SSE: логическое значение, определяющее, будет ли ваш сервер использовать транспорт SSE (SSE = True) или транспорт stdio (SSE=False)
    • SSE_HOST: IP-адрес, по которому можно найти сервер, по умолчанию должен быть 127.0.0.1
    • SSE_PORT: Адрес порта, по которому может быть найден сервер, по умолчанию должен быть 8001.

Пример файла .env

############################################ DATABASE_URI=teradata://username:password@host:1025/databasename SSE=False SSE_HOST=127.0.0.1 SSE_PORT=8001 ############################################ aws_access_key_id= aws_secret_access_key= aws_session_token= aws_region_name= ############################################ OPENAI_API_KEY=

Тестирование вашего сервера с помощью MCP Inspector

Шаг 1 — Запустите сервер, введите в терминале следующее

uv run mcp dev ./src/teradata_mcp_server/server.py

ПРИМЕЧАНИЕ: Если вы запускаете это на компьютере с Windows и получаете ошибки npx, npm или node.js, установите необходимое программное обеспечение node.js отсюда: https://github.com/nodists/nodist

Шаг 2 — Откройте MCP Inspector

  • Вам следует открыть инструмент инспектора, перейти по адресу http://127.0.0.1:6274
  • Нажмите на инструменты
  • Нажмите на список инструментов
  • Нажмите на read_database_list
  • Нажмите «Выполнить»

Протестируйте другие инструменты, каждый из них должен дать успешный результат.

Control+c для остановки сервера в терминале

Запуск сервера

Вы можете просто запустить сервер с помощью: uv run teradata-mcp-server

Добавление вашего сервера к агенту с помощью stdio

Вариант 1 - чат-бот pydanticai

шаг 1 — убедитесь, что флаг SSE в файле .env установлен на значение False

SSE=False

Шаг 2 — Измените скрипт ./test/ClientChatBot.py так, чтобы он указывал на место установки сервера. Для этого вам нужно будет изменить следующую строку:

td_mcp_server = MCPServerStdio('uv', ["--directory", "/Users/Daniel.Tehan/Code/MCP/teradata-mcp-server", "run", "teradata-mcp-server"])

Шаг 3 - запустите скрипт ./test/ClientChatBot.py, это создаст интерактивный сеанс с агентом, имеющим доступ к серверу MCP. Из терминала.

uv run ./test/ClientChatBot.py
  • Попросите агента составить список баз данных.
  • Попросите агента внести таблицу в базу данных.
  • Попросите агента показать все объекты в базе данных.
  • Задайте агенту вопрос, требующий выполнения SQL-запроса по таблице.
  • Для выхода введите «quit».
Вариант 2 — чат-бот ADK

шаг 1 — убедитесь, что флаг SSE в файле .env установлен на значение False

SSE=False

Шаг 2 — перейдите в каталог teradata_mcp_server/test из терминала.

cd test adk web

Шаг 3 — откройте веб-сервер ADK

Шаг 4 — чат с td_agent

Вариант 3 - mcp_chatbot

шаг 0 — Измените server_config.json в тестовом каталоге, убедитесь, что путь указан правильно.

шаг 1 — убедитесь, что флаг SSE в файле .env установлен на значение False

SSE=False

Шаг 2 — перейдите в каталог teradata_mcp_server из терминала и запустите mcp_chatbot

uv run test/mcp_chatbot.py

Шаг 3 — выведите список подсказок, введя /prompts

Query: /prompts

Шаг 4 — запуск запроса на описание базы данных

Query: /prompt database_business_description database_name=demo_user

Добавление инструментов с помощью stdio в Visual Studio Code Co-pilot

  • убедитесь, что флаг SSE в файле .env установлен на значение False
SSE=False
  • В VS Code «Показать и выполнить команды»
  • выберите «MCP: Добавить сервер»
  • выберите «Командный Stdio»
  • введите «uv» в команду для запуска
  • введите имя сервера для идентификатора
  • файл settings.json должен открыться
  • измените путь к каталогу и убедитесь, что он указывает на место, где установлен сервер.
  • добавьте аргументы так, чтобы это выглядело так:

Примечание: вам нужно будет изменить путь к каталогу в args для вашей системы, это должен быть полный путь. Вам также может понадобиться полный путь к uv в команде.

"mcp": { "servers": { "TeradataStdio": { "type": "stdio", "command": "uv", "args": [ "--directory", "/Users/Daniel.Tehan/Code/MCP/teradata-mcp-server", "run", "teradata-mcp-server" ] } } }
  • Вы можете запустить сервер из файла settings.json или с помощью «MCP: Start Server»

Добавление инструментов с использованием SSE в Visual Studio Code Co-pilot

  • убедитесь, что флаг SSE в файле .env установлен на значение False
SSE=True SSE_HOST=127.0.0.1 SSE_PORT=8001
  • вам нужно запустить сервер из терминала
uv run teradata-mcp-server
  • В VS Code «Показать и выполнить команды»
  • выберите «MCP: Добавить сервер»
  • выберите «События, отправленные HTTP-сервером»
  • введите URL-адрес местоположения сервера, например http://127.0.0.1:8001/sse
  • введите имя сервера для идентификатора
  • выберите пользовательское пространство
  • файл settings.json должен открыться
  • добавьте аргументы так, чтобы это выглядело так:
"mcp": { "servers": { "TeradataSSE": { "type": "sse", "url": "http://127.0.0.1:8001/sse" } } }
  • в файле settings.json или вы можете "MCP: Запустить сервер"

Добавление MCP-сервера в Claude Desktop

Вы можете добавить этот сервер Claude Desktop, добавив эту запись в ваш файл конфигурации claude_desktop_config.json :

Примечание: вам нужно будет изменить путь к каталогу в args для вашей системы, это должен быть полный путь. Вам также может понадобиться полный путь к uv в команде.

Примечание: для этого необходимо, чтобы uv был доступен Клоду в системном пути или был установлен глобально в вашей системе (например, uv был установлен с помощью brew для пользователей Mac OS).

{ "mcpServers": { "teradata": { "command": "uv", "args": [ "--directory", "/path_to_code/teradata-mcp-server", "run", "teradata-mcp-server" ], "env": { "DATABASE_URI": "teradata://demo_user:teradata-demo@test-vikzqtnd0db0nglk.env.clearscape.teradata.com:1025/demo_user" } } } }

Представление инструментов как конечных точек REST с помощью mcpo

Вы можете использовать mcpo , чтобы представить этот инструмент MCP как HTTP-сервер, совместимый с OpenAPI.

Например, используя uv: uvx mcpo --port 8001 --api-key "top-secret" -- uv run teradata-mcp-server

Ваши инструменты Teradata теперь доступны как локальные конечные точки REST, просмотрите документацию и протестируйте ее по адресу http://localhost:8001/docs

Использование сервера с Open WebUI

Open WebUI — это удобная для пользователя самостоятельная платформа ИИ, разработанная для работы полностью в автономном режиме, поддерживающая различные LLM-бегунки, такие как Ollama. Она обеспечивает удобный способ взаимодействия с LLM и серверами MCP из интуитивно понятного графического интерфейса. Она может быть интегрирована с этим сервером MCP с помощью компонента mcpo .

Сначала запустите mcpo, как указано в разделе выше .

python -m venv ./env source ./env/bin/activate pip install open-webui open-webui serve

Откройте пользовательский интерфейс по адресу http://localhost:8080 . Чтобы добавить инструменты MCP, перейдите в Настройки > Инструменты > Добавить подключение и введите данные подключения к серверу mcpo (например, localhost:8001 , пароль = top-secret если вы выполнили командную строку в разделе mcpo).

Вы должны увидеть инструменты в разделе «Клапаны управления чатом» справа и настроить свои модели для их использования.


Сертификация

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Сервер, предоставляющий инструменты для запросов и анализа баз данных Teradata, включая управление базами данных, оценку качества данных и возможности выполнения SQL через интерфейс MCP.

  1. Обзор
    1. Настройка среды
      1. Тестирование вашего сервера с помощью MCP Inspector
        1. Запуск сервера
          1. Добавление вашего сервера к агенту с помощью stdio
            1. Вариант 1 - чат-бот pydanticai
            2. Вариант 2 — чат-бот ADK
            3. Вариант 3 - mcp\_chatbot
          2. Добавление инструментов с помощью stdio в Visual Studio Code Co-pilot
            1. Добавление инструментов с использованием SSE в Visual Studio Code Co-pilot
              1. Добавление MCP-сервера в Claude Desktop
                1. Представление инструментов как конечных точек REST с помощью mcpo
                  1. Использование сервера с Open WebUI
                    1. Сертификация

                      Related MCP Servers

                      • A
                        security
                        A
                        license
                        A
                        quality
                        An MCP server that provides tools for interacting with Supabase databases, storage, and edge functions.
                        Last updated -
                        14
                        41
                        JavaScript
                        MIT License
                      • -
                        security
                        A
                        license
                        -
                        quality
                        An MCP server that connects to Supabase PostgreSQL databases, exposing table schemas as resources and providing tools for data analysis through SQL queries.
                        Last updated -
                        JavaScript
                        MIT License
                      • -
                        security
                        -
                        license
                        -
                        quality
                        An MCP server that allows working with MySQL databases by providing tools for executing read-only SQL queries, getting table schemas, and listing database tables.
                        Last updated -
                        1
                        JavaScript
                      • A
                        security
                        A
                        license
                        A
                        quality
                        An open-source MCP server that connects to various data sources (SQL databases, CSV, Parquet files), allowing AI models to execute SQL queries and generate data visualizations for analytics and business intelligence.
                        Last updated -
                        10
                        44
                        Python
                        MIT License
                        • Linux
                        • Apple

                      View all related MCP servers

                      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/Teradata/teradata-mcp-server'

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