20 lines
748 B
Bash
20 lines
748 B
Bash
#!/usr/bin/env bash
|
|
# Prints a Cursor MCP install deeplink.
|
|
# Usage: scripts/cursor-deeplink.sh <server-name> '<transport-json>'
|
|
# transport-json = {"command":"...","args":[...]}
|
|
set -euo pipefail
|
|
name="${1:-}"
|
|
config="${2:-}"
|
|
if [[ -z "$name" || -z "$config" ]]; then
|
|
echo "Aufruf: scripts/cursor-deeplink.sh <server-name> '<transport-json>'" >&2
|
|
exit 1
|
|
fi
|
|
python3 -c '
|
|
import base64, json, sys, urllib.parse
|
|
name, raw = sys.argv[1], sys.argv[2]
|
|
transport = json.loads(raw)
|
|
payload = {name: transport}
|
|
b64 = base64.urlsafe_b64encode(json.dumps(payload, separators=(",", ":")).encode("utf-8")).decode("ascii").rstrip("=")
|
|
print(f"cursor://anysphere.cursor-deeplink/mcp/install?name={urllib.parse.quote(name)}&config={b64}")
|
|
' "$name" "$config"
|