opensearch-mcp-server 2.0.5__py3-none-any.whl → 2.0.6__py3-none-any.whl
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.
- {opensearch_mcp_server-2.0.5.dist-info → opensearch_mcp_server-2.0.6.dist-info}/METADATA +5 -5
- {opensearch_mcp_server-2.0.5.dist-info → opensearch_mcp_server-2.0.6.dist-info}/RECORD +7 -7
- src/server.py +55 -21
- src/version.py +1 -1
- {opensearch_mcp_server-2.0.5.dist-info → opensearch_mcp_server-2.0.6.dist-info}/WHEEL +0 -0
- {opensearch_mcp_server-2.0.5.dist-info → opensearch_mcp_server-2.0.6.dist-info}/entry_points.txt +0 -0
- {opensearch_mcp_server-2.0.5.dist-info → opensearch_mcp_server-2.0.6.dist-info}/licenses/LICENSE +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: opensearch-mcp-server
|
3
|
-
Version: 2.0.
|
3
|
+
Version: 2.0.6
|
4
4
|
Summary: MCP Server for interacting with Elasticsearch and OpenSearch
|
5
5
|
License: Apache License
|
6
6
|
Version 2.0, January 2004
|
@@ -377,20 +377,20 @@ Using `uv` requires cloning the repository locally and specifying the path to th
|
|
377
377
|
|
378
378
|
```bash
|
379
379
|
# By default, the SSE MCP server will serve on http://127.0.0.1:8000/sse
|
380
|
-
uv run src/server.py elasticsearch --transport sse
|
380
|
+
uv run src/server.py elasticsearch-mcp-server --transport sse
|
381
381
|
|
382
382
|
# The host, port, and path can be specified using the --host, --port, and --path options
|
383
|
-
uv run src/server.py elasticsearch --transport sse --host 0.0.0.0 --port 8000 --path /sse
|
383
|
+
uv run src/server.py elasticsearch-mcp-server --transport sse --host 0.0.0.0 --port 8000 --path /sse
|
384
384
|
```
|
385
385
|
|
386
386
|
## Streamable HTTP
|
387
387
|
|
388
388
|
```bash
|
389
389
|
# By default, the Streamable HTTP MCP server will serve on http://127.0.0.1:8000/mcp
|
390
|
-
uv run src/server.py elasticsearch --transport streamable-http
|
390
|
+
uv run src/server.py elasticsearch-mcp-server --transport streamable-http
|
391
391
|
|
392
392
|
# The host, port, and path can be specified using the --host, --port, and --path options
|
393
|
-
uv run src/server.py elasticsearch --transport streamable-http --host 0.0.0.0 --port 8000 --path /mcp
|
393
|
+
uv run src/server.py elasticsearch-mcp-server --transport streamable-http --host 0.0.0.0 --port 8000 --path /mcp
|
394
394
|
```
|
395
395
|
|
396
396
|
## License
|
@@ -1,6 +1,6 @@
|
|
1
1
|
src/__init__.py,sha256=aNKcThftSLh9IjOTA-UUpoRzIm4R0WwXKGAzykwecmU,211
|
2
|
-
src/server.py,sha256=
|
3
|
-
src/version.py,sha256=
|
2
|
+
src/server.py,sha256=BfMAgXTFV9C4waCWRro8Sfl6yXEXr2vJ7YoGY7HhMPY,5072
|
3
|
+
src/version.py,sha256=4Yxft_MNOtwQG58mZpa8eoM0XBHa8VNkTPH9_i0gDaM,22
|
4
4
|
src/clients/__init__.py,sha256=3UezAt9422S-7BvMiCo2Y9pmATVutorwsIQXP_g_CkA,1221
|
5
5
|
src/clients/base.py,sha256=MBAGepXyHPtdbtHhxFB8CamZ2ApWCBuOi_6-ey-MqX8,3298
|
6
6
|
src/clients/exceptions.py,sha256=NYF3KVw-9aAgCViin5OuBI6miMEPS5QsdHx6bcis1wc,2493
|
@@ -18,8 +18,8 @@ src/tools/document.py,sha256=XZTVuk4di9VEwWMZN7jyDVnzoOiXkb4FBrXF44sVXTs,2052
|
|
18
18
|
src/tools/general.py,sha256=whj1spjIb8SS75h843X6c3RTsrZcSm-66KVLlY7OEh0,817
|
19
19
|
src/tools/index.py,sha256=7KNPtElTFelkjRSvdMqPBx9nx_9Uk01OnTMeVo7YeCs,1345
|
20
20
|
src/tools/register.py,sha256=wrG2P6-YPW77bTg1j_ELp8omWRYsJjFeOHUy_unHe6Y,1344
|
21
|
-
opensearch_mcp_server-2.0.
|
22
|
-
opensearch_mcp_server-2.0.
|
23
|
-
opensearch_mcp_server-2.0.
|
24
|
-
opensearch_mcp_server-2.0.
|
25
|
-
opensearch_mcp_server-2.0.
|
21
|
+
opensearch_mcp_server-2.0.6.dist-info/METADATA,sha256=szezVrGvLMf08Ajp-9r7Cww0m4VBKDbD3zU2KJC9wgQ,18791
|
22
|
+
opensearch_mcp_server-2.0.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
23
|
+
opensearch_mcp_server-2.0.6.dist-info/entry_points.txt,sha256=ImfJnUwMpQUBmu-1MeBG_P0dwamfXKQh82mBKW7tWNY,138
|
24
|
+
opensearch_mcp_server-2.0.6.dist-info/licenses/LICENSE,sha256=DBsjuP5FR51d9kaUdXlVBuBv3cQ_I_adq9gefYQ9FcY,11339
|
25
|
+
opensearch_mcp_server-2.0.6.dist-info/RECORD,,
|
src/server.py
CHANGED
@@ -17,7 +17,7 @@ class SearchMCPServer:
|
|
17
17
|
def __init__(self, engine_type):
|
18
18
|
# Set engine type
|
19
19
|
self.engine_type = engine_type
|
20
|
-
self.name = f"{self.engine_type}
|
20
|
+
self.name = f"{self.engine_type}-mcp-server"
|
21
21
|
self.mcp = FastMCP(self.name)
|
22
22
|
self.logger = logging.getLogger()
|
23
23
|
self.logger.info(f"Initializing {self.name}, Version: {VERSION}")
|
@@ -65,24 +65,13 @@ def run_search_server(engine_type, transport, host, port, path):
|
|
65
65
|
server.logger.info(f"Starting {server.name} with {transport} transport")
|
66
66
|
server.mcp.run(transport=transport)
|
67
67
|
|
68
|
-
def
|
69
|
-
"""
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
"""
|
74
|
-
|
75
|
-
|
76
|
-
if __name__ == "__main__":
|
77
|
-
# Parse command line arguments
|
78
|
-
parser = argparse.ArgumentParser(description=f"Elasticsearch/OpenSearch MCP Server v{VERSION}")
|
79
|
-
parser.add_argument(
|
80
|
-
"engine_type",
|
81
|
-
nargs="?",
|
82
|
-
default="elasticsearch",
|
83
|
-
choices=["elasticsearch", "opensearch"],
|
84
|
-
help="Search engine type to use (default: elasticsearch)"
|
85
|
-
)
|
68
|
+
def parse_server_args():
|
69
|
+
"""Parse command line arguments for the MCP server.
|
70
|
+
|
71
|
+
Returns:
|
72
|
+
Parsed arguments
|
73
|
+
"""
|
74
|
+
parser = argparse.ArgumentParser()
|
86
75
|
parser.add_argument(
|
87
76
|
"--transport", "-t",
|
88
77
|
default="stdio",
|
@@ -113,12 +102,57 @@ if __name__ == "__main__":
|
|
113
102
|
args.path = "/sse"
|
114
103
|
else:
|
115
104
|
args.path = "/mcp"
|
105
|
+
|
106
|
+
return args
|
107
|
+
|
108
|
+
def elasticsearch_mcp_server():
|
109
|
+
"""Entry point for Elasticsearch MCP server."""
|
110
|
+
args = parse_server_args()
|
116
111
|
|
117
112
|
# Run the server with the specified options
|
118
113
|
run_search_server(
|
119
|
-
engine_type=
|
114
|
+
engine_type="elasticsearch",
|
120
115
|
transport=args.transport,
|
121
116
|
host=args.host,
|
122
117
|
port=args.port,
|
123
118
|
path=args.path
|
124
|
-
)
|
119
|
+
)
|
120
|
+
|
121
|
+
def opensearch_mcp_server():
|
122
|
+
"""Entry point for OpenSearch MCP server."""
|
123
|
+
args = parse_server_args()
|
124
|
+
|
125
|
+
# Run the server with the specified options
|
126
|
+
run_search_server(
|
127
|
+
engine_type="opensearch",
|
128
|
+
transport=args.transport,
|
129
|
+
host=args.host,
|
130
|
+
port=args.port,
|
131
|
+
path=args.path
|
132
|
+
)
|
133
|
+
|
134
|
+
if __name__ == "__main__":
|
135
|
+
# Require elasticsearch-mcp-server or opensearch-mcp-server as the first argument
|
136
|
+
if len(sys.argv) <= 1 or sys.argv[1] not in ["elasticsearch-mcp-server", "opensearch-mcp-server"]:
|
137
|
+
print("Error: First argument must be 'elasticsearch-mcp-server' or 'opensearch-mcp-server'")
|
138
|
+
sys.exit(1)
|
139
|
+
|
140
|
+
# Determine engine type based on the first argument
|
141
|
+
engine_type = "elasticsearch" # Default
|
142
|
+
if sys.argv[1] == "opensearch-mcp-server":
|
143
|
+
engine_type = "opensearch"
|
144
|
+
|
145
|
+
# Remove the first argument so it doesn't interfere with argparse
|
146
|
+
sys.argv.pop(1)
|
147
|
+
|
148
|
+
# Parse command line arguments
|
149
|
+
args = parse_server_args()
|
150
|
+
|
151
|
+
# Run the server with the specified options
|
152
|
+
run_search_server(
|
153
|
+
engine_type=engine_type,
|
154
|
+
transport=args.transport,
|
155
|
+
host=args.host,
|
156
|
+
port=args.port,
|
157
|
+
path=args.path
|
158
|
+
)
|
src/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = "2.0.
|
1
|
+
__version__ = "2.0.6"
|
File without changes
|
{opensearch_mcp_server-2.0.5.dist-info → opensearch_mcp_server-2.0.6.dist-info}/entry_points.txt
RENAMED
File without changes
|
{opensearch_mcp_server-2.0.5.dist-info → opensearch_mcp_server-2.0.6.dist-info}/licenses/LICENSE
RENAMED
File without changes
|