35 lines
857 B
Markdown
35 lines
857 B
Markdown
# MCP SSH Server
|
|
|
|
Self-contained MCP server for SSH command execution and persistent terminal sessions.
|
|
|
|
## Build
|
|
|
|
```bash
|
|
dotnet build McpSsh.slnx
|
|
dotnet test McpSsh.slnx --no-build
|
|
```
|
|
|
|
## Publish
|
|
|
|
Publish all supported runtime IDs as single-file, self-contained binaries:
|
|
|
|
```bash
|
|
./scripts/publish.sh
|
|
```
|
|
|
|
Publish one runtime:
|
|
|
|
```bash
|
|
./scripts/publish.sh linux-x64
|
|
```
|
|
|
|
The script writes binaries under `artifacts/publish/<rid>/`.
|
|
|
|
Trimming is disabled by default because the MCP SDK discovers tools through reflection. To experiment with trimming after validating tool discovery in the published binary:
|
|
|
|
```bash
|
|
PUBLISH_TRIMMED=true ./scripts/publish.sh linux-x64
|
|
```
|
|
|
|
NativeAOT is not enabled. This code should be treated as not AOT-ready until the MCP SDK reflection path and SSH.NET dependencies are explicitly validated under `PublishAot=true`.
|