systemlink-cli 1.8.0__tar.gz → 1.9.0__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.
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/PKG-INFO +1 -1
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/pyproject.toml +1 -1
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/_version.py +1 -1
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/mcp_click.py +22 -14
- systemlink_cli-1.9.0/slcli/mcp_server.py +783 -0
- systemlink_cli-1.8.0/slcli/mcp_server.py +0 -748
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/LICENSE +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/dff-editor/editor.js +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/dff-editor/index.html +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/__init__.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/__main__.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/asset_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/cli_formatters.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/cli_utils.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/comment_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/completion_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/config.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/config_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/dff_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/dff_decorators.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/example_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/example_loader.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/example_provisioner.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/README.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/_schema/schema-v1.0.json +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/demo-complete-workflow/README.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/demo-complete-workflow/config.yaml +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/demo-test-plans/README.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/demo-test-plans/config.yaml +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/exercise-5-1-parametric-insights/README.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/exercise-5-1-parametric-insights/config.yaml +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/exercise-7-1-test-plans/README.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/exercise-7-1-test-plans/config.yaml +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/spec-compliance-notebooks/README.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/spec-compliance-notebooks/config.yaml +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/spec-compliance-notebooks/notebooks/SpecAnalysis_ComplianceCalculation.ipynb +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/spec-compliance-notebooks/notebooks/SpecComplianceCalculation.ipynb +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/spec-compliance-notebooks/notebooks/SpecfileExtractionAndIngestion.ipynb +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/examples/spec-compliance-notebooks/spec_template.xlsx +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/feed_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/file_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/function_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/function_templates.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/main.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/notebook_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/platform.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/policy_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/policy_utils.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/profiles.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/response_handlers.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/rich_output.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/routine_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skill_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/slcli/SKILL.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/slcli/references/analysis-recipes.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/slcli/references/filtering.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/systemlink-notebook/SKILL.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/systemlink-notebook/references/interfaces.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/systemlink-notebook/references/notebook-patterns.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/systemlink-webapp/SKILL.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/systemlink-webapp/references/deployment.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/systemlink-webapp/references/layout-patterns.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/systemlink-webapp/references/nimble-angular.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/skills/systemlink-webapp/references/systemlink-services.md +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/ssl_trust.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/system_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/table_utils.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/tag_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/templates_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/testmonitor_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/universal_handlers.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/user_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/utils.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/web_editor.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/webapp_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/workflow_preview.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/workflows_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/workitem_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/workspace_click.py +0 -0
- {systemlink_cli-1.8.0 → systemlink_cli-1.9.0}/slcli/workspace_utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "systemlink-cli"
|
|
3
|
-
version = "1.
|
|
3
|
+
version = "1.9.0"
|
|
4
4
|
description = "SystemLink Integrator CLI - cross-platform CLI for SystemLink workflows and templates."
|
|
5
5
|
authors = ["Fred Visser <fred.visser@emerson.com>"]
|
|
6
6
|
packages = [{ include = "slcli" }]
|
|
@@ -149,29 +149,32 @@ def register_mcp_commands(cli: Any) -> None:
|
|
|
149
149
|
@click.option(
|
|
150
150
|
"--transport",
|
|
151
151
|
"-T",
|
|
152
|
-
type=click.Choice(["stdio", "
|
|
152
|
+
type=click.Choice(["stdio", "streamable-http"]),
|
|
153
153
|
default="stdio",
|
|
154
154
|
show_default=True,
|
|
155
|
-
help=
|
|
155
|
+
help=(
|
|
156
|
+
"Transport layer: 'stdio' for AI client integration, "
|
|
157
|
+
"'streamable-http' for HTTP transport."
|
|
158
|
+
),
|
|
156
159
|
)
|
|
157
160
|
@click.option(
|
|
158
161
|
"--port",
|
|
159
162
|
"-p",
|
|
160
163
|
default=8000,
|
|
161
164
|
show_default=True,
|
|
162
|
-
help="Port to bind to (
|
|
165
|
+
help="Port to bind to (streamable HTTP transport only).",
|
|
163
166
|
)
|
|
164
167
|
@click.option(
|
|
165
168
|
"--host",
|
|
166
169
|
default="127.0.0.1",
|
|
167
170
|
show_default=True,
|
|
168
|
-
help="Host to bind to (
|
|
171
|
+
help="Host to bind to (streamable HTTP transport only).",
|
|
169
172
|
)
|
|
170
173
|
def serve(transport: str, port: int, host: str) -> None:
|
|
171
174
|
"""Start the MCP server.
|
|
172
175
|
|
|
173
176
|
Defaults to stdio transport for direct AI client integration (VS Code
|
|
174
|
-
Copilot, Claude Desktop, Cursor). Switch to
|
|
177
|
+
Copilot, Claude Desktop, Cursor). Switch to streamable HTTP transport to serve
|
|
175
178
|
over HTTP — useful for the MCP Inspector, browser-based tooling, or
|
|
176
179
|
any client that prefers a persistent HTTP connection.
|
|
177
180
|
|
|
@@ -180,15 +183,15 @@ def register_mcp_commands(cli: Any) -> None:
|
|
|
180
183
|
slcli mcp serve
|
|
181
184
|
|
|
182
185
|
\b
|
|
183
|
-
|
|
184
|
-
slcli mcp serve --transport
|
|
185
|
-
slcli mcp serve --transport
|
|
186
|
+
Streamable HTTP (HTTP server on http://127.0.0.1:8000/mcp):
|
|
187
|
+
slcli mcp serve --transport streamable-http
|
|
188
|
+
slcli mcp serve --transport streamable-http --host 0.0.0.0 --port 9000
|
|
186
189
|
|
|
187
190
|
\b
|
|
188
|
-
Test with the MCP Inspector (
|
|
189
|
-
slcli mcp serve --transport
|
|
191
|
+
Test with the MCP Inspector (Streamable HTTP):
|
|
192
|
+
slcli mcp serve --transport streamable-http
|
|
190
193
|
npx @modelcontextprotocol/inspector
|
|
191
|
-
# connect to http://127.0.0.1:8000/
|
|
194
|
+
# connect to http://127.0.0.1:8000/mcp (transport: Streamable HTTP)
|
|
192
195
|
"""
|
|
193
196
|
try:
|
|
194
197
|
from .mcp_server import main as run_mcp_server
|
|
@@ -208,13 +211,18 @@ def register_mcp_commands(cli: Any) -> None:
|
|
|
208
211
|
mcp_server.settings.host = host
|
|
209
212
|
mcp_server.settings.port = port
|
|
210
213
|
|
|
211
|
-
click.echo(
|
|
214
|
+
click.echo(
|
|
215
|
+
"✓ slcli MCP server starting in streamable HTTP mode on "
|
|
216
|
+
f"http://{host}:{port}/mcp"
|
|
217
|
+
)
|
|
212
218
|
click.echo(" Open the Inspector: npx @modelcontextprotocol/inspector")
|
|
213
|
-
click.echo(
|
|
219
|
+
click.echo(
|
|
220
|
+
f" Then connect to: http://{host}:{port}/mcp " "(transport: Streamable HTTP)"
|
|
221
|
+
)
|
|
214
222
|
click.echo(" Press Ctrl+C to stop.\n")
|
|
215
223
|
|
|
216
224
|
try:
|
|
217
|
-
mcp_server.run(transport="
|
|
225
|
+
mcp_server.run(transport="streamable-http")
|
|
218
226
|
except KeyboardInterrupt:
|
|
219
227
|
click.echo("\nslcli MCP server stopped")
|
|
220
228
|
sys.exit(0)
|