elasticsearch-mcp-vsee 0.3.0 → 0.5.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 +146 -150
- package/build/server.d.ts +9 -6
- package/build/server.d.ts.map +1 -1
- package/build/server.js +339 -173
- package/build/server.js.map +1 -1
- package/build/tools/find-entities-by-metric.d.ts +44 -0
- package/build/tools/find-entities-by-metric.d.ts.map +1 -0
- package/build/tools/find-entities-by-metric.js +325 -0
- package/build/tools/find-entities-by-metric.js.map +1 -0
- package/build/tools/get-account-summary.d.ts +31 -0
- package/build/tools/get-account-summary.d.ts.map +1 -0
- package/build/tools/get-account-summary.js +173 -0
- package/build/tools/get-account-summary.js.map +1 -0
- package/build/tools/get-dashboard-summary.d.ts +52 -0
- package/build/tools/get-dashboard-summary.d.ts.map +1 -0
- package/build/tools/get-dashboard-summary.js +277 -0
- package/build/tools/get-dashboard-summary.js.map +1 -0
- package/build/tools/get-group-summary.d.ts +49 -0
- package/build/tools/get-group-summary.d.ts.map +1 -0
- package/build/tools/get-group-summary.js +320 -0
- package/build/tools/get-group-summary.js.map +1 -0
- package/build/tools/get-platform-breakdown.d.ts +41 -0
- package/build/tools/get-platform-breakdown.d.ts.map +1 -0
- package/build/tools/get-platform-breakdown.js +270 -0
- package/build/tools/get-platform-breakdown.js.map +1 -0
- package/build/tools/get-rating-distribution.d.ts +48 -0
- package/build/tools/get-rating-distribution.d.ts.map +1 -0
- package/build/tools/get-rating-distribution.js +277 -0
- package/build/tools/get-rating-distribution.js.map +1 -0
- package/build/tools/get-visit-trends.d.ts +37 -0
- package/build/tools/get-visit-trends.d.ts.map +1 -0
- package/build/tools/get-visit-trends.js +263 -0
- package/build/tools/get-visit-trends.js.map +1 -0
- package/build/tools/index.d.ts +18 -12
- package/build/tools/index.d.ts.map +1 -1
- package/build/tools/index.js +19 -13
- package/build/tools/index.js.map +1 -1
- package/build/tools/period-summary.d.ts +36 -0
- package/build/tools/period-summary.d.ts.map +1 -0
- package/build/tools/period-summary.js +209 -0
- package/build/tools/period-summary.js.map +1 -0
- package/build/tools/top-change.d.ts +33 -0
- package/build/tools/top-change.d.ts.map +1 -0
- package/build/tools/top-change.js +214 -0
- package/build/tools/top-change.js.map +1 -0
- package/package.json +4 -13
package/README.md
CHANGED
|
@@ -1,83 +1,107 @@
|
|
|
1
|
-
# Elasticsearch MCP
|
|
1
|
+
# Elasticsearch MCP (VSee Fork)
|
|
2
2
|
|
|
3
|
-
> **
|
|
3
|
+
> **Modified MCP server with hardcoded schemas matching VSee's Elasticsearch indexes. Specialized analytics tools optimized for stats-* indices.**
|
|
4
4
|
|
|
5
|
-
[](https://www.npmjs.com/package/elasticsearch-mcp)
|
|
5
|
+
[](https://www.npmjs.com/package/elasticsearch-mcp-vsee)
|
|
6
6
|
[](https://www.typescriptlang.org/)
|
|
7
7
|
[](https://www.elastic.co/)
|
|
8
8
|
[](https://opensource.org/licenses/MIT)
|
|
9
9
|
|
|
10
|
-
**elasticsearch-mcp** is a Model Context Protocol (MCP) server that provides
|
|
10
|
+
**elasticsearch-mcp-vsee** is a modified Model Context Protocol (MCP) server that provides specialized analytics tools for Elasticsearch clusters, optimized for VSee's stats-* indices. This fork features hardcoded schemas and field names that match VSee's specific Elasticsearch index structure, enabling specialized tools for account/group analytics, visit trends, platform breakdowns, and rating distributions. Built with TypeScript and optimized for Elastic Cloud environments, it offers comprehensive analytics capabilities with enterprise-grade security features.
|
|
11
11
|
|
|
12
12
|
## 🚀 Features
|
|
13
13
|
|
|
14
14
|
- **🔐 Secure by Design**: Input validation, script sanitization, injection prevention
|
|
15
15
|
- **☁️ Elastic Cloud Ready**: Native support for cloud ID and API key authentication
|
|
16
|
-
- **⚡ High Performance**:
|
|
17
|
-
- **🛠️ Comprehensive Tools**:
|
|
16
|
+
- **⚡ High Performance**: Connection pooling, optimized query execution, efficient aggregations
|
|
17
|
+
- **🛠️ Comprehensive Tools**: 11 specialized tools for analytics, summaries, and data exploration
|
|
18
18
|
- **📊 Advanced Querying**: Full Elasticsearch DSL support with aggregations and highlighting
|
|
19
|
-
- **📁 Data Export**: Stream large datasets to CSV with compression support
|
|
20
19
|
- **🔍 Smart Validation**: Zod-based schemas with security-first validation
|
|
21
20
|
- **📝 Full TypeScript**: Complete type safety with strict null checks
|
|
22
21
|
|
|
23
|
-
##
|
|
22
|
+
## 🎯 Purpose
|
|
24
23
|
|
|
25
|
-
|
|
26
|
-
npm install elasticsearch-mcp
|
|
27
|
-
```
|
|
24
|
+
This MCP server is designed for **VSee's Open WebUI deployment** to provide specialized analytics tools for querying VSee's Elasticsearch `stats-*` indices. It integrates with VSee's Open WebUI infrastructure via MCPO (MCP OpenAPI bridge) to expose Elasticsearch analytics capabilities to LLMs.
|
|
28
25
|
|
|
29
|
-
##
|
|
26
|
+
## 📦 Usage with VSee's Open WebUI Deployment
|
|
30
27
|
|
|
31
|
-
|
|
28
|
+
This MCP server is automatically loaded by VSee's Open WebUI deployment through the MCP configuration. It connects to VSee's Elasticsearch deployment to provide analytics on visit statistics, account/group metrics, platform breakdowns, and more.
|
|
32
29
|
|
|
33
|
-
|
|
34
|
-
# Set your Elasticsearch credentials
|
|
35
|
-
export ELASTIC_CLOUD_ID="your-cloud-id"
|
|
36
|
-
export ELASTIC_API_KEY="your-api-key"
|
|
30
|
+
### Configuration
|
|
37
31
|
|
|
38
|
-
|
|
39
|
-
npx elasticsearch-mcp
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
### 2. Using with Claude Desktop
|
|
43
|
-
|
|
44
|
-
Add to your Claude Desktop MCP configuration:
|
|
32
|
+
The MCP server is configured in `vsee/mcp/config.json`:
|
|
45
33
|
|
|
46
34
|
```json
|
|
47
35
|
{
|
|
48
36
|
"mcpServers": {
|
|
49
|
-
"elasticsearch
|
|
37
|
+
"elasticsearch": {
|
|
50
38
|
"command": "npx",
|
|
51
|
-
"args": ["elasticsearch-mcp"],
|
|
39
|
+
"args": ["-y", "elasticsearch-mcp-vsee"],
|
|
52
40
|
"env": {
|
|
53
|
-
"
|
|
54
|
-
"
|
|
41
|
+
"ELASTIC_NODE": "https://omtm.es.us-east-1.aws.found.io",
|
|
42
|
+
"ELASTIC_USERNAME": "your-username",
|
|
43
|
+
"ELASTIC_PASSWORD": "your-password",
|
|
44
|
+
"NODE_TLS_REJECT_UNAUTHORIZED": "0"
|
|
55
45
|
}
|
|
56
46
|
}
|
|
57
47
|
}
|
|
58
48
|
}
|
|
59
49
|
```
|
|
60
50
|
|
|
61
|
-
|
|
51
|
+
The Open WebUI deployment automatically loads this configuration and starts the MCP server via MCPO, making all 11 tools available to the LLM for querying Elasticsearch data.
|
|
62
52
|
|
|
63
|
-
|
|
64
|
-
import { ElasticMCPServer } from 'elasticsearch-mcp';
|
|
53
|
+
## 🔄 Updating and Publishing
|
|
65
54
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
55
|
+
### Making Changes
|
|
56
|
+
|
|
57
|
+
1. **Develop locally**: Make changes to the code in `elasticsearch-mcp/`
|
|
58
|
+
2. **Test your changes**: Use `npm run test:tools` to test against your Elasticsearch instance
|
|
59
|
+
3. **Build**: Run `npm run build` to compile TypeScript
|
|
60
|
+
4. **Publish**: Publish to npm with `npm publish --access public`
|
|
61
|
+
- Make sure to increment the version in `package.json` first
|
|
62
|
+
|
|
63
|
+
### Updating VSee's Deployment
|
|
64
|
+
|
|
65
|
+
After publishing a new version to npm:
|
|
66
|
+
|
|
67
|
+
1. **Update `vsee/mcp/config.json`**: Change the package version in the `args` array:
|
|
68
|
+
```json
|
|
69
|
+
{
|
|
70
|
+
"mcpServers": {
|
|
71
|
+
"elasticsearch": {
|
|
72
|
+
"command": "npx",
|
|
73
|
+
"args": ["-y", "elasticsearch-mcp-vsee@0.5.0"], // Update version here
|
|
74
|
+
"env": {
|
|
75
|
+
...
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
2. **Restart the MCPO service**: The MCPO container will automatically download and use the new version on restart:
|
|
83
|
+
```bash
|
|
84
|
+
docker compose -f docker-compose.vsee.yaml restart mcpo
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
3. **Verify**: Check that the new version is loaded by examining the MCPO logs or testing the tools in Open WebUI.
|
|
88
|
+
|
|
89
|
+
**Note**: You can also use `@latest` to always pull the latest version, but specifying a version number is recommended for production stability.
|
|
69
90
|
|
|
70
91
|
## 🛠️ Available Tools
|
|
71
92
|
|
|
72
93
|
| Tool | Description | Use Cases |
|
|
73
94
|
|------|-------------|-----------|
|
|
74
|
-
| `
|
|
75
|
-
| `
|
|
76
|
-
| `
|
|
77
|
-
| `
|
|
78
|
-
| `
|
|
79
|
-
| `
|
|
80
|
-
| `
|
|
95
|
+
| `search_elasticsearch` | Advanced search with aggregations | Custom queries, data analysis |
|
|
96
|
+
| `get_index_fields` | Discover index fields and types | Schema exploration, field discovery |
|
|
97
|
+
| `top_change` | Find top accounts or groups with highest visit increase/decrease | Trend analysis, account/group monitoring |
|
|
98
|
+
| `period_summary` | Weekly/monthly/yearly summaries by subscription | Period-based reporting |
|
|
99
|
+
| `get_account_summary` | Comprehensive statistics for a specific account | Account analytics, performance review |
|
|
100
|
+
| `get_group_summary` | Group statistics with account breakdown | Group management, resource allocation |
|
|
101
|
+
| `get_platform_breakdown` | Platform or platform version breakdown (provider/patient, platform/version) | Platform adoption, device preferences, version analysis |
|
|
102
|
+
| `get_rating_distribution` | Rating histograms with statistics | Satisfaction analysis |
|
|
103
|
+
| `get_visit_trends` | Time series visit trends (daily/weekly/monthly) | Trend visualization |
|
|
104
|
+
| `get_dashboard_summary` | High-level dashboard metrics overview | Executive dashboards, KPIs |
|
|
81
105
|
|
|
82
106
|
## 📋 Tool Examples
|
|
83
107
|
|
|
@@ -113,59 +137,59 @@ await server.start();
|
|
|
113
137
|
}
|
|
114
138
|
```
|
|
115
139
|
|
|
116
|
-
###
|
|
140
|
+
### Get Account Summary
|
|
117
141
|
|
|
118
142
|
```json
|
|
119
143
|
{
|
|
120
|
-
"tool": "
|
|
144
|
+
"tool": "get_account_summary",
|
|
121
145
|
"arguments": {
|
|
122
|
-
"
|
|
123
|
-
"
|
|
124
|
-
|
|
125
|
-
"filter": [
|
|
126
|
-
{ "term": { "status": "active" } },
|
|
127
|
-
{ "range": { "last_login": { "gte": "2024-01-01" } } }
|
|
128
|
-
]
|
|
129
|
-
}
|
|
130
|
-
},
|
|
131
|
-
"fields": ["user_id", "email", "last_login", "country"],
|
|
132
|
-
"filename": "active_users_2024.csv",
|
|
133
|
-
"compress": true,
|
|
134
|
-
"maxRows": 100000
|
|
146
|
+
"account": "example-customer",
|
|
147
|
+
"startDate": "now-1y",
|
|
148
|
+
"endDate": "now"
|
|
135
149
|
}
|
|
136
150
|
}
|
|
137
151
|
```
|
|
138
152
|
|
|
139
|
-
###
|
|
153
|
+
### Get Top Accounts by Growth
|
|
140
154
|
|
|
141
155
|
```json
|
|
142
156
|
{
|
|
143
|
-
"tool": "
|
|
157
|
+
"tool": "top_change",
|
|
144
158
|
"arguments": {
|
|
145
|
-
"
|
|
146
|
-
"
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
159
|
+
"groupBy": "account",
|
|
160
|
+
"direction": "increase",
|
|
161
|
+
"topN": 10,
|
|
162
|
+
"currentPeriodDays": 30,
|
|
163
|
+
"previousPeriodDays": 30
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### Get Platform Breakdown
|
|
169
|
+
|
|
170
|
+
```json
|
|
171
|
+
{
|
|
172
|
+
"tool": "get_platform_breakdown",
|
|
173
|
+
"arguments": {
|
|
174
|
+
"role": "provider",
|
|
175
|
+
"breakdownType": "version",
|
|
176
|
+
"topN": 10,
|
|
177
|
+
"startDate": "now-30d",
|
|
178
|
+
"endDate": "now"
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
### Get Visit Trends
|
|
184
|
+
|
|
185
|
+
```json
|
|
186
|
+
{
|
|
187
|
+
"tool": "get_visit_trends",
|
|
188
|
+
"arguments": {
|
|
189
|
+
"interval": "daily",
|
|
190
|
+
"startDate": "now-30d",
|
|
191
|
+
"endDate": "now",
|
|
192
|
+
"groupBy": "subscription"
|
|
169
193
|
}
|
|
170
194
|
}
|
|
171
195
|
```
|
|
@@ -174,36 +198,25 @@ await server.start();
|
|
|
174
198
|
|
|
175
199
|
### Environment Variables
|
|
176
200
|
|
|
201
|
+
The MCP server reads configuration from environment variables. These are set in `vsee/mcp/config.json` under the `env` section:
|
|
202
|
+
|
|
177
203
|
| Variable | Description | Required | Example |
|
|
178
204
|
|----------|-------------|----------|---------|
|
|
179
|
-
| `
|
|
180
|
-
| `
|
|
181
|
-
| `
|
|
182
|
-
| `
|
|
183
|
-
| `ELASTIC_PASSWORD` | Basic auth password | No | `changeme` |
|
|
184
|
-
| `LOG_LEVEL` | Logging level | No | `info` |
|
|
185
|
-
| `LOG_FORMAT` | Log output format | No | `text` |
|
|
186
|
-
| `MAX_CONCURRENT_REQUESTS` | Request concurrency limit | No | `10` |
|
|
187
|
-
|
|
188
|
-
*Either `ELASTIC_CLOUD_ID` or `ELASTIC_NODE` is required
|
|
205
|
+
| `ELASTIC_NODE` | Elasticsearch URL | Yes | `https://omtm.es.us-east-1.aws.found.io` |
|
|
206
|
+
| `ELASTIC_USERNAME` | Basic auth username | Yes | `your-username` |
|
|
207
|
+
| `ELASTIC_PASSWORD` | Basic auth password | Yes | `your-password` |
|
|
208
|
+
| `NODE_TLS_REJECT_UNAUTHORIZED` | Disable TLS verification (for self-signed certs) | No | `"0"` |
|
|
189
209
|
|
|
190
|
-
###
|
|
210
|
+
### Alternative: Elastic Cloud Authentication
|
|
191
211
|
|
|
192
|
-
|
|
212
|
+
If using Elastic Cloud with cloud ID and API key:
|
|
193
213
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
ELASTIC_CLOUD_ID
|
|
197
|
-
ELASTIC_API_KEY
|
|
198
|
-
|
|
199
|
-
# Logging
|
|
200
|
-
LOG_LEVEL=info
|
|
201
|
-
LOG_FORMAT=json
|
|
214
|
+
| Variable | Description | Required |
|
|
215
|
+
|----------|-------------|----------|
|
|
216
|
+
| `ELASTIC_CLOUD_ID` | Elastic Cloud deployment ID | Yes* |
|
|
217
|
+
| `ELASTIC_API_KEY` | Elasticsearch API key | Yes* |
|
|
202
218
|
|
|
203
|
-
|
|
204
|
-
MAX_CONCURRENT_REQUESTS=10
|
|
205
|
-
REQUEST_TIMEOUT_MS=30000
|
|
206
|
-
```
|
|
219
|
+
*Either `ELASTIC_CLOUD_ID` + `ELASTIC_API_KEY` OR `ELASTIC_NODE` + `ELASTIC_USERNAME` + `ELASTIC_PASSWORD` is required
|
|
207
220
|
|
|
208
221
|
## 🔒 Security Features
|
|
209
222
|
|
|
@@ -239,13 +252,11 @@ REQUEST_TIMEOUT_MS=30000
|
|
|
239
252
|
┌─────────────┐
|
|
240
253
|
│ Tools │
|
|
241
254
|
│ │
|
|
242
|
-
│ • fetch │
|
|
243
255
|
│ • search │
|
|
244
|
-
│ •
|
|
245
|
-
│ •
|
|
246
|
-
│ •
|
|
247
|
-
│ •
|
|
248
|
-
│ • export │
|
|
256
|
+
│ • fields │
|
|
257
|
+
│ • summaries │
|
|
258
|
+
│ • trends │
|
|
259
|
+
│ • analytics │
|
|
249
260
|
└─────────────┘
|
|
250
261
|
```
|
|
251
262
|
|
|
@@ -253,14 +264,14 @@ REQUEST_TIMEOUT_MS=30000
|
|
|
253
264
|
|
|
254
265
|
### Benchmarks
|
|
255
266
|
- **Search**: <500ms average response time
|
|
256
|
-
- **
|
|
267
|
+
- **Aggregations**: Optimized for large-scale analytics
|
|
257
268
|
- **Memory Usage**: <100MB for typical operations
|
|
258
269
|
- **Concurrent Requests**: Up to 10 simultaneous operations
|
|
259
270
|
|
|
260
271
|
### Optimization Features
|
|
261
272
|
- **Connection Pooling**: Reuses Elasticsearch connections
|
|
262
|
-
- **
|
|
263
|
-
- **
|
|
273
|
+
- **Optimized Queries**: Efficient aggregation pipelines
|
|
274
|
+
- **Smart Caching**: Reduced redundant queries
|
|
264
275
|
- **Health Monitoring**: Automatic reconnection on failures
|
|
265
276
|
|
|
266
277
|
## 🔧 Development
|
|
@@ -268,25 +279,26 @@ REQUEST_TIMEOUT_MS=30000
|
|
|
268
279
|
### Setup Development Environment
|
|
269
280
|
|
|
270
281
|
```bash
|
|
271
|
-
# Clone repository
|
|
272
|
-
git clone https://github.com/RajwardhanShinde/elk-mcp.git
|
|
273
|
-
cd elk-mcp
|
|
274
|
-
|
|
275
282
|
# Install dependencies
|
|
276
283
|
npm install
|
|
277
284
|
|
|
278
|
-
# Set up environment
|
|
279
|
-
|
|
280
|
-
|
|
285
|
+
# Set up environment variables
|
|
286
|
+
export ELASTIC_NODE="https://your-elasticsearch-url"
|
|
287
|
+
export ELASTIC_USERNAME="your-username"
|
|
288
|
+
export ELASTIC_PASSWORD="your-password"
|
|
289
|
+
export NODE_TLS_REJECT_UNAUTHORIZED="0" # If needed for self-signed certs
|
|
281
290
|
|
|
282
291
|
# Run in development mode
|
|
283
292
|
npm run dev
|
|
284
293
|
|
|
285
|
-
#
|
|
286
|
-
npm test
|
|
294
|
+
# Test tools against live Elasticsearch
|
|
295
|
+
npm run test:tools
|
|
287
296
|
|
|
288
297
|
# Build for production
|
|
289
298
|
npm run build
|
|
299
|
+
|
|
300
|
+
# Publish new version (after incrementing version in package.json)
|
|
301
|
+
npm publish --access public
|
|
290
302
|
```
|
|
291
303
|
|
|
292
304
|
### Project Structure
|
|
@@ -301,30 +313,16 @@ elasticsearch-mcp/
|
|
|
301
313
|
│ ├── config.ts # Configuration management
|
|
302
314
|
│ ├── logger.ts # Structured logging
|
|
303
315
|
│ └── server.ts # Main MCP server
|
|
304
|
-
├── tests/ #
|
|
305
|
-
├──
|
|
316
|
+
├── tests/ # Test suite
|
|
317
|
+
├── TEST_GUIDE.md # Testing guide
|
|
318
|
+
├── OPENWEBUI_TEST_PROMPTS.md # Example prompts for Open WebUI
|
|
306
319
|
└── build/ # Compiled output
|
|
307
320
|
```
|
|
308
321
|
|
|
309
|
-
## 🤝 Contributing
|
|
310
|
-
|
|
311
|
-
We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
|
|
312
|
-
|
|
313
|
-
### Development Workflow
|
|
314
|
-
1. Fork the repository
|
|
315
|
-
2. Create a feature branch
|
|
316
|
-
3. Make your changes with tests
|
|
317
|
-
4. Ensure all tests pass
|
|
318
|
-
5. Submit a pull request
|
|
319
|
-
|
|
320
322
|
## 📚 Documentation
|
|
321
323
|
|
|
322
|
-
- [
|
|
323
|
-
- [
|
|
324
|
-
- [Configuration Guide](docs/api/configuration.md)
|
|
325
|
-
- [Elastic Cloud Setup](docs/guides/elastic-cloud-setup.md)
|
|
326
|
-
- [Troubleshooting](docs/guides/troubleshooting.md)
|
|
327
|
-
- [Examples](docs/examples/)
|
|
324
|
+
- [Testing Guide](TEST_GUIDE.md) - How to test all tools
|
|
325
|
+
- [Open WebUI Test Prompts](OPENWEBUI_TEST_PROMPTS.md) - Example prompts for testing in Open WebUI
|
|
328
326
|
|
|
329
327
|
## 🐛 Troubleshooting
|
|
330
328
|
|
|
@@ -351,25 +349,23 @@ curl -H "Authorization: ApiKey $ELASTIC_API_KEY" \\
|
|
|
351
349
|
- Validate required fields
|
|
352
350
|
- Review field name restrictions
|
|
353
351
|
|
|
354
|
-
See [Troubleshooting Guide](docs/guides/troubleshooting.md) for more details.
|
|
355
|
-
|
|
356
352
|
## 📄 License
|
|
357
353
|
|
|
358
354
|
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
|
359
355
|
|
|
360
356
|
## 🏷️ Version History
|
|
361
357
|
|
|
362
|
-
- **v0.
|
|
358
|
+
- **v0.5.0** - Added `find_entities_by_metric` tool with multi-metric filtering support, updated default limits
|
|
359
|
+
- **v0.4.0** - Tool consolidation: merged 14 tools into 11 specialized analytics tools
|
|
360
|
+
- **v0.3.0** - Specialized analytics tools for stats-* indices
|
|
363
361
|
- Full changelog: [CHANGELOG.md](CHANGELOG.md)
|
|
364
362
|
|
|
365
363
|
## 🔗 Links
|
|
366
364
|
|
|
367
|
-
- [npm Package](https://www.npmjs.com/package/elasticsearch-mcp)
|
|
368
|
-
- [GitHub Repository](https://github.com/RajwardhanShinde/elk-mcp)
|
|
369
|
-
- [Issue Tracker](https://github.com/RajwardhanShinde/elk-mcp/issues)
|
|
365
|
+
- [npm Package](https://www.npmjs.com/package/elasticsearch-mcp-vsee)
|
|
370
366
|
- [Elasticsearch Documentation](https://www.elastic.co/guide/)
|
|
371
367
|
- [Model Context Protocol](https://modelcontextprotocol.io/)
|
|
372
368
|
|
|
373
369
|
---
|
|
374
370
|
|
|
375
|
-
**Built
|
|
371
|
+
**Built for VSee by VSee**
|
package/build/server.d.ts
CHANGED
|
@@ -5,14 +5,17 @@ export declare class ElasticMCPServer {
|
|
|
5
5
|
private elasticsearch;
|
|
6
6
|
private errorHandler;
|
|
7
7
|
private isShuttingDown;
|
|
8
|
-
private fetchIndicesTool;
|
|
9
|
-
private createIndexTool;
|
|
10
|
-
private insertDataTool;
|
|
11
|
-
private updateDocumentTool;
|
|
12
|
-
private deleteDocumentTool;
|
|
13
8
|
private searchElasticsearchTool;
|
|
14
|
-
private exportToCSVTool;
|
|
15
9
|
private getIndexFieldsTool;
|
|
10
|
+
private topChangeTool;
|
|
11
|
+
private periodSummaryTool;
|
|
12
|
+
private getAccountSummaryTool;
|
|
13
|
+
private getGroupSummaryTool;
|
|
14
|
+
private getPlatformBreakdownTool;
|
|
15
|
+
private getRatingDistributionTool;
|
|
16
|
+
private getVisitTrendsTool;
|
|
17
|
+
private getDashboardSummaryTool;
|
|
18
|
+
private findEntitiesByMetricTool;
|
|
16
19
|
constructor();
|
|
17
20
|
private setupHandlers;
|
|
18
21
|
private setupGracefulShutdown;
|
package/build/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAsBA,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,cAAc,CAAS;IAG/B,OAAO,CAAC,uBAAuB,CAA0B;IACzD,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,wBAAwB,CAA2B;IAC3D,OAAO,CAAC,yBAAyB,CAA4B;IAC7D,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,uBAAuB,CAA0B;IACzD,OAAO,CAAC,wBAAwB,CAA2B;;IAqC3D,OAAO,CAAC,aAAa;IAihBrB,OAAO,CAAC,qBAAqB;IAoCvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAmB7B;AAED,eAAe,gBAAgB,CAAC"}
|