metabase-ai-assistant 4.0.0 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  ### **The Most Powerful MCP Server for Metabase**
6
6
 
7
- **111+ Tools** • **AI-Powered SQL** • **Enterprise Security** • **Zero Config**
7
+ **134 Tools** • **MCP SDK v1.26.0** • **AI-Powered SQL** • **Structured Output** • **Enterprise Security**
8
8
 
9
9
  [![npm version](https://img.shields.io/npm/v/metabase-ai-assistant.svg?style=for-the-badge&logo=npm)](https://www.npmjs.com/package/metabase-ai-assistant)
10
10
  [![npm downloads](https://img.shields.io/npm/dm/metabase-ai-assistant.svg?style=for-the-badge&logo=npm)](https://www.npmjs.com/package/metabase-ai-assistant)
@@ -15,7 +15,7 @@
15
15
  [![Claude](https://img.shields.io/badge/Claude-Ready-orange.svg?style=flat-square)](https://claude.ai)
16
16
  [![Cursor](https://img.shields.io/badge/Cursor-Ready-green.svg?style=flat-square)](https://cursor.sh)
17
17
  [![Node.js](https://img.shields.io/badge/Node.js-18+-brightgreen.svg?style=flat-square&logo=node.js)](https://nodejs.org/)
18
-
18
+ [![MCP Badge](https://lobehub.com/badge/mcp/onmartech-metabase-ai-assistant)](https://lobehub.com/mcp/onmartech-metabase-ai-assistant)
19
19
  ---
20
20
 
21
21
  **Turn your AI assistant into a Metabase power user.**
@@ -33,7 +33,7 @@ Generate SQL from natural language, create dashboards, manage users, and automat
33
33
 
34
34
  | Feature | **This Project** | Other MCP Servers |
35
35
  |---------|:----------------:|:-----------------:|
36
- | **Total Tools** | **111+** ✅ | 6-30 |
36
+ | **Total Tools** | **134** ✅ | 6-30 |
37
37
  | **AI SQL Generation** | ✅ | ❌ |
38
38
  | **AI SQL Optimization** | ✅ | ❌ |
39
39
  | **Dashboard Templates** | ✅ | ❌ |
@@ -45,6 +45,8 @@ Generate SQL from natural language, create dashboards, manage users, and automat
45
45
  | **Metadata Analytics** | ✅ | ❌ |
46
46
  | **Parametric Questions** | ✅ | ❌ |
47
47
  | **Environment Comparison** | ✅ | ❌ |
48
+ | **Structured Output (JSON)** | ✅ | ❌ |
49
+ | **Tool Annotations** | ✅ | ❌ |
48
50
 
49
51
  ---
50
52
 
@@ -109,7 +111,9 @@ AI: 🔒 Blocked - Read-only mode active
109
111
 
110
112
  ---
111
113
 
112
- ## 🔧 Complete Tool List (111+)
114
+ ## 🔧 Complete Tool List (134)
115
+
116
+ > 🆕 All tools include MCP annotations and `title`. 16 priority tools support `outputSchema` + `structuredContent` for typed JSON responses.
113
117
 
114
118
  <details>
115
119
  <summary><b>📊 Database Operations (25 tools)</b></summary>
@@ -299,18 +303,17 @@ npm run mcp
299
303
  metabase-ai-assistant/
300
304
  ├── src/
301
305
  │ ├── mcp/
302
- │ │ ├── server.js # Main MCP server (111+ tools)
303
- │ │ └── handlers/ # Modular handlers
304
- │ │ ├── database.js # DB operations
305
- │ │ ├── dashboard.js # Dashboard ops
306
- │ │ ├── questions.js # Question ops
307
- │ │ └── ai.js # AI features
306
+ │ │ ├── server.js # MCP Server entry point
307
+ │ │ ├── tool-registry.js # 134 tool definitions + annotations + outputSchema
308
+ │ │ ├── tool-router.js # Dynamic routing with read-only gate
309
+ │ │ └── handlers/ # 15 modular handler files
308
310
  │ ├── utils/
309
- │ │ ├── cache.js # TTL-based caching
310
- │ │ ├── config.js # Zod validation
311
- │ │ └── response-optimizer.js
311
+ │ │ ├── structured-response.js # Structured output (MCP 2025-06-18)
312
+ │ │ ├── cache.js # TTL-based caching
313
+ │ │ ├── config.js # Zod validation
314
+ │ │ └── response-optimizer.js # Compact response formatting
312
315
  │ └── metabase/
313
- │ └── client.js # Metabase API client
316
+ │ └── client.js # Metabase API client
314
317
  ```
315
318
 
316
319
  ---
package/README_MCP.md CHANGED
@@ -45,7 +45,9 @@ After updating the configuration file, restart your MCP client to load the new s
45
45
 
46
46
  ---
47
47
 
48
- ## Available Tools (111 Total)
48
+ ## Available Tools (134 Total)
49
+
50
+ > 🆕 **MCP SDK v1.26.0** — All tools include annotations (`readOnlyHint`, `destructiveHint`, `idempotentHint`) and human-readable `title`. 16 priority tools support `outputSchema` + `structuredContent` for typed JSON responses.
49
51
 
50
52
  ### Database Operations
51
53
  - **db_list**: List all databases in Metabase
@@ -180,6 +182,10 @@ After updating the configuration file, restart your MCP client to load the new s
180
182
  ## Features Summary
181
183
 
182
184
  ### Currently Available
185
+ - **MCP SDK v1.26.0** (Spec 2025-11-25 compliant)
186
+ - **Structured Output** (`outputSchema` + `structuredContent` for 16 tools)
187
+ - **Tool Annotations** (`readOnlyHint`, `destructiveHint`, `idempotentHint`)
188
+ - **Dynamic Tool List** (`listChanged` capability)
183
189
  - **Async Query Management** (for long-running queries)
184
190
  - **Smart Response Optimization** (no truncation for DDL/definitions)
185
191
  - **Table Profiling** (dim/ref table detection)
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "metabase-ai-assistant",
3
- "version": "4.0.0",
3
+ "version": "4.2.0",
4
4
  "mcpName": "io.github.enessari/metabase-ai-assistant",
5
- "description": "The most powerful MCP Server for Metabase - 111+ tools for AI-powered SQL generation, dashboard automation, user management & enterprise BI. Works with Claude, Cursor, and any MCP-compatible AI.",
5
+ "description": "The most powerful MCP Server for Metabase - 134 tools with structured output, AI-powered SQL generation, dashboard automation, user management & enterprise BI. MCP SDK v1.26.0 compliant. Works with Claude, Cursor, and any MCP-compatible AI.",
6
6
  "main": "src/index.js",
7
7
  "type": "module",
8
8
  "scripts": {
@@ -76,11 +76,12 @@
76
76
  },
77
77
  "dependencies": {
78
78
  "@anthropic-ai/sdk": "^0.17.0",
79
- "@modelcontextprotocol/sdk": "^1.17.3",
79
+ "@modelcontextprotocol/sdk": "^1.26.0",
80
80
  "axios": "^1.6.5",
81
81
  "chalk": "^5.3.0",
82
82
  "dotenv": "^16.3.1",
83
83
  "express": "^4.18.2",
84
+ "he": "^1.2.0",
84
85
  "inquirer": "^12.9.3",
85
86
  "jsonwebtoken": "^9.0.3",
86
87
  "mysql2": "^3.14.3",
@@ -88,8 +89,7 @@
88
89
  "ora": "^8.0.1",
89
90
  "pg": "^8.16.3",
90
91
  "winston": "^3.11.0",
91
- "zod": "^3.22.4",
92
- "he": "^1.2.0"
92
+ "zod": "^3.22.4"
93
93
  },
94
94
  "devDependencies": {
95
95
  "@types/node": "^20.11.5",