Deploy from Gemini Spark — Connect VibeHost as a Custom App
Add VibeHost as a custom app in Gemini's Connected Apps. What you build with Gemini gets a permanent, shareable URL you control — no terminal, no code, no copy-paste.
You built something great with Gemini — a dashboard, a report, an interactive tool. Now someone asks: "can you send me a link?"
Gemini's built-in share gives you a link to the conversation, not to the thing you built — and you can't control who sees it after they have the URL. If you want a permanent URL you control, on your own subdomain, with privacy settings — connect VibeHost.
No terminal. No code. Just a one-time setup under Gemini's Connected Apps, then say "deploy this" in chat. Gemini calls this a custom app: an MCP server you register by URL, listed under Custom Apps for Spark.
Connect VibeHost to Gemini Spark
Before you start
Google's custom apps help page sets the ground rules: sign in with a personal Google Account (work and school accounts can't add custom apps yet), and keep Keep Activity turned on — custom apps are unavailable while it is off. You can set up the app on the web (gemini.google.com) or in the Gemini desktop app; once connected it is available in the mobile app too. Leave Advanced settings alone: they are only for servers without Dynamic Client Registration, and VibeHost supports it.
Step 1 — Open Connected Apps
Open the Gemini desktop app. Click Settings → Connected Apps, then scroll to Custom Apps for Spark.
On the web, open gemini.google.com, click Settings in the bottom-left corner, then Connected Apps. If you don't see it, open Personal Intelligence first, then Connected Apps.

Step 2 — Add a custom app
Click Add custom app (on the web: Add a custom app). Choose Cloud MCP as the app type.
Under Add a custom app link, paste the VibeHost MCP server URL:
- MCP server URL:
https://api.vibehost.com/mcp
Leave Advanced settings as-is. Click Next.

Step 3 — Save your custom app
Gemini contacts the server and shows a Save your custom app dialog with the app's details: the name VibeHost, its description and the list of Available functions it exposes. Nothing here needs editing. Click Connect.

Step 4 — Authorize
Your browser opens for a one-time OAuth sign-in (Google or email, same as vibehost.com). Approve it, and VibeHost appears in your custom apps list as VibeHost @vibehost with its toggle switched on.

Once authorized, Gemini can deploy to VibeHost. The connection persists across sessions and devices — you only do this once.
Deploy an artifact
With VibeHost connected, just tell Gemini what you want. To make sure Gemini routes the request to VibeHost, type @ and pick VibeHost from the list, then ask:
@VibeHost deploy this to VibeHost.
Or be more specific:
@VibeHost deploy this dashboard as an app called "q2-metrics". Make it public.
Gemini creates the app, writes the artifact into it and deploys it behind the scenes (the tool calls are described once, in Choosing an upload path), then returns a live URL like https://q2-metrics-yourworkspace.vibehost.space.
The artifact renders exactly as you see it in Gemini's preview — interactive elements, charts, animations all work. Anything that needs a backend (API calls to localhost, database connections) won't work since VibeHost serves static files.
What you can do from chat
Once connected, you can ask Gemini to:
| Say this | What happens |
|---|---|
| "Deploy this to VibeHost" | Creates an app + deploys the current artifact |
| "Update the deploy" | Pushes a new version to the same URL |
| "Make it public" / "Make it private" | Changes visibility |
| "Roll back to the previous version" | Reverts to the last deployment |
| "Share this with sarah@acme.com" | Adds a viewer grant by email |
| "Give me a share link that expires in 7 days" | Creates a time-bound access link |
| "Delete the app" | Removes the app and all deployments |
Whether Gemini asks before it deletes an app, changes who can see it, or does anything else is up to how Gemini handles tool confirmations for custom apps. VibeHost also instructs the agent not to make an app public unless you ask for it directly.
When to use this vs. the Chrome extension
| Gemini Spark + MCP | Chrome extension | |
|---|---|---|
| How | Talk to Gemini in chat | Click a button on the canvas |
| Best for | Iterating on deploys ("make it public, now roll back, now share with Sarah") | Quick one-off deploys from any AI canvas |
| Works with | Gemini web, desktop and mobile apps | Claude, ChatGPT, Gemini, AI Studio, v0 |
| Access control | Full (grants, share links, passwords, visibility) | Basic (private by default, change via CLI/dashboard) |
Both deploy to the same VibeHost backend. A deploy started from the extension can be updated from chat, and vice versa.
Troubleshooting
Connected Apps has no custom apps section — You are signed in with a work or school account, or Keep Activity is off. Switch to a personal Google Account and turn Keep Activity on in Gemini's activity settings, then reload.
The "Save your custom app" dialog never appears — Gemini could not reach https://api.vibehost.com/mcp. Check the URL for typos (it is /mcp, with no trailing slash) and try again; a VPN or corporate proxy that blocks the request has the same effect.
Gemini answers without using VibeHost — Type @ in the prompt box and select VibeHost before your request, so Gemini routes it to the custom app.
Deploy fails with "UNAUTHENTICATED" — Your OAuth token may have expired. Open Settings → Connected Apps, find VibeHost, disconnect it and connect again.
Artifact deploys but doesn't render correctly — VibeHost serves static files. If your artifact fetches from localhost or calls a backend API, those calls will fail once deployed. Keep artifacts self-contained.
See also
- MCP server — full tool list and OAuth details
- Chrome extension — one-click deploy from Gemini Canvas in the browser
- Grants and visibility — access control model
- Share links — time-bound access without sign-up
Deploy from Claude Desktop — Connect VibeHost in 60 Seconds
Add VibeHost as a custom connector in Claude Desktop. Your Claude artifacts get a permanent, shareable URL — no terminal, no code, no copy-paste.
Deploy from ChatGPT — Connect VibeHost via MCP
Connect VibeHost as an MCP app in ChatGPT. Deploy Canvas artifacts to a permanent, shareable URL you control — no terminal, no code. Set up in under a minute.