Teradata MCP サーバー テンプレート
概要
Teradata MCP サーバーはオープン ソース プロジェクトであり、プル リクエストによる貢献を歓迎します。
私たちは3つのツールセットと関連する役立つプロンプトを提供しています
- 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 - テーブルに基づいてデータベースのビジネス記述を生成します
- 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 - データベース内のテーブルの有向系統マップを作成します。
- td_data_quality_tools:
- missing_values - 欠損値のある列名のリストを返します
- negative_values - 負の値を持つ列名のリストを返します
- distinctive_categories - 列内のカテゴリのリストを返します
- 標準偏差 - 列の平均と標準偏差を返します
custom_tools.yaml
ファイル、または_tools.yaml
で終わる任意のファイルに、カスタム「クエリ」ツールを追加定義できます。ツール名、説明、実行するSQLクエリを指定するだけです。現時点ではパラメータはサポートされていません。
Test ディレクトリには、ツールをテストするためのシンプルな ClientChatBot ツールが含まれています。
環境設定
ステップ1 - ローカルマシンにuvパッケージがインストールされていることを前提に、環境が構築されています。uvのインストール手順はhttps://github.com/astral-sh/uvをご覧ください。
ステップ2 - mcp-serverリポジトリをクローンする
Windowsの場合
Mac/Linuxの場合
ステップ3 - .envファイルを更新する必要があります
- envファイルの名前を.envに変更します
- データベース URI の形式は teradata://username@host:1025/databasename になります。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 ファイルの例
MCP Inspector でサーバーをテストする
ステップ1 - サーバーを起動し、ターミナルに以下を入力します
注意: Windows マシンでこれを実行していて、npx、npm、または node.js エラーが発生する場合は、ここから必要な node.js ソフトウェアをインストールしてください: https://github.com/nodists/nodist
ステップ2 - MCPインスペクターを開く
- インスペクターツールを開き、 http://127.0.0.1: 6274 にアクセスしてください。
- ツールをクリック
- リストツールをクリック
- read_database_listをクリックします
- 実行をクリック
他のツールもテストし、それぞれが成功するはずです
ターミナルでサーバーを停止するにはControl+cを押します
サーバーの実行
次のコマンドでサーバーを実行できます: uv run teradata-mcp-server
stdio を使用してサーバーをエージェントに追加する
オプション1 - pydanticaiチャットボット
ステップ1 - .envファイルのSSEフラグがFalseに設定されていることを確認する
ステップ2 - ./test/ClientChatBot.pyスクリプトを変更して、サーバーをインストールした場所を指すようにします。次の行を変更する必要があります。
ステップ3 - ./test/ClientChatBot.pyスクリプトを実行します。これにより、MCPサーバーにアクセスできるエージェントとの対話型セッションが作成されます。ターミナルから実行してください。
- エージェントにデータベースのリストを依頼する
- エージェントにデータベース内のテーブルをリストするように依頼する
- エージェントにデータベース内のすべてのオブジェクトを表示するよう依頼する
- エージェントに、テーブルに対してSQLを実行する必要がある質問をします。
- 終了するには「quit」と入力します。
オプション2 - ADKチャットボット
ステップ1 - .envファイルのSSEフラグがFalseに設定されていることを確認する
ステップ 2 - ターミナルから teradata_mcp_server/test ディレクトリに移動します。
ステップ3 - ADK Webサーバーを開く
ステップ4 - td_agentとチャットする
オプション3 - mcp_chatbot
ステップ 0 - テスト ディレクトリの server_config.json を変更し、パスが正しいことを確認します。
ステップ1 - .envファイルのSSEフラグがFalseに設定されていることを確認する
ステップ2 - ターミナルからteradata_mcp_serverディレクトリに移動し、mcp_chatbotを実行します。
ステップ3 - /promptsと入力してプロンプトを一覧表示する
ステップ4 - データベースを説明するプロンプトを実行する
Visual Studio Code Co-pilot に stdio を使用するツールを追加する
- .envファイルのSSEフラグがFalseに設定されていることを確認します。
- VS Codeでは、「コマンドの表示と実行」
- 「MCP: サーバーの追加」を選択
- 「コマンドStdio」を選択
- 実行するにはコマンドに「uv」と入力してください
- IDのサーバー名を入力してください
- 設定.jsonファイルが開きます
- ディレクトリパスを変更し、サーバーがインストールされている場所を指していることを確認します。
- 次のように引数を追加します。
注: お使いのシステムに合わせて、引数のディレクトリパスを変更する必要があります。これは完全なパスである必要があります。コマンドでも uv への完全なパスを指定する必要がある場合があります。
- 設定.jsonファイル内からサーバーを起動するか、「MCP: Start Server」から起動することができます。
SSE を使用したツールを Visual Studio Code Co-pilot に追加する
- .envファイルのSSEフラグがFalseに設定されていることを確認します。
- ターミナルからサーバーを起動する必要があります
- VS Codeでは、「コマンドの表示と実行」
- 「MCP: サーバーの追加」を選択
- 「HTTPサーバー送信イベント」を選択
- サーバーの場所のURLを入力します(例: http://127.0.0.1: 8001/sse)
- IDのサーバー名を入力してください
- ユーザースペースを選択
- 設定.jsonファイルが開きます
- 次のように引数を追加します。
- 設定.jsonファイル内、または「MCP: サーバーを起動」
Claude DesktopにMCPサーバーを追加する
このエントリをclaude_desktop_config.json
構成ファイルに追加することで、このサーバー Claude デスクトップを追加できます。
注: お使いのシステムに合わせて、引数のディレクトリパスを変更する必要があります。これは完全なパスである必要があります。コマンドでも uv への完全なパスを指定する必要がある場合があります。
注意: これには、Claude のシステム パスでuv
が使用可能であるか、システム上にグローバルにインストールされていること (例: Mac OS ユーザーの場合はbrew
とともに uv がインストールされている) が必要です。
mcpo を使用してツールを REST エンドポイントとして公開する
mcpoを使用すると、この MCP ツールを OpenAPI 互換の HTTP サーバーとして公開できます。
たとえば、uv を使用する場合: uvx mcpo --port 8001 --api-key "top-secret" -- uv run teradata-mcp-server
Teradata ツールはローカル REST エンドポイントとして利用できるようになりました。ドキュメントを表示し、 http://localhost:8001/docsでテストしてください。
Open WebUIでサーバーを使用する
Open WebUIは、Ollamaをはじめとする様々なLLMランナーをサポートし、完全にオフラインで動作するように設計された、ユーザーフレンドリーなセルフホスト型AIプラットフォームです。直感的なGUIからLLMやMCPサーバーと簡単に連携できます。mcpoコンポーネントを使用することで、このMCPサーバーと統合できます。
まず、上記のセクションで指定されているように mcpo を実行します。
http://localhost:8080でUIにアクセスします。MCPツールを追加するには、「設定」>「ツール」>「接続の追加」に移動し、mcpoサーバーの接続詳細を入力します(例: localhost:8001
、mcpoセクションでコマンドラインを実行した場合はパスワード = top-secret
)。
右側のチャット コントロール バルブ セクションにツールが表示され、モデルがそれを使用できるようになります。
認証
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.
Tools
データベース管理、データ品質評価、MCP インターフェイスを介した SQL 実行機能など、Teradata データベースのクエリと分析を行うためのツールを提供するサーバー。
- 概要
- 環境設定
- MCP Inspector でサーバーをテストする
- サーバーの実行
- stdio を使用してサーバーをエージェントに追加する
- Visual Studio Code Co-pilot に stdio を使用するツールを追加する
- SSE を使用したツールを Visual Studio Code Co-pilot に追加する
- Claude DesktopにMCPサーバーを追加する
- mcpo を使用してツールを REST エンドポイントとして公開する
- Open WebUIでサーバーを使用する
- 認証
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that provides tools for interacting with Supabase databases, storage, and edge functions.Last updated -1441JavaScriptMIT License
- -securityAlicense-qualityAn MCP server that connects to Supabase PostgreSQL databases, exposing table schemas as resources and providing tools for data analysis through SQL queries.Last updated -JavaScriptMIT License
- -security-license-qualityAn 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 -1JavaScript
- AsecurityAlicenseAqualityAn 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 -1044PythonMIT License