Terno
概要
作者による説明(英語の原文)
Query, explore, and manage your databases through natural conversation.
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: クラウドで動く
- トランスポート: Streamable HTTP
- カテゴリ: データベース・データセット
インストール
使っているAIアプリを選んで、設定をコピーしてください。
チェック 5/5 合格 · 質問内容は提供元のサーバー(mcp.terno.ai)を通ります
まず:どの AI を使っていますか?
使っているアプリを選ぶと、下に手順が表示されます。
Claude につなげます · 約 2 分
キー不要、インストール不要 · claude.ai かデスクトップアプリで一度設定すれば、チャットで使えます · 無料アカウントは 1 つまで
Claude の Connectors ページを開く
CustomizeConnectors
「+ Add」→「Add custom connector」を押し、この 2 つを入力
ここからコピーして Claude の同じ名前の欄に貼り付け、Continue を押します
Name · 名前TernoRemote MCP server URL · アドレスhttps://mcp.terno.ai/mcp/previewAuthentication は Claude が検出したままにして Add を押します
チャットで有効にする
+ConnectorsTerno
試してみる
Terno を使って、私に何ができるか教えて、1 つやってみせて✓ Claude が Terno を使っていると言うか、回答に Terno のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
ChatGPT は法人向けプランのみ接続できます
Web 版 ChatGPT Business・Enterprise・Edu で、ワークスペースの管理者かオーナーが追加します · Free・Plus・Pro の場合:あなたの ChatGPT プランではまだ MCP を自分でつなげません
Web 版 ChatGPT で MCP の追加ページを開く
Plugins+Add custom MCP server
名前とアドレスを入力
名前を入れ、Connection にアドレスを貼り付け、注意事項にチェックして Create as a plugin を押します
Name · 名前TernoConnection · アドレスhttps://mcp.terno.ai/mcp/previewチャットで Terno を選ぶ
新しいチャットを開き、入力前にプラグインの一覧から Terno を選びます
試してみる
Terno を使って、私に何ができるか教えて、1 つやってみせて✓ ChatGPT が Terno を使っていると言うか、回答に Terno のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に OpenAI のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Claude Code につなげます · 約 2 分
キー不要、インストール不要
ターミナルを開く
Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く
このコマンドを貼り付けて Enter
claude mcp add --transport http terno https://mcp.terno.ai/mcp/previewClaude Code で /mcp と入力
Terno が一覧にあり、接続済みと表示されれば OK です
試してみる
Terno を使って、私に何ができるか教えて、1 つやってみせて✓ Claude Code が Terno を使っていると言うか、回答に Terno のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Cursor につなげます · 約 2 分
キー不要、インストール不要
Cursor の AI チャットを Agent モードで開く
試してみる
Terno を使って、私に何ができるか教えて、1 つやってみせて✓ Cursor が Terno を使っていると言うか、回答に Terno のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
VS Code につなげます · 約 2 分
キー不要、インストール不要
VS Code の AI チャットを Agent モードで開く
試してみる
Terno を使って、私に何ができるか教えて、1 つやってみせて✓ VS Code が Terno を使っていると言うか、回答に Terno のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Windsurf、Zed、Gemini CLI など MCP を使える他のアプリは追加方法がそれぞれ違います。アプリ一覧で確認してください
Web 経由でつなぐアプリ用のアドレス
https://mcp.terno.ai/mcp/previewJSON 設定は下の「開発者向け」にあります
開発者向け:ターミナルのコマンドと JSON 設定
Web 経由
Claude Code
claude mcp add --transport http terno https://mcp.terno.ai/mcp/previewCursor (~/.cursor/mcp.json)
{
"mcpServers": {
"terno": {
"url": "https://mcp.terno.ai/mcp/preview"
}
}
}VS Code (mcp.json)
{
"servers": {
"terno": {
"type": "http",
"url": "https://mcp.terno.ai/mcp/preview"
}
}
}この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
ひと目でわかる
使えるアプリ
このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。
インターネット経由でつなげるアプリ
ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
できること
このサーバーは、ツール一覧を表示する前にサインインを求めます。
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月11日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名は、リポジトリを所有するGitHubアカウント terno-ai で確認済みです
- ✓ 合格
今もメンテナンスされている
コードの最終更新:今日
- ✓ 合格
ライセンスがある
Apache-2.0を使用
- ✓ 合格
エンドポイントが応答する
615ミリ秒で応答(HTTP 401)
- ✓ 合格
OAuthでサインイン
OAuthでのサインインに対応しているため、AIアプリがログイン画面へ案内してくれます
- … 未チェック
ツールの説明に隠れた指示がない
まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります
話し合い
質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。
ユーザーレビュー
まだレビューはありません
データベース・データセットのほかのサーバーとの比較i
- このカテゴリのほかの1163件のうち92%よりスターが多い
- このカテゴリのほかの1163件のうち100%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの1163件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
Ternoは安全ですか?
当てはまる基本チェック5項目のうち5項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
作者のクラウドで動きます。インストール不要でインターネット経由でつながりますが、送った内容は作者のサーバーを通ります。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は今日、最新バージョン(1.0.2)がレジストリに届いたのは今日です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URL で接続するので、リモート MCP に対応したアプリでも使えます(例:ChatGPT Business 以上)。
代わりに使えるものは?
同じカテゴリには:Dbx, MCP Toolbox for Databases, MCP Toolbox for Databases
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Toolbox for Databases
MCP Toolbox for Databases enables your agent to connect to your database.
MCP Toolbox for Databases
MCP Toolbox for Databases enables your agent to connect to your database.
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
TernoDBI: Database Intelligence Layer
TernoDBI is a data layer for AI agents, built for security and accuracy. It gives agents one controlled way to read your databases (Postgres, MySQL, Snowflake, BigQuery, Databricks, Oracle, SQLite) and your business tools (Google Ads, GA4, HubSpot, Salesforce, Shopify and more), with access rules enforced on every query.
Run it as a standalone Model Context Protocol (MCP) server — locally over stdio, or hosted over HTTP with OAuth — or embed it in an existing Django project.
Quick Start: Chat with your DB in 5 Minutes
- Install TernoDBI
pip install terno-dbi
- Start the server
ternodbi start [port]
By default this starts on 127.0.0.1:8376. On first boot it runs migrations, creates an admin / admin user and a default organisation. It runs in development mode, which is fine on your own machine — see Configuration before exposing it anywhere.
- Add your database Open the admin panel at http://127.0.0.1:8376/admin and add a datasource. Credentials are encrypted at rest.
- Generate an access token, bound to your organisation and a user (
--org/--user) — an unbound token can't use organisation features such as memory:
# Query token (read-only, for AI agents)
ternodbi manage issue_token --name "My Agent" --type query --org default --user admin
Admin token (schema metadata, memory, organisation prompt)
ternodbi manage issue_token --name "System Admin" --type admin --org default --user admin
5. **Connect your MCP client** — see [TernoDBI as an MCP Server](#ternodbi-as-an-mcp-server). To skip self-hosting, use the hosted server instead: [Connect to mcp.terno.ai](#connect-to-the-hosted-server-mcpternoai).
- Start chatting with your data.
Key Features
- Databases: Postgres, MySQL, Snowflake, BigQuery, Databricks, Oracle and SQLite through one API.
- Business tools (API connectors): 17 sources — ads, analytics, CRM, commerce and documents — queried through the same agent tools. See API Connectors.
- Security by default:
- SQLShield: every query is parsed and rewritten before it runs. Only
SELECTis accepted; writes and stacked statements never reach your database. - Row-level security: SQL filters (e.g.
department_id = 5) are injected into every query, per role. - Private tables and columns: hidden from the model's context unless a role is allowed to see them.
- Scoped tokens: per organisation, per datasource, with expiry; OAuth scopes and an Org Admin check for anything that writes.
- LLM-ready schema:
- Semantic names: expose
Customersinstead oft_users_v2_fnl; descriptions for tables and columns. - Column statistics: row and null counts, cardinality and common values, to help models write correct filters.
- Memory and organisation prompt: durable facts and instructions that agents read before answering, per organisation and per user.
- MCP, two ways:
- stdio: separate *query* (read-only) and *admin* servers, each with its own token.
- Hosted HTTP: one server with OAuth 2.1 (dynamic client registration, PKCE, consent screen), plus a
previewchannel for unreleased tools. - Large results: server-side cursors stream rows as NDJSON or download them as CSV.
Usage & Core APIs
Running the server
ternodbi start # default port 8376
ternodbi start 9000 # custom port
`ternodbi start` runs the REST API and admin panel. To also serve MCP over HTTP (`/mcp`), run the ASGI app — see [Hosted over HTTP](#hosted-over-http-with-oauth).
Sharing the database with an existing Django project
If your Django project embeds terno_dbi.core and uses SQLite, the standalone server can read and write the same database file:
DJANGO_PROJECT_PATH=/path/to/your/django/project ternodbi start
This uses /path/to/your/django/project/db.sqlite3.
Management commands
Always pass --org / --user so the token has an identity:
# Query token that expires in 30 days
ternodbi manage issue_token --name "Claude Agent" --type query --expires 30 --org acme --user alice
Admin token
ternodbi manage issue_token --name "System Admin" --type admin --org acme --user alice
Token restricted to one datasource
ternodbi manage issue_token --name "Finance Data Only" --type query --datasource 1 --org acme --user alice
`ternodbi manage` runs any Django management command (`migrate`, `createsuperuser`, …).
Query API
Every request carries Authorization: Bearer . Datasources can be addressed by ID or display name.
| Endpoint | Purpose |
|---|---|
GET /api/query/datasources/ | Datasources this token can reach |
GET /api/query/datasources/{ds}/tables/ | Tables, by public name |
GET /api/query/datasources/{ds}/tables/{table}/columns/ | Columns and types |
GET /api/query/tables/{table_id}/sample/?rows=10 | Sample rows (max 100) |
POST /api/query/datasources/{ds}/query/ | Run a query, results as JSON |
POST /api/query/datasources/{ds}/stream/ | Run a query, results streamed as NDJSON |
POST /api/query/datasources/{ds}/export/ | Run a query, results as a CSV download |
POST /api/query/datasources/1/query/
{ "sql": "SELECT name, email FROM Customers WHERE country = 'DE'", "max_rows": 500 }
Queries use public (semantic) names and are rewritten by SQLShield for the caller's role. Results are capped at `MAX_QUERY_ROWS` (10,000 by default) with a 300-second timeout; both are configurable in `DBI_LAYER`.
TernoDBI as an MCP Server
Query tools (read-only)
| Tool | What it does |
|---|---|
list_datasources | Datasources this connection can reach |
list_tables, list_table_columns | Schema, by public name |
get_sample_data | Sample rows from a table |
execute_query | Run SQL through SQLShield |
list_memories, get_memory, grep_memory | Read stored memory |
get_org_prompt, grep_org_prompt | Read the organisation prompt |
terno_guide | A tour of the server, or what's new |
Admin tools
| Tool | What it does |
|---|---|
connect_datasource | Returns a link where the user adds a datasource — credentials never pass through the chat |
add_datasource, validate_connection | Add or test a connection string (stdio only; never offered over OAuth) |
delete_datasource | Remove a database connection; an API connector is disconnected instead, keeping its settings |
sync_metadata | Refresh the schema from the database |
rename_table, rename_column | Set public names |
update_table_description, update_column_description, get_table_info | Write descriptions, with column statistics to inform them |
save_memory, edit_memory, delete_memory | Manage memory |
update_org_prompt, edit_org_prompt | Manage the organisation prompt |
The server also provides prompts (explore-datasources, build-a-query, schema-health) and resources (ternodbi://docs, ternodbi://changelog). The API-connector tools are listed under API Connectors.
Connect to the hosted server (mcp.terno.ai)
No install needed: point any MCP client that supports Streamable HTTP at the hosted server. The first time you connect, your client opens a browser to sign in with your Terno account and choose an organisation (OAuth 2.1); no API key is pasted anywhere.
| Channel | URL |
|---|---|
| Preview (all tools, including API connectors) | https://mcp.terno.ai/mcp/preview |
| Stable (released tools only) | https://mcp.terno.ai/mcp |
It is also listed in the official MCP Registry as io.github.terno-ai/terno.
Claude Code
claude mcp add --transport http terno https://mcp.terno.ai/mcp/preview
Claude (Desktop or claude.ai): Settings → Connectors → Add custom connector, and paste https://mcp.terno.ai/mcp/preview.
VS Code (GitHub Copilot): add to .vscode/mcp.json:
{
"servers": { "terno": { "type": "http", "url": "https://mcp.terno.ai/mcp/preview" } } }
Cursor: add to ~/.cursor/mcp.json:
{
"mcpServers": { "terno": { "url": "https://mcp.terno.ai/mcp/preview" } } }
Then ask: *"Show me the available datasources."*
Local (stdio): connecting Claude Desktop
- Install Claude Desktop and open Settings → Developer → Edit Config.
- Mint a query and an admin token (see Management commands) and add:
{
"mcpServers": { "ternodbi-query": { "command": "uvx", "args": ["--from", "terno-dbi", "dbi-mcp", "query"], "env": { "TERNODBI_API_URL": "http://127.0.0.1:8376", "TERNODBI_API_KEY": "dbi_query_YOUR_TOKEN_HERE" } }, "ternodbi-admin": { "command": "uvx", "args": ["--from", "terno-dbi", "dbi-mcp", "admin"], "env": { "TERNODBI_API_URL": "http://127.0.0.1:8376", "TERNODBI_API_KEY": "dbi_admin_YOUR_TOKEN_HERE" } } } }
3. Restart Claude Desktop and ask: *"Show me the available datasources."*
If you started TernoDBI on another port, update TERNODBI_API_URL.
Hosted over HTTP with OAuth
Hosted, both tool sets are one server over Streamable HTTP. Users sign in with OAuth 2.1 — dynamic client registration, PKCE, and a consent screen where they pick the organisation — so no API key is pasted into the client. Write access needs both a write scope and the Org Admin role, re-checked on every request.
pip install 'terno-dbi[http]'
uvicorn terno_dbi.server.asgi:application --port 8376
This serves two release channels: /mcp (stable: released tools, changes only on purpose) and /mcp/preview (everything, including tools not yet released on stable). See the MCP guide for OAuth discovery, scopes and releasing tools.
API Connectors
Besides databases, TernoDBI connects to business tools and queries them through the same agent workflow:
| Category | Sources |
|---|---|
| Advertising | Google Ads, Meta Ads, LinkedIn Ads, Microsoft Ads, Amazon Ads, TikTok Ads, X Ads |
| Analytics | Google Analytics 4, Google Search Console, YouTube |
| Social | Instagram Insights, Instagram Public Data, X Analytics |
| CRM | HubSpot, Salesforce, Pipedrive, Zoho CRM |
| Commerce | Shopify |
| Payments | Stripe |
| Documents | Google Sheets, Google Drive |
Connecting a source. An organisation admin opens /connect?connector= (for example google_ads), signs in with the provider, and chooses which of their accounts TernoDBI may query. Tokens are stored encrypted and refreshed automatically. The server needs an OAuth app for each provider you enable:
| Provider | Environment variables |
|---|---|
| Google (Ads, GA4, Search Console, YouTube, Sheets, Drive) | TERNO_GOOGLE_OAUTH_CLIENT_ID, TERNO_GOOGLE_OAUTH_CLIENT_SECRET |
| Meta (Meta Ads, Instagram via Facebook Login) | TERNO_META_APP_ID, TERNO_META_APP_SECRET |
| Instagram (Instagram Login) | TERNO_INSTAGRAM_APP_ID, TERNO_INSTAGRAM_APP_SECRET |
| LinkedIn | TERNO_LINKEDIN_CLIENT_ID, `TERNO_LINKEDIN_CLIENT