elicitation_connect.html
html
| 1 | {% extends "musehub/base.html" %} |
| 2 | |
| 3 | {% block title %}Connect {% if is_daw %}{{ service }}{% else %}{{ platform }}{% endif %} — MuseHub MCP{% endblock %} |
| 4 | {% block breadcrumb %}<a href="/musehub">MuseHub</a> / <span>Agent Connection</span>{% endblock %} |
| 5 | |
| 6 | {% block content %} |
| 7 | <div style="max-width:560px;margin:4rem auto;text-align:center"> |
| 8 | |
| 9 | {# ── Agent context banner ─────────────────────────────────────────────── #} |
| 10 | <div style="background:var(--color-surface-2,#f3f0ff);border:1.5px solid var(--color-accent,#7c3aed);border-radius:12px;padding:1.25rem;margin-bottom:2rem;text-align:left"> |
| 11 | <p style="margin:0;font-size:0.8rem;color:var(--color-muted,#6b7280);letter-spacing:0.05em;text-transform:uppercase;font-weight:600"> |
| 12 | 🤖 Agent-Initiated Connection |
| 13 | </p> |
| 14 | <p style="margin:0.5rem 0 0;font-size:0.9rem;color:var(--color-text,#1a1a2e)"> |
| 15 | A MuseHub agent has requested this connection to give it permission to |
| 16 | {% if is_daw %} |
| 17 | trigger cloud renders, stems exports, and mastering jobs via <strong>{{ service }}</strong>. |
| 18 | {% else %} |
| 19 | distribute your releases to <strong>{{ platform }}</strong>. |
| 20 | {% endif %} |
| 21 | You can authorise or close this tab to decline. |
| 22 | </p> |
| 23 | </div> |
| 24 | |
| 25 | {# ── Service card ─────────────────────────────────────────────────────── #} |
| 26 | <div style="background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:16px;padding:2.5rem;box-shadow:0 4px 24px rgba(0,0,0,0.07)"> |
| 27 | |
| 28 | <div style="font-size:3.5rem;margin-bottom:1rem"> |
| 29 | {% if is_daw %}🎛️{% else %}🎵{% endif %} |
| 30 | </div> |
| 31 | |
| 32 | <h1 style="font-size:1.5rem;font-weight:700;color:var(--color-text,#1a1a2e);margin:0 0 0.5rem"> |
| 33 | Connect to {% if is_daw %}{{ service }}{% else %}{{ platform }}{% endif %} |
| 34 | </h1> |
| 35 | |
| 36 | <p style="color:var(--color-muted,#6b7280);margin:0 0 2rem;font-size:0.95rem"> |
| 37 | {% if is_daw %} |
| 38 | Authorise MuseHub to access your <strong>{{ service }}</strong> account. |
| 39 | This enables cloud renders, AI mastering, and stems exports |
| 40 | directly from agent workflows. |
| 41 | {% else %} |
| 42 | Authorise MuseHub to access your <strong>{{ platform }}</strong> artist account. |
| 43 | This enables direct release distribution from agent workflows. |
| 44 | {% endif %} |
| 45 | </p> |
| 46 | |
| 47 | {# ── Permissions list ──────────────────────────────────────────────── #} |
| 48 | <div style="background:var(--color-surface-2,#f9fafb);border-radius:8px;padding:1rem;text-align:left;margin-bottom:2rem"> |
| 49 | <p style="margin:0 0 0.75rem;font-size:0.8rem;font-weight:600;color:var(--color-muted,#6b7280);text-transform:uppercase;letter-spacing:0.04em"> |
| 50 | Permissions requested |
| 51 | </p> |
| 52 | <ul style="margin:0;padding-left:1.25rem;font-size:0.9rem;color:var(--color-text,#1a1a2e);line-height:1.8"> |
| 53 | {% if is_daw %} |
| 54 | <li>Read your project library</li> |
| 55 | <li>Upload audio for mastering / export</li> |
| 56 | <li>Receive download links for processed files</li> |
| 57 | {% else %} |
| 58 | <li>Read your artist profile</li> |
| 59 | <li>Upload and publish releases on your behalf</li> |
| 60 | <li>Read streaming analytics</li> |
| 61 | {% endif %} |
| 62 | </ul> |
| 63 | </div> |
| 64 | |
| 65 | {# ── Elicitation ID (for debugging) ────────────────────────────────── #} |
| 66 | <p style="font-size:0.75rem;color:var(--color-muted,#9ca3af);font-family:monospace;margin:0 0 1.5rem;word-break:break-all"> |
| 67 | Elicitation ID: {{ elicitation_id }} |
| 68 | </p> |
| 69 | |
| 70 | {# ── Action buttons ─────────────────────────────────────────────────── #} |
| 71 | <div style="display:flex;gap:1rem;justify-content:center"> |
| 72 | <a |
| 73 | href="{{ callback_url }}" |
| 74 | class="btn btn-primary" |
| 75 | style="flex:1;text-align:center;padding:0.85rem;font-size:1rem;font-weight:600" |
| 76 | > |
| 77 | {% if is_daw %}Connect {{ service }}{% else %}Connect {{ platform }}{% endif %} → |
| 78 | </a> |
| 79 | <a |
| 80 | href="/mcp/elicitation/{{ elicitation_id }}/callback?status=declined" |
| 81 | class="btn" |
| 82 | style="flex:0;padding:0.85rem 1.5rem;color:var(--color-muted,#6b7280)" |
| 83 | > |
| 84 | Decline |
| 85 | </a> |
| 86 | </div> |
| 87 | |
| 88 | <p style="font-size:0.78rem;color:var(--color-muted,#9ca3af);margin:1.5rem 0 0"> |
| 89 | You can revoke this connection at any time from your |
| 90 | <a href="/settings" style="color:var(--color-accent,#7c3aed)">MuseHub settings</a>. |
| 91 | </p> |
| 92 | </div> |
| 93 | |
| 94 | </div> |
| 95 | {% endblock %} |