Apps and MCP Tools
Use this guide to understand the platform's app suites, MCP (Model Context Protocol) integration, and how to connect AI tools to your handle.
All browser-first operator surfaces now run on https://app.{PUBLIC_DOMAIN}. Use /apps/ as the current catalog/front door for product workflows, /creator/* for creator workflows, and /smartwork/launch/{projectId} when a Smartwork project is opened from the first-party launcher.
When to use
- You want to manage campaigns, deployments, or analytics from an app interface.
- You want to connect an AI assistant or LLM to your handle via MCP.
- You need to register custom function bindings for tool-based integrations.
For a single end-to-end runbook across schema setup, analytics checks, and function-binding data delivery, use Platform-Wide Feature Exploration Lab.
Browser app surfaces
The platform exposes two browser app collections on the unified app.{PUBLIC_DOMAIN} host: creator workflows under /creator/* and the /apps/ catalog for product and operations workflows.
Creator workflows
These routes are direct browser entry points under https://app.{PUBLIC_DOMAIN}/creator/*.
| Module | Route | What it does |
|---|---|---|
| Planner Studio | /creator/planner | Discover opportunities, generate strategies, and approve proposals |
| Traffic Conflict Ops | /creator/traffic-conflicts | Detect route conflicts, preview routing decisions, and run link health checks |
| Campaign Control | /creator/campaign-control | Create campaigns, test conversions, and monitor campaign health |
| Site Runtime Ops | /creator/site-runtime | Deploy sites, preview deployments, and switch site modes |
| QA Automation Console | /creator/qa-automation | Create test environments, run QA suites, and finalize runs |
| Revenue Ops | /creator/revenue-ops | Stripe Connect onboarding, earnings monitoring, and group-buy publishing |
| Campaign Ads | /creator/campaign-ads | Review ad pacing, budget signals, keyword insights, and proposal approvals |
Access: JWT authentication required (CREATOR role or above).
Apps catalog and product workflows
The canonical product entry point is https://app.{PUBLIC_DOMAIN}/apps/. Each module opens from the browse catalog at /apps/browse/{appId}/playground; older shortcut paths such as /apps/attribution are preserved only as compatibility redirects inside the SPA.
| Surface | Canonical route | What it does |
|---|---|---|
| Apps catalog | /apps/ | Browse the current app catalog and launch a workflow from one place |
| Attribution + Link Tracking | /apps/browse/attribution/playground | Create tracked links, preview routes, and debug conversion attribution |
| Personalization + Campaign Studio | /apps/browse/personalization/playground | Configure personalization rules and campaign routing |
| Knowledge Commerce Hub | /apps/browse/knowledge-commerce/playground | Manage knowledge docs, rebuild indexes, and inspect gated content flows |
| Lifecycle Messaging + Retargeting | /apps/browse/lifecycle-messaging/playground | Model chain signals, prefetch behavior, and webhook-backed lifecycle flows |
| Domain Commerce + Trust | /apps/browse/domain-commerce/playground | Manage account domains, purchase approvals, and route maps |
| Creator Revenue | /apps/browse/creator-revenue/playground | Inspect checkout, entitlement, payouts, and monetization flows |
| Targeting Lab | /apps/browse/targeting-lab/playground | Exercise targeting, consent, segment, and cookie behaviors |
| AI Visibility | /apps/browse/ai-visibility/playground | Audit crawler/referrer analytics and site-intel readiness |
| Ad Intelligence | /apps/browse/ad-intelligence/playground | Work ad-account, audit, keyword, bid, pacing, and reporting scenarios |
| Cost Forecast Workbench | /apps/cost-forecast | Model spend and forecasting assumptions |
| Targeting Lab Harness | /apps/targeting-lab-harness | Run the standalone targeting scenario harness |
Smartwork browser runtime
Smartwork is part of the same unified browser host, but it is launched separately from the /apps/ catalog.
| Surface | Route | What it does |
|---|---|---|
| Smartwork launcher | /smartwork/launch/{projectId} | First-party launcher that resolves a project into the Smartwork runtime |
| Smartwork runtime | /smartwork/* | Mounted runtime for the launched project session |
| Legacy project deep link | /smartworks/{projectId} | Compatibility path that redirects into /smartwork/launch/{projectId} |
MCP integration
The platform exposes a Model Context Protocol (MCP) server that allows AI assistants and LLMs to interact with one handle programmatically.
What is MCP?
MCP is a protocol that lets AI tools (like Claude, ChatGPT, or custom agents) call structured functions on your behalf. Instead of navigating the UI or writing API calls, you describe what you want in natural language and the AI uses MCP tools to execute it.
Available MCP tools
The MCP server exposes live MCP tool families for links, analytics, routing, knowledge, runtimes, deployments, and related operations.
| Category | Tools | What they do |
|---|---|---|
| System | system_discover | Handle discovery and metadata |
| Links | links_list, links_upsert, links_health_check, links_route_preview | Create, update, and inspect links |
| Forms | forms_schema_get, forms_feedback_record, links_form_submit | Retrieve learned form schemas, submit with validation |
| Tracking | Tracking template tools | Manage UTM and tracking configurations |
| Routing | Routing rule tools | Manage and evaluate routing rules |
| Analytics | Analytics query tools | Query analytics and reporting data |
| Knowledge | knowledge_query, knowledge_topics, knowledge_stats | Query indexed handle knowledge and inspect coverage |
| Webhooks | Webhook subscription tools | Manage webhook endpoints and subscriptions |
| Agent | agent_discover, agent_generate_strategy, agent_list_proposals, agent_create_proposal, agent_approve_proposal, agent_reject_proposal, agent_start_run, agent_get_run_status, agent_rollback_run | Full agent planning and execution lifecycle |
| Code Runs | Code execution tools | Execute and monitor code runtimes |
| Site Management | site_deploy_inline, site_deploy_multifile, site_list_deployments, site_preview_deployment, pages_list | Deploy custom site files/HTML and list creator pages |
| Campaign Site Structure | campaign_structure_get, campaign_structure_upsert, campaign_structure_publish | Manage campaign detail page schemas (CAMPAIGN_DETAIL_V1) backed by page metadata and S3 JSON |
Connecting an AI assistant
- Create one connector per handle.
- Point the connector to
https://{handle}.mcp.10x.in/mcporhttps://api.10x.in/mcp/{handle}/mcp. - Complete the OAuth redirect and approve the scopes the connector needs.
- Let the shared bootstrap workflow recover auth, validate scopes, and resume the requested handle workflow.
- Let the hosted MCP transport use the OAuth-issued bridge credential. Do not paste raw usernames or passwords.
For detailed ChatGPT/OpenAI setup (auth handshake, scopes, and verification), follow ChatGPT MCP Setup.
Warning
Do not point MCP tools at a mapped custom domain. Custom domains are for site and redirect traffic; MCP remains on the platform environment hostname ({handle}.mcp.10x.in in production, staging/test platform hostname outside prod).
MCP hosting
The MCP server can be accessed in multiple ways:
| Mode | URL pattern | Use case |
|---|---|---|
| Handle subdomain | {handle}.mcp.{domain} | Per-handle MCP access |
| Direct API | Via API Gateway | Programmatic access |
Sessions are managed via Redis with a configurable TTL (default 30 minutes). Each session is scoped to a handle and authenticated with the OAuth-issued bridge bearer for that connector.
Why MCP stays on platform domains
Platform MCP hosting currently depends on:
- platform-managed wildcard DNS and certificates for per-handle MCP subdomains
- environment-owned OAuth discovery metadata and protected-resource metadata
- environment-owned host parsing for handle resolution and session routing
Supporting MCP on customer-managed custom domains would require additional wildcard delegation, certificate lifecycle management, and OAuth metadata hosting for every customer domain. That is not supported today.
WebMCP browser tools
The platform also provides 6 built-in browser tools that work in the page context:
| Tool | What it does |
|---|---|
read_page_context | Read the current page's targeting context |
explain_variant_selection | Explain why a particular personalization variant was selected |
write_signal | Write a behavioral signal to the chain |
resolve_intent | Resolve the visitor's intent from accumulated signals |
prefetch_decisions | Pre-compute decisions for multiple trigger events |
track_conversion | Track a conversion event with ctx token |
Function bindings
Function bindings let you register custom tool definitions that are exposed through the MCP server and public API.
Creating a function binding
POST /v2/handles/{handle}/function-bindings
{
"bindingKey": "product-lookup",
"template": "proxy_request",
"enabled": true,
"config": {
"toolname": "Product Lookup",
"tooldescription": "Look up product details by SKU"
}
}
Requirements:
- PRO plan or above (
growth_toolsfeature gate). - Binding key must match
^[a-z0-9][a-z0-9_-]{1,63}$. - Template must be one of:
proxy_request,webhook_forward,form_submit,signed_redirect.
Listing function bindings
GET /v2/public/handles/{handle}/function-bindings
Returns all enabled bindings with their tool name and description. This is the endpoint MCP clients use to discover available functions.
Invoking a binding at the edge
GET|POST /_edge/fn/{handle}/{bindingKey}
Use this path to invoke a binding runtime after creation/discovery. For proxy_request, the runtime returns an echo-style payload with method/path/query details.
UI path
- Open
https://app.{PUBLIC_DOMAIN}. - Navigate to your handle settings.
- Open the Integrations tab.
- Configure function bindings or view MCP connection details.
- Use
/apps/from the main navigation to browse product workflows, or open the creator modules under/creator/*. - Open
/smartwork/launch/{projectId}when you need the first-party Smartwork launcher for a project.
Required auth
- CREATOR-level
JWTfor app suite access. - OAuth connector grant with appropriate scopes for MCP tool usage.
pages.read/pages.writescopes for campaign-structure MCP tools.- PRO plan required for function bindings (
growth_toolsgate). PATremains valid for non-MCP automation routes where explicitly documented.
Common errors
| Code | Error | Cause |
|---|---|---|
| 403 | feature_locked | Function bindings require PRO plan |
| 400 | invalid_binding_key | Binding key does not match required pattern |
| 401 | invalid_token | OAuth connector grant is missing, expired, or invalid for the MCP session |
Related: