Portal MCP (Beta)

The Portal MCP server lets any AI coding agent create Portals and embeds for you. Tell your agent what you want: it handles auth, content setup, and deployment.

Install

Installation

CursorClaude CodeCodexVS CodeGemini CLI

Click the button below to install in Cursor:

Add to Cursor

Or add it manually:

After installing, quickly restart Cursor (close & re-open) for the MCP to activate.

~/.cursor/mcp.json

{
  "mcpServers": {
    "portal": {
      "url": "https://mcp-portal-sogv.onrender.com/mcp"
    }
  }
}

For other clients, add the MCP URL directly: https://mcp-portal-sogv.onrender.com/mcp


Ask Your Agent

Type What it tests Prompt
Watch AI-narrated tour of a public site Make a watch mode portal of stripe.com that walks viewers through the homepage
Record Record yourself giving a demo Make a watch mode portal of my product (makeportals.com) that walks viewers through the dashboard and how portals look and let me record myself giving a demo of it
Play Sandboxed product trial with guardrails Make a play mode portal of my product signed into a demo account with the account and logout buttons disabled and staying on the dashboard
Watch Embeddable product walkthrough Make a watch mode portal of our landing page I can embed on our site that gives a tour and answers questions
Local file Deploy a local app as a Portal Deploy my Vite app at ./my-project as a play mode portal with an AI assistant
Extension Chrome extension Portal on any site Build a Chrome extension that rewrites NYT headlines into Gen Z slang, then deploy it as a play mode portal on nytimes.com

What happens:

  1. Agent authenticates you (first time: Google sign-in, then cached)
  2. Sets up your content (website, local project, or extension)
  3. Generates the experience
  4. Shows you a draft for approval
  5. Deploys and returns your shareable link

Post-deploy: Add CTA buttons, get embed snippets, create attribution links, pull session replays: just ask your agent.

Pricing: View credit packs and pricing. Your agent can call buy_credits to purchase more.


How it works

What happens when you ask your coding agent to make a Portal.

“Make me a Portal for X”

Auto Sign in One-time Google sign-in via browser

What kind of content?

Websitepublic or needs login

Local projectzip + upload from disk

Chrome extmanifest.json at root

Example appbuilt-in demo

Watch or Play?

Watch mode AI leads a guided demo

Autonomous AI auto-finds buttons & scripts scenes

or

Manual Record yourself giving a demo

Play mode User explores, AI answers

Autonomous AI scrapes & blocks risky selectors

or

Manual Click selectors to block yourself

Review draft Agent shows you greeting, selectors, scenes, guardrails — you approve or edit

make_portal Deploy → shareable link (1 credit)

Post-deploy CTA button · Embed · Attribution links · Session replays

Tool Reference

The MCP server exposes 27 tools. Your agent picks the right ones automatically.

Essential Tools

Tool What it does
portal_status Check if you're logged in + credit balance
portal_login Sign in (first time only, ~10s)
make_portal Deploy your Portal (costs 1 credit)
get_portal Poll until Portal is ready

Content Setup

Tool Use when
save_login You need viewers to start already logged in
upload_source Sharing a local project (zip uploaded from disk)
create_script AI auto-generates the experience (Watch or Play)
record_demo You want to record yourself giving a demo
pick_selectors You want to manually pick what to block/hide

Post-Deploy

Tool What it does
configure_portal Add CTA buttons, set usage limits
configure_embed Get <iframe> embed code
get_portal_sessions View session replays + conversation logs
list_portals See all your Portals
buy_credits Purchase more credits

All 27 Tools

Auth:portal_status, portal_login, portal_login_check, portal_logout

Content:save_login, upload_source, create_script, get_script, record_demo, start_recording, stop_recording, pick_selectors, pick_selectors_complete, deploy_example

Credentials:create_credential, list_credentials, delete_credential, generate_totp

Portals:make_portal, get_portal, list_portals, configure_portal, configure_embed, get_portal_sessions, get_creation_logs

Utilities:normalize_ptl, validate_ptl, get_session

Billing:buy_credits


Portal Spec (JSON)

Every Portal is a JSON document. The MCP agent builds this for you: here's the format, split by mode.

Play Mode: visitor explores, AI answers questions:

{
  "entry": {
    "url": "https://app.example.com/dashboard",
    "state": "saved_state"
  },
  "experience": {
    "mode": "play",
    "agent": {
      "enabled": true,
      "interface": ["voice", "text"],
      "greeting": "Welcome! Explore the dashboard.",
      "knowledge": "Your product docs here."
    }
  },
  "guardrails": {
    "allowed_urls": ["app.example.com/dashboard", "app.example.com/settings"],
    "disabled_elements": [
      { "selector": "#delete-account" },
      { "selector": ".danger-zone" }
    ],
    "api_rules": {
      "rate_limits": [
        { "name": "Chat API", "pattern": "/api/chat", "method": "POST", "max": 5, "windowMs": 60000 }
      ]
    }
  }
}

Play-specific fields:guardrails.allowed_urls (restricts navigation), guardrails.disabled_elements (hides UI elements), guardrails.api_rules (rate limits, blocked methods).


Watch Mode: AI leads a guided demo:

{
  "entry": {
    "url": "https://app.example.com/dashboard",
    "state": "saved_state"
  },
  "experience": {
    "mode": "watch",
    "agent": {
      "enabled": true,
      "interface": ["voice", "text"],
      "greeting": "Welcome! I'll walk you through the dashboard.",
      "goal": "Demo the analytics dashboard and key metrics.",
      "knowledge": "This app tracks website traffic.",
      "cursor": { "enabled": true, "color": "#4A4A4A", "speed": 400 }
    }
  }
}

Watch-specific fields:goal (what the AI demonstrates), cursor (animated pointer). allowed_urls is ignored in Watch mode: the AI controls navigation.


Minimal spec (smallest valid Portal):

{
  "entry": { "url": "https://example.com" },
  "experience": { "mode": "play" }
}

API Keys & Limits

For CI or headless environments, generate API keys from the Developers page.

  • Keys start with ptl_
  • Scoped to your account

Rate limits:

Surface Limit
MCP 10 creations/hr, 30 calls/min
Builder 10 creations/hr per account

Next: Changelog →

Portal, Share Any Browser State as a Link

Portal is the official product and company behind makeportals.com.

Portal lets you share any browser state as a link: websites, localhost, Chrome extensions, local files. Recipients open an isolated session and try your product instantly, no install required. They explore freely or an AI guide provides product experiences, and you get rich analytics.

What Portal Does

Portal's mission is to make links for every product state on earth, making them reachable and explainable. Trying software shouldn't require installing it.

Portal turns any running product into a shareable session link. Not a video. Not a mockup. Not a walkthrough overlay. The real UI, fully interactive, safe to share.

Key Features

  • Share any browser state as a link (websites, localhost, Chrome extensions, local files)
  • Recipients get an isolated session with no install or signup required
  • AI guide trained on your docs answers questions and can provide product experiences
  • Click-level analytics on every interaction
  • Guardrails to block destructive actions
  • No code required to set up

Use Cases

  • Replacing first sales calls with self-serve product experiences
  • User research — watch where users hesitate, get stuck, or drop off
  • Onboarding — drop users into a configured state with an AI guide
  • Sharing Chrome extensions without requiring installs
  • Sharing localhost projects as links
  • DevRel workshops — everyone opens the same environment instantly

What Portal is NOT

  • Not a video
  • Not a product mockup
  • Not an onboarding overlay
  • Not a static walkthrough
  • Not automation software

Portal provides access to a real, running product instance with guardrails.

Backed by South Park Commons (SPC F25)

Location: San Francisco, CA, USA

Try a live Portal | Sign Up