matih について
matih は、AI クライアントを Matih データプラットフォームにつなぐ MCP サーバー兼 TypeScript ライブラリです。付与された権限の範囲でデータを照会・分析するチーム向けに、SQL、セマンティックモデル、ガバナンス指標、ダッシュボードの機能を提供し、OAuth/PKCE にも対応します。
主な機能
- 01自然言語クエリと SQL 分析
- 02テーブル、データベース、カタログの探索
- 03セマンティックモデルとオントロジーの照会
- 04ガバナンス指標と分類の管理
- 05チャートとダッシュボードの作成
- 06ファイルのアップロードと状態確認
活用シーン
- 01自然言語で業務データを照会
- 02スキーマの確認とテーブルのプロファイリング
- 03ガバナンス指標とデータ関係の探索
- 04ファイルをアップロードしてダッシュボードを作成
MCP 対応
MCP サーバーが Matih のリモートエンドポイントに接続し、ツール、リソース、プロンプトを公開します。stdio ブリッジはリクエストを転送し、クライアントライブラリはトークン認証と OAuth/PKCE に対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.matih.ai/api/v1/mcpclaude mcp add --transport http ai-matih https://mcp.matih.ai/api/v1/mcp{"mcpServers":{"ai-matih":{"type":"http","url":"https://mcp.matih.ai/api/v1/mcp"}}}Cursor で開く{"servers":{"ai-matih":{"type":"http","url":"https://mcp.matih.ai/api/v1/mcp"}}}VS Code で開く{"mcpServers":{"ai-matih":{"type":"http","url":"https://mcp.matih.ai/api/v1/mcp"}}}{"mcpServers":{"ai-matih":{"serverUrl":"https://mcp.matih.ai/api/v1/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
@matihlabs/mcp
Model Context Protocol を介して、AI クライアント(Claude Desktop、ChatGPT、Cursor、…)を Matih データプラットフォームに接続します。SQL の作成、テーブルのプロファイリング、分析とグラフの実行、ダッシュボードの管理、ファイルのアップロードを、OAuth/PKCE 認証と PII に安全な外部送信を備えた MCP ツールから行えます。
初めての方へ: 手順を追ったユーザーガイド QUICKSTART.md をご覧ください。トークンの作成、Claude Desktop / Cursor の接続、
curlによるスモークテストのコピー&ペースト方法に加え、トラブルシューティングの表も掲載しています。
stdio MCP サーバーとして使用する(Claude Desktop / Cursor)
クライアントの MCP 設定に追加します。トークンは環境変数を通じて渡され、OS のプロセス一覧に漏れる CLI フラグとしては渡されません。
{
"mcpServers": {
"matih": {
"command": "npx",
"args": ["-y", "@matihlabs/mcp", "https://<slug>.app.matih.ai/api/v1/mcp"],
"env": { "MATIH_MCP_TOKEN": "<your Matih bearer token>" }
}
}
}
ブリッジはリモートの Matih HTTP MCP エンドポイントをローカルの stdio MCP サーバーに変換し、すべての tools/call、resources/read、prompts/get を Matih に転送します。
エンドポイント:
<slug>をワークスペースのスラッグに置き換えてください。Matih アプリはhttps://<slug>.app.matih.aiにあります(app.matih.aiのみのホストでは名前解決されません)。 Settings → Developer Tokens からmat_agt_…トークンを取得してください。詳しい手順は QUICKSTART.md をご覧ください。
ライブラリとして使用する
import { McpClient, MatihTools, StaticTokenProvider } from "@matihlabs/mcp";
const client = new McpClient({
endpoint: "https://<slug>.app.matih.ai/api/v1/mcp",
tokenProvider: new StaticTokenProvider(process.env.MATIH_MCP_TOKEN!),
});
// discovery-first: fetch the LIVE tool surface (auto-initializes + caches)
const live = await client.tools();
console.log(live.map((t) => t.name));
// call ANY tool generically — including Beta tools with no typed wrapper
const hot = await client.callTool("get_hot_context", {});
// typed convenience wrappers for the 34 STABLE tools
const graph = await new MatihTools(client).exploreGraph({ query: "orders", depth: 2 });
const matih = new MatihTools(client);
const result = await matih.runSql({ connection_id: "<id>", sql: "select 1" });
静的トークンの代わりに OAuth(PKCE)を使用する
import { McpClient, OAuthTokenProvider } from "@matihlabs/mcp";
const tokenProvider = new OAuthTokenProvider({
resourceMetadataUrl: "https://<slug>.app.matih.ai/.well-known/oauth-protected-resource/api/v1/mcp",
clientId: "<registered client id>",
acquire: async ({ metadata, clientId, resource }) => {
// open metadata.authorization_endpoint (PKCE S256, resource=<resource>),
// capture the code at your redirect_uri, return { code, verifier, redirectUri }.
},
});
プロバイダーは RFC 9728 → RFC 8414 のディスカバリー、PKCE S256、RFC 8707 のリソースに紐づくトークンに対応し、トークンをキャッシュして更新します。401 invalid_token が返された場合は、1 回だけ再認証を行います。
ツール
ディスカバリーが主要な API です。await client.tools() は実行時のツール記述子を返し、client.callTool(name, args) ですべての公開ツールを呼び出せます。型付きファサード(MatihTools)は、34 個の安定版ツール(STABLE_TOOL_NAMES)をカバーしています。
- クエリと SQL:
ask(自然言語から、根拠に基づく回答と実行した SQL を生成)、run_sql、run_analysis、get_query_result、export_result - カタログとディスカバリー:
list_connections、list_databases、list_schemas、list_tables、describe_table、profile_table - オントロジーとセマンティックレイヤー:
search_ontology、get_entity、get_relationships、get_semantic_model、get_glossary、explore_graph - ガバナンス対象のメトリクスと分類体系:
get_metric、run_metric、draft_metric(書き込みを伴うツール。人による承認が必要な DRAFT → REVIEW → APPROVED → SHIP パイプラインに DRAFTmetric_defを提案します)、list_metric_drafts、export_semantic_model(OSI)、get_taxonomy、export_taxonomy(SKOS) - ダッシュボードとグラフ:
create_chart、create_dashboard、get_dashboard、publish_dashboard - アップロード:
upload_file、upload_status、create_upload_url、finalize_upload - ID とスコープ:
whoami、get_scope
1 個のベータ版ツール(BETA_TOOL_NAMES:get_hot_context)は、仕様が変更される可能性があるため意図的に型定義されていません。client.callTool(name, args) から呼び出してください。ガバナンス対象のメトリクスと分類体系のグループ、および explore_graph は、2026 年 7 月にベータ版から安定版へ昇格しました(PDR W3-1)。
カタログ/リネージュの リソースと、explain_metric プロンプトも利用できます。各ツールの利用範囲は開発者トークンのスコープ(接続先と、Settings で付与した機能)に制限され、ユーザー自身の権限を超えることはありません。get_scope でトークンが許可する内容を正確に確認できます。
注意事項
- 外部送信への同意。 Matih は、テナントごとにサードパーティ LLM へのデータ送信を制御します。テナントがデータ処理契約に同意していない場合、同意手続きへのリンクを含む明確な
EGRESS_CONSENT_REQUIREDエラーが返されます。 - Node ≥ 20(ネイティブの
fetchとnode:cryptoを使用。ランタイム依存関係はありません)。
ライセンス:Apache-2.0 · https://matih.ai
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。