website-builder-backend / frontend /scripts /38_auto_register_mcp_tools.sh
David Prince
fix: add all missing local module stubs (remote_mcp_registry, mcp_auth, mcp_transport, etc)
cce8120
Raw
History Blame Contribute Delete
1.32 kB
#!/usr/bin/env bash
set -Eeuo pipefail
HF_URL="${HF_URL:-https://daviddolor-website-builder-backend.hf.space}"
OPENAPI="${HF_URL}/openapi.json"
MCP="${HF_URL}/mcp"
mkdir -p mcp reports
echo "[1/12] Downloading OpenAPI..."
curl -fsSL "$OPENAPI" -o mcp/openapi.json
echo "[2/12] Extracting API endpoints..."
jq '
.paths
| to_entries
| map({
name:(.key|gsub("/";"_")),
path:.key,
methods:(.value|keys)
})
' mcp/openapi.json > mcp/auto_registered_tools.json
echo "[3/12] Querying MCP..."
curl -fsSL \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' \
"$MCP" \
> mcp/mcp_tools.json
echo "[4/12] Counting..."
API_COUNT=$(jq 'length' mcp/auto_registered_tools.json)
MCP_COUNT=$(jq '.result.tools|length' mcp/mcp_tools.json)
echo "[5/12] Writing report..."
cat > reports/mcp_registration_report.txt <<REPORT
HF Backend : $HF_URL
OpenAPI Endpoints : $API_COUNT
MCP Tools : $MCP_COUNT
REPORT
echo "[6/12] Preview API..."
jq '.[0:10]' mcp/auto_registered_tools.json
echo "[7/12] Preview MCP..."
jq '.result.tools' mcp/mcp_tools.json
echo "[8/12] Registry ready."
echo "[9/12] OpenAPI : mcp/openapi.json"
echo "[10/12] API Registry : mcp/auto_registered_tools.json"
echo "[11/12] MCP Registry : mcp/mcp_tools.json"
echo "[12/12] Complete."