elasticsearch-mcp-server 2.0.14__tar.gz → 2.0.16__tar.gz
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.
Potentially problematic release.
This version of elasticsearch-mcp-server might be problematic. Click here for more details.
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/PKG-INFO +21 -9
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/README.md +19 -8
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/pyproject.toml +2 -1
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/server.json +2 -2
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/base.py +3 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/client.py +2 -1
- elasticsearch_mcp_server-2.0.16/src/clients/common/data_stream.py +18 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/server.py +9 -1
- elasticsearch_mcp_server-2.0.16/src/tools/data_stream.py +47 -0
- elasticsearch_mcp_server-2.0.16/src/version.py +1 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/uv.lock +3 -1
- elasticsearch_mcp_server-2.0.14/src/version.py +0 -1
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/.env.example +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/.github/workflows/publish-mcp.yml +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/.github/workflows/pypi-publish.yaml +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/.github/workflows/release.yml +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/.gitignore +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/.python-version +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/CONTRIBUTING.md +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/LICENSE +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/Makefile +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/cliff.toml +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/docker-compose-elasticsearch.yml +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/docker-compose-opensearch.yml +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/python-sdk-anthropic/.gitignore +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/python-sdk-anthropic/__init__.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/python-sdk-anthropic/client.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/python-sdk-anthropic/config.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/README.md +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/build.gradle +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/gradle/wrapper/gradle-wrapper.jar +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/gradle/wrapper/gradle-wrapper.properties +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/gradle.properties +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/gradlew +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/gradlew.bat +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/settings.gradle +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/src/main/java/spring/ai/mcp/spring_ai_mcp/Application.java +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/src/main/resources/application.yml +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/src/main/resources/mcp-servers-config.json +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/src/test/java/spring/ai/mcp/spring_ai_mcp/SpringAiMcpApplicationTests.java +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/__init__.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/__init__.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/__init__.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/alias.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/cluster.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/document.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/general.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/index.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/exceptions.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/tools/__init__.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/tools/alias.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/tools/cluster.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/tools/document.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/tools/general.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/tools/index.py +0 -0
- {elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/tools/register.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: elasticsearch-mcp-server
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.16
|
|
4
4
|
Summary: MCP Server for interacting with Elasticsearch and OpenSearch
|
|
5
5
|
License: Apache License
|
|
6
6
|
Version 2.0, January 2004
|
|
@@ -210,6 +210,7 @@ Requires-Dist: elasticsearch==8.17.2
|
|
|
210
210
|
Requires-Dist: fastmcp==2.8.0
|
|
211
211
|
Requires-Dist: mcp==1.9.2
|
|
212
212
|
Requires-Dist: opensearch-py==2.8.0
|
|
213
|
+
Requires-Dist: pydantic<2.12.0,>=2.11.0
|
|
213
214
|
Requires-Dist: python-dotenv==1.1.0
|
|
214
215
|
Requires-Dist: tomli-w==1.2.0
|
|
215
216
|
Requires-Dist: tomli==2.2.1
|
|
@@ -248,6 +249,9 @@ https://github.com/user-attachments/assets/f7409e31-fac4-4321-9c94-b0ff2ea7ff15
|
|
|
248
249
|
- `get_index`: Returns information (mappings, settings, aliases) about one or more indices.
|
|
249
250
|
- `create_index`: Create a new index.
|
|
250
251
|
- `delete_index`: Delete an index.
|
|
252
|
+
- `create_data_stream`: Create a new data stream (requires matching index template).
|
|
253
|
+
- `get_data_stream`: Get information about one or more data streams.
|
|
254
|
+
- `delete_data_stream`: Delete one or more data streams and their backing indices.
|
|
251
255
|
|
|
252
256
|
### Document Operations
|
|
253
257
|
|
|
@@ -372,7 +376,7 @@ Using `uv` requires cloning the repository locally and specifying the path to th
|
|
|
372
376
|
"command": "uv",
|
|
373
377
|
"args": [
|
|
374
378
|
"--directory",
|
|
375
|
-
"path/to/
|
|
379
|
+
"path/to/elasticsearch-mcp-server",
|
|
376
380
|
"run",
|
|
377
381
|
"elasticsearch-mcp-server"
|
|
378
382
|
],
|
|
@@ -392,7 +396,7 @@ Using `uv` requires cloning the repository locally and specifying the path to th
|
|
|
392
396
|
"command": "uv",
|
|
393
397
|
"args": [
|
|
394
398
|
"--directory",
|
|
395
|
-
"path/to/
|
|
399
|
+
"path/to/elasticsearch-mcp-server",
|
|
396
400
|
"run",
|
|
397
401
|
"elasticsearch-mcp-server"
|
|
398
402
|
],
|
|
@@ -411,7 +415,7 @@ Using `uv` requires cloning the repository locally and specifying the path to th
|
|
|
411
415
|
"command": "uv",
|
|
412
416
|
"args": [
|
|
413
417
|
"--directory",
|
|
414
|
-
"path/to/
|
|
418
|
+
"path/to/elasticsearch-mcp-server",
|
|
415
419
|
"run",
|
|
416
420
|
"opensearch-mcp-server"
|
|
417
421
|
],
|
|
@@ -489,11 +493,7 @@ uv run src/server.py elasticsearch-mcp-server --transport streamable-http --host
|
|
|
489
493
|
|
|
490
494
|
## Compatibility
|
|
491
495
|
|
|
492
|
-
The MCP server is compatible with Elasticsearch 7.x, 8.x, and 9.x. By default, it uses the Elasticsearch 8.x client (without a suffix).
|
|
493
|
-
|
|
494
|
-
```bash
|
|
495
|
-
uvx elasticsearch-mcp-server-es7
|
|
496
|
-
```
|
|
496
|
+
The MCP server is compatible with Elasticsearch 7.x, 8.x, and 9.x. By default, it uses the Elasticsearch 8.x client (without a suffix).
|
|
497
497
|
|
|
498
498
|
| MCP Server | Elasticsearch |
|
|
499
499
|
| --- | --- |
|
|
@@ -502,6 +502,18 @@ uvx elasticsearch-mcp-server-es7
|
|
|
502
502
|
| elasticsearch-mcp-server-es9 | Elasticsearch 9.x |
|
|
503
503
|
| opensearch-mcp-server | OpenSearch 1.x, 2.x, 3.x |
|
|
504
504
|
|
|
505
|
+
To use the Elasticsearch 7.x client, run the `elasticsearch-mcp-server-es7` variant. For Elasticsearch 9.x, use `elasticsearch-mcp-server-es9`. For example:
|
|
506
|
+
|
|
507
|
+
```bash
|
|
508
|
+
uvx elasticsearch-mcp-server-es7
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
If you want to run different Elasticsearch variants (e.g., 7.x or 9.x) locally, simply update the `elasticsearch` dependency version in `pyproject.toml`, then start the server with:
|
|
512
|
+
|
|
513
|
+
```bash
|
|
514
|
+
uv run src/server.py elasticsearch-mcp-server
|
|
515
|
+
```
|
|
516
|
+
|
|
505
517
|
## License
|
|
506
518
|
|
|
507
519
|
This project is licensed under the Apache License Version 2.0 - see the [LICENSE](LICENSE) file for details.
|
|
@@ -31,6 +31,9 @@ https://github.com/user-attachments/assets/f7409e31-fac4-4321-9c94-b0ff2ea7ff15
|
|
|
31
31
|
- `get_index`: Returns information (mappings, settings, aliases) about one or more indices.
|
|
32
32
|
- `create_index`: Create a new index.
|
|
33
33
|
- `delete_index`: Delete an index.
|
|
34
|
+
- `create_data_stream`: Create a new data stream (requires matching index template).
|
|
35
|
+
- `get_data_stream`: Get information about one or more data streams.
|
|
36
|
+
- `delete_data_stream`: Delete one or more data streams and their backing indices.
|
|
34
37
|
|
|
35
38
|
### Document Operations
|
|
36
39
|
|
|
@@ -155,7 +158,7 @@ Using `uv` requires cloning the repository locally and specifying the path to th
|
|
|
155
158
|
"command": "uv",
|
|
156
159
|
"args": [
|
|
157
160
|
"--directory",
|
|
158
|
-
"path/to/
|
|
161
|
+
"path/to/elasticsearch-mcp-server",
|
|
159
162
|
"run",
|
|
160
163
|
"elasticsearch-mcp-server"
|
|
161
164
|
],
|
|
@@ -175,7 +178,7 @@ Using `uv` requires cloning the repository locally and specifying the path to th
|
|
|
175
178
|
"command": "uv",
|
|
176
179
|
"args": [
|
|
177
180
|
"--directory",
|
|
178
|
-
"path/to/
|
|
181
|
+
"path/to/elasticsearch-mcp-server",
|
|
179
182
|
"run",
|
|
180
183
|
"elasticsearch-mcp-server"
|
|
181
184
|
],
|
|
@@ -194,7 +197,7 @@ Using `uv` requires cloning the repository locally and specifying the path to th
|
|
|
194
197
|
"command": "uv",
|
|
195
198
|
"args": [
|
|
196
199
|
"--directory",
|
|
197
|
-
"path/to/
|
|
200
|
+
"path/to/elasticsearch-mcp-server",
|
|
198
201
|
"run",
|
|
199
202
|
"opensearch-mcp-server"
|
|
200
203
|
],
|
|
@@ -272,11 +275,7 @@ uv run src/server.py elasticsearch-mcp-server --transport streamable-http --host
|
|
|
272
275
|
|
|
273
276
|
## Compatibility
|
|
274
277
|
|
|
275
|
-
The MCP server is compatible with Elasticsearch 7.x, 8.x, and 9.x. By default, it uses the Elasticsearch 8.x client (without a suffix).
|
|
276
|
-
|
|
277
|
-
```bash
|
|
278
|
-
uvx elasticsearch-mcp-server-es7
|
|
279
|
-
```
|
|
278
|
+
The MCP server is compatible with Elasticsearch 7.x, 8.x, and 9.x. By default, it uses the Elasticsearch 8.x client (without a suffix).
|
|
280
279
|
|
|
281
280
|
| MCP Server | Elasticsearch |
|
|
282
281
|
| --- | --- |
|
|
@@ -285,6 +284,18 @@ uvx elasticsearch-mcp-server-es7
|
|
|
285
284
|
| elasticsearch-mcp-server-es9 | Elasticsearch 9.x |
|
|
286
285
|
| opensearch-mcp-server | OpenSearch 1.x, 2.x, 3.x |
|
|
287
286
|
|
|
287
|
+
To use the Elasticsearch 7.x client, run the `elasticsearch-mcp-server-es7` variant. For Elasticsearch 9.x, use `elasticsearch-mcp-server-es9`. For example:
|
|
288
|
+
|
|
289
|
+
```bash
|
|
290
|
+
uvx elasticsearch-mcp-server-es7
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
If you want to run different Elasticsearch variants (e.g., 7.x or 9.x) locally, simply update the `elasticsearch` dependency version in `pyproject.toml`, then start the server with:
|
|
294
|
+
|
|
295
|
+
```bash
|
|
296
|
+
uv run src/server.py elasticsearch-mcp-server
|
|
297
|
+
```
|
|
298
|
+
|
|
288
299
|
## License
|
|
289
300
|
|
|
290
301
|
This project is licensed under the Apache License Version 2.0 - see the [LICENSE](LICENSE) file for details.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "elasticsearch-mcp-server"
|
|
3
|
-
version = "2.0.
|
|
3
|
+
version = "2.0.16"
|
|
4
4
|
description = "MCP Server for interacting with Elasticsearch and OpenSearch"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.10"
|
|
@@ -10,6 +10,7 @@ dependencies = [
|
|
|
10
10
|
"mcp==1.9.2",
|
|
11
11
|
"python-dotenv==1.1.0",
|
|
12
12
|
"fastmcp==2.8.0",
|
|
13
|
+
"pydantic>=2.11.0,<2.12.0",
|
|
13
14
|
"anthropic==0.49.0",
|
|
14
15
|
"tomli==2.2.1",
|
|
15
16
|
"tomli-w==1.2.0",
|
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
"url": "https://github.com/cr7258/elasticsearch-mcp-server",
|
|
8
8
|
"source": "github"
|
|
9
9
|
},
|
|
10
|
-
"version": "2.0.
|
|
10
|
+
"version": "2.0.16",
|
|
11
11
|
"packages": [
|
|
12
12
|
{
|
|
13
13
|
"registry_type": "pypi",
|
|
14
14
|
"registry_base_url": "https://pypi.org",
|
|
15
15
|
"identifier": "elasticsearch-mcp-server",
|
|
16
|
-
"version": "2.0.
|
|
16
|
+
"version": "2.0.16",
|
|
17
17
|
"transport": {
|
|
18
18
|
"type": "stdio"
|
|
19
19
|
},
|
|
@@ -91,6 +91,9 @@ class SearchClientBase(ABC):
|
|
|
91
91
|
# Check Elasticsearch package version to determine auth parameter name
|
|
92
92
|
try:
|
|
93
93
|
from elasticsearch import __version__ as es_version
|
|
94
|
+
# Convert version tuple to string format
|
|
95
|
+
version_str = '.'.join(map(str, es_version))
|
|
96
|
+
self.logger.info(f"Elasticsearch client version: {version_str}")
|
|
94
97
|
major_version = es_version[0]
|
|
95
98
|
if major_version >= 8:
|
|
96
99
|
# ES 8+ uses basic_auth
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/client.py
RENAMED
|
@@ -2,11 +2,12 @@ from typing import Dict
|
|
|
2
2
|
|
|
3
3
|
from src.clients.common.alias import AliasClient
|
|
4
4
|
from src.clients.common.cluster import ClusterClient
|
|
5
|
+
from src.clients.common.data_stream import DataStreamClient
|
|
5
6
|
from src.clients.common.document import DocumentClient
|
|
6
7
|
from src.clients.common.general import GeneralClient
|
|
7
8
|
from src.clients.common.index import IndexClient
|
|
8
9
|
|
|
9
|
-
class SearchClient(IndexClient, DocumentClient, ClusterClient, AliasClient, GeneralClient):
|
|
10
|
+
class SearchClient(IndexClient, DocumentClient, ClusterClient, AliasClient, DataStreamClient, GeneralClient):
|
|
10
11
|
"""
|
|
11
12
|
Unified search client that combines all search functionality.
|
|
12
13
|
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from typing import Dict, Optional
|
|
2
|
+
from src.clients.base import SearchClientBase
|
|
3
|
+
|
|
4
|
+
class DataStreamClient(SearchClientBase):
|
|
5
|
+
def create_data_stream(self, name: str) -> Dict:
|
|
6
|
+
"""Create a new data stream."""
|
|
7
|
+
return self.client.indices.create_data_stream(name=name)
|
|
8
|
+
|
|
9
|
+
def get_data_stream(self, name: Optional[str] = None) -> Dict:
|
|
10
|
+
"""Get information about one or more data streams."""
|
|
11
|
+
if name:
|
|
12
|
+
return self.client.indices.get_data_stream(name=name)
|
|
13
|
+
else:
|
|
14
|
+
return self.client.indices.get_data_stream()
|
|
15
|
+
|
|
16
|
+
def delete_data_stream(self, name: str) -> Dict:
|
|
17
|
+
"""Delete one or more data streams."""
|
|
18
|
+
return self.client.indices.delete_data_stream(name=name)
|
|
@@ -7,6 +7,7 @@ from fastmcp import FastMCP
|
|
|
7
7
|
from src.clients import create_search_client
|
|
8
8
|
from src.tools.alias import AliasTools
|
|
9
9
|
from src.tools.cluster import ClusterTools
|
|
10
|
+
from src.tools.data_stream import DataStreamTools
|
|
10
11
|
from src.tools.document import DocumentTools
|
|
11
12
|
from src.tools.general import GeneralTools
|
|
12
13
|
from src.tools.index import IndexTools
|
|
@@ -19,7 +20,13 @@ class SearchMCPServer:
|
|
|
19
20
|
self.engine_type = engine_type
|
|
20
21
|
self.name = f"{self.engine_type}-mcp-server"
|
|
21
22
|
self.mcp = FastMCP(self.name)
|
|
22
|
-
|
|
23
|
+
|
|
24
|
+
# Configure logging
|
|
25
|
+
logging.basicConfig(
|
|
26
|
+
level=logging.INFO,
|
|
27
|
+
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
|
|
28
|
+
)
|
|
29
|
+
self.logger = logging.getLogger(__name__)
|
|
23
30
|
self.logger.info(f"Initializing {self.name}, Version: {VERSION}")
|
|
24
31
|
|
|
25
32
|
# Create the corresponding search client
|
|
@@ -39,6 +46,7 @@ class SearchMCPServer:
|
|
|
39
46
|
DocumentTools,
|
|
40
47
|
ClusterTools,
|
|
41
48
|
AliasTools,
|
|
49
|
+
DataStreamTools,
|
|
42
50
|
GeneralTools,
|
|
43
51
|
]
|
|
44
52
|
# Register all tools
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
from typing import Dict, Optional
|
|
2
|
+
from fastmcp import FastMCP
|
|
3
|
+
|
|
4
|
+
class DataStreamTools:
|
|
5
|
+
def __init__(self, search_client):
|
|
6
|
+
self.search_client = search_client
|
|
7
|
+
|
|
8
|
+
def register_tools(self, mcp: FastMCP):
|
|
9
|
+
"""Register data stream tools with the MCP server."""
|
|
10
|
+
|
|
11
|
+
@mcp.tool()
|
|
12
|
+
def create_data_stream(name: str) -> Dict:
|
|
13
|
+
"""Create a new data stream.
|
|
14
|
+
|
|
15
|
+
This creates a new data stream with the specified name.
|
|
16
|
+
The data stream must have a matching index template before creation.
|
|
17
|
+
|
|
18
|
+
Args:
|
|
19
|
+
name: Name of the data stream to create
|
|
20
|
+
"""
|
|
21
|
+
return self.search_client.create_data_stream(name=name)
|
|
22
|
+
|
|
23
|
+
@mcp.tool()
|
|
24
|
+
def get_data_stream(name: Optional[str] = None) -> Dict:
|
|
25
|
+
"""Get information about one or more data streams.
|
|
26
|
+
|
|
27
|
+
Retrieves configuration, mappings, settings, and other information
|
|
28
|
+
about the specified data streams.
|
|
29
|
+
|
|
30
|
+
Args:
|
|
31
|
+
name: Name of the data stream(s) to retrieve.
|
|
32
|
+
Can be a comma-separated list or wildcard pattern.
|
|
33
|
+
If not provided, retrieves all data streams.
|
|
34
|
+
"""
|
|
35
|
+
return self.search_client.get_data_stream(name=name)
|
|
36
|
+
|
|
37
|
+
@mcp.tool()
|
|
38
|
+
def delete_data_stream(name: str) -> Dict:
|
|
39
|
+
"""Delete one or more data streams.
|
|
40
|
+
|
|
41
|
+
Permanently deletes the specified data streams and all their backing indices.
|
|
42
|
+
|
|
43
|
+
Args:
|
|
44
|
+
name: Name of the data stream(s) to delete.
|
|
45
|
+
Can be a comma-separated list or wildcard pattern.
|
|
46
|
+
"""
|
|
47
|
+
return self.search_client.delete_data_stream(name=name)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "2.0.16"
|
|
@@ -287,7 +287,7 @@ wheels = [
|
|
|
287
287
|
|
|
288
288
|
[[package]]
|
|
289
289
|
name = "elasticsearch-mcp-server"
|
|
290
|
-
version = "2.0.
|
|
290
|
+
version = "2.0.16"
|
|
291
291
|
source = { editable = "." }
|
|
292
292
|
dependencies = [
|
|
293
293
|
{ name = "anthropic" },
|
|
@@ -295,6 +295,7 @@ dependencies = [
|
|
|
295
295
|
{ name = "fastmcp" },
|
|
296
296
|
{ name = "mcp" },
|
|
297
297
|
{ name = "opensearch-py" },
|
|
298
|
+
{ name = "pydantic" },
|
|
298
299
|
{ name = "python-dotenv" },
|
|
299
300
|
{ name = "tomli" },
|
|
300
301
|
{ name = "tomli-w" },
|
|
@@ -307,6 +308,7 @@ requires-dist = [
|
|
|
307
308
|
{ name = "fastmcp", specifier = "==2.8.0" },
|
|
308
309
|
{ name = "mcp", specifier = "==1.9.2" },
|
|
309
310
|
{ name = "opensearch-py", specifier = "==2.8.0" },
|
|
311
|
+
{ name = "pydantic", specifier = ">=2.11.0,<2.12.0" },
|
|
310
312
|
{ name = "python-dotenv", specifier = "==1.1.0" },
|
|
311
313
|
{ name = "tomli", specifier = "==2.2.1" },
|
|
312
314
|
{ name = "tomli-w", specifier = "==1.2.0" },
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "2.0.14"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/.github/workflows/release.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/docker-compose-elasticsearch.yml
RENAMED
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/docker-compose-opensearch.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/README.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/gradlew
RENAMED
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/mcp_client/spring-ai/gradlew.bat
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/__init__.py
RENAMED
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/alias.py
RENAMED
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/cluster.py
RENAMED
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/document.py
RENAMED
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/general.py
RENAMED
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/common/index.py
RENAMED
|
File without changes
|
{elasticsearch_mcp_server-2.0.14 → elasticsearch_mcp_server-2.0.16}/src/clients/exceptions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|