3 files changed
+21
-4
.github/workflows/release-mcp-registry.yml
+9
-1
@@ -31,12 +31,20 @@ jobs:
31
32
echo "RELEASE_VERSION=${release_version}" >> "$GITHUB_ENV"
33
34
- - name: Check the server name is consistent across packages
34
+ - name: Check the server metadata is consistent
35
shell: bash
36
run: |
37
server_name="$(jq -r '.name' server.json)"
38
echo "Server name: ${server_name}"
39
40
+ remote_url="https://api.smbcloud.xyz/v1/mcp"
41
+ if ! jq -e --arg url "${remote_url}" \
42
+ 'any(.remotes[]?; .type == "streamable-http" and .url == $url)' \
43
+ server.json >/dev/null; then
44
+ echo "server.json is missing the Streamable HTTP remote ${remote_url}." >&2
45
+ exit 1
46
+ fi
47
+
48
# npm proves ownership through `mcpName` in the published package.json,
49
# which is generated by this script at release time.
50
grep -q "mcpName: \"${server_name}\"" npm/scripts/render-main-package.cjs
docs/mcp-registry.md
+6
-3
@@ -6,8 +6,9 @@ The repository publishes two MCP servers to the [official MCP Registry](https://
6
- **`io.github.smbcloudXYZ/xcrs`** — **XCRS Mobile & TV Automation**, available through `xcrs --mcp` or `smb --mcp --scope automation` for Xcode, ControlKit, CoreDevice, and adb workflows.
7
8
The registry is a metadata index — it doesn't host binaries. The smbCloud
9
-listing points at packages published to npm and NuGet, while the standalone
10
-XCRS listing points at the `xcrs` crate on crates.io.
9
+listing offers the hosted Streamable HTTP server as well as packages published
10
+to npm and NuGet, while the standalone XCRS listing points at the `xcrs` crate
11
+on crates.io.
12
13
For running and configuring the server itself, see [MCP Server](./mcp.md).
14
@@ -48,7 +49,9 @@ Publishing under
49
`smbcloud.xyz` plus an Ed25519 private key stored as a repo secret. OIDC needs
50
no secret at all, so that's what we use.
51
51
-### Which packages are listed
52
+### Available connections
53
+
54
+- **Hosted** — Streamable HTTP at `https://api.smbcloud.xyz/v1/mcp`.
55
56
- **npm** — `@smbcloud/cli`, launched as `npx @smbcloud/cli --mcp`. The package
57
declares a single binary (`smb`), so `npx` resolves it despite the name
server.json
+6
@@ -19,6 +19,12 @@
19
"source": "github",
20
"id": "597171611"
21
},
22
+ "remotes": [
23
+ {
24
+ "type": "streamable-http",
25
+ "url": "https://api.smbcloud.xyz/v1/mcp"
26
+ }
27
+ ],
28
"packages": [
29
{
30
"registryType": "npm",