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
                        43
                        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 -
                        1
                        JavaScript
                        MIT License
                      • -
                        security
                        F
                        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 -
                        600
                        2
                        JavaScript
                      • -
                        security
                        F
                        license
                        -
                        quality
                        An MCP server for interacting with Treasure Data API, allowing users to retrieve database information and check server status through natural language queries.
                        Last updated -
                        Python
                        • 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