feat: add MCP registry publishing via DNS auth (tv.tootie/unraid-mcp)

This commit is contained in:
Jacob Magar 2026-04-04 03:26:24 -04:00
parent 71a9f72eaa
commit c9ead7a867
3 changed files with 57 additions and 0 deletions

View file

@ -43,3 +43,21 @@ jobs:
--title "Release $GITHUB_REF_NAME" \
--generate-notes \
dist/*
- name: Install mcp-publisher
run: |
curl -fsSL "https://github.com/modelcontextprotocol/registry/releases/latest/download/mcp-publisher_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar xz mcp-publisher
- name: Set version in server.json
run: |
VERSION="${GITHUB_REF_NAME#v}"
jq --arg v "$VERSION" '
.version = $v |
.packages = [.packages[] | if .registryType == "pypi" then .version = $v else . end]
' server.json > server.tmp && mv server.tmp server.json
- name: Authenticate to MCP Registry
run: ./mcp-publisher login dns --domain tootie.tv --private-key ${{ secrets.MCP_PRIVATE_KEY }}
- name: Publish to MCP Registry
run: ./mcp-publisher publish

View file

@ -1,5 +1,7 @@
# Unraid MCP
<!-- mcp-name: tv.tootie/unraid-mcp -->
[![PyPI](https://img.shields.io/pypi/v/unraid-mcp)](https://pypi.org/project/unraid-mcp/) [![ghcr.io](https://img.shields.io/badge/ghcr.io-jmagar%2Funraid--mcp-blue?logo=docker)](https://github.com/jmagar/unraid-mcp/pkgs/container/unraid-mcp)
GraphQL-backed MCP server for Unraid. Exposes a unified `unraid` tool for system inspection, management operations, live telemetry, and destructive actions gated by explicit confirmation.

37
server.json Normal file
View file

@ -0,0 +1,37 @@
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "tv.tootie/unraid-mcp",
"title": "Unraid MCP",
"description": "MCP server for Unraid API — provides tools to interact with an Unraid server's GraphQL API.",
"repository": {
"url": "https://github.com/jmagar/unraid-mcp",
"source": "github"
},
"version": "1.2.2",
"packages": [
{
"registryType": "pypi",
"registryBaseUrl": "https://pypi.org",
"identifier": "unraid-mcp",
"version": "1.2.2",
"runtimeHint": "uvx",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"name": "UNRAID_API_URL",
"description": "Base URL of your Unraid server, e.g. http://192.168.1.100.",
"isRequired": true,
"isSecret": false
},
{
"name": "UNRAID_API_KEY",
"description": "Unraid API key for authentication.",
"isRequired": true,
"isSecret": true
}
]
}
]
}