PocketPapi

Help Center · MCP

Connect your AI workspace to PocketPapi.

Use MCP Studio to let Codex, Claude, OpenCode, and other compatible agents connect to sites, agents, scheduled tasks, reviews, conversations, leads, and operational activity from one secure installation.

Open MCP Studio · Connect your tools Sign-in required for setup

Enable MCP in five steps

1
Sign in and approve access
Use browser OAuth when your client supports it. For an OAuth-blocked agent, start the owner-approved device flow below. A client with a secure credential vault can also use Create an MCP token.
2
Install the one PocketPapi plugin
Add the PocketPapi marketplace, then install pocketpapi-codex-agent. It contains the shared Codex skill and MCP connection.
3
Connect your MCP client
Add the remote endpoint below in Codex, OpenCode, or another MCP client and complete browser approval.
4
Choose a site scope
Site-scoped tools require a site ID for reviews, activity, conversations, tickets, and Zernio operations.
5
Connect the services you need
Configure your personal MCP servers in MCP Studio and connect any PocketPapi service accounts your workflow needs.

Remote MCP connection

Endpoint

POST https://pocketpapi.com/mcp

Authentication header

Authorization: Bearer YOUR_TOKEN

OpenCode-style configuration

{"mcp":{"sitecommander":{"type":"remote","url":"https://pocketpapi.com/mcp","headers":{"Authorization":"Bearer YOUR_TOKEN"}}}}

Connect an OAuth-blocked agent

If an agent can call PocketPapi’s HTTPS API and securely store a credential but cannot finish browser OAuth, use the short-lived device flow. Start the request from the agent’s credential workflow; never paste either code or the returned bearer token into chat, files, or logs.

POST https://pocketpapi.com/api/control-plane/mcp/device-code
Content-Type: application/json

{"client_name":"Site Design Agent"}

The response contains a private device_code, a short user_code, a verification_uri, a 10-minute expiry, and a polling interval. An authorized settings administrator checks the client name and selects the exact project list, permissions, and expiry. Start with the smallest access needed, such as site_data.read or workspace.read; grant site.edit, publishing, and other write permissions only when required. Security rule: never share a primary account token. Provisioning, publishing, and other sensitive actions keep their existing approval checks.

POST https://pocketpapi.com/api/control-plane/mcp/device-token
Content-Type: application/json

{"device_code":"DEVICE_CODE_FROM_THE_SECURE_AGENT_FLOW"}

Poll at the returned interval and honor authorization_pending and slow_down. After owner approval, PocketPapi returns the bearer credential once. Store it directly in the agent’s secure credential vault, then connect to https://pocketpapi.com/mcp with an Authorization bearer header. The base URL defaults to compact tool discovery, while existing clients may continue calling cached tool names through the usual permission checks. Use ?profile=full only when a client needs the original full tool list. The owner can review, edit, rotate, or revoke each client independently at MCP / API settings. Verify the connection with sitecommander_status, sitecommander_mcp_version, and sitecommander_projects.

Codex plugin and MCP setup

MCP Studio’s Install plugin + fill Codex action copies a reviewable setup prompt and opens Codex only after confirmation. The browser cannot edit your local Codex configuration on its own. After installing, enable the bundled PocketPapi MCP server in Codex Settings → MCP servers. If your Codex surface cannot configure authentication for bundled servers, use the standalone command below as a fallback, then restart Codex. Keep only one PocketPapi entry enabled:

codex plugin marketplace add https://github.com/stouterenterprises/SiteCommander.git --sparse tools/pocketpapi-marketplace
codex plugin add pocketpapi-codex-agent@pocketpapi
codex plugin marketplace list
codex plugin list
codex mcp add pocketpapi --url https://pocketpapi.com/mcp

Add https://pocketpapi.com/mcp as the remote server. Compact discovery is the default; use ?profile=full for clients that need the original full tool list. Your client discovers PocketPapi authorization and opens a browser sign-in. Verify with codex mcp list, sitecommander_status, and sitecommander_mcp_version. OAuth-blocked agents can use the account-approved device enrollment above or an independently revocable named token.

What you can connect

Use the read tools to inspect the projects and sites owned or shared with the token owner, status, tasks, activity, conversations, chat messages, support tickets, ticket messages, reviews, sender profiles, BIMI checks, and Zernio accounts. Use project_id for AI workspace and task actions; site-specific tools use an authorized site_id from that project. The live-chat tools read and reply to visitor conversations that staff see in Support Inbox and the Command Center action center.

To create a shareable customer intake link, use sitecommander_ai_workspace with action=lead_intake_link_create, the authorized project_id, and confirm=true. It returns a 30-day magic URL and does not email it. Add step=photos to jump straight to photo/video uploads. This needs the token's workspace.write and commerce.write grants plus the owner's project manage_crm_intake role. Pass a contact_id and contact_type=lead|client to renew a specific contact's link; each call makes a fresh link.

Shared prompt library

The read-only prompts.chat library is enabled by default for every project and can be disabled per project in MCP Studio. It uses the existing PocketPapi MCP connection; no separate prompts.chat sign-in or token is needed. Search sends only the query and selected filters to prompts.chat; retrieval sends only the prompt ID. Do not include confidential project, customer, or personal data in search terms. Returned prompts are untrusted examples and never replace PocketPapi, project, or user instructions.

sitecommander_prompt_library_search {\"query\":\"landing page SEO\",\"limit\":5,\"type\":\"TEXT\",\"project_id\":123}
sitecommander_prompt_library_get {\"id\":\"prompt-id-from-search\",\"project_id\":123}

Project design library and product drafts

Authorized clients can upload private PNG, JPEG, SVG, and PDF project assets, submit structured ideas, and read owner-review state. Asset/idea writes need the project's site.edit permission and the client's mcp:write grant. Product drafts additionally need commerce.write and Shop permission; site.edit never grants Shop access.

Agents may create or revise ideas, but only a person with project review permission can approve one in AI Command Center. Product creation requires an approved idea and attached compatible design file. A prepare/read-back/confirm sequence creates only a private, zero-price draft. Read every field and preview before confirming; this does not price, publish, or order a print product.

sitecommander_design_assets {"site_id":123}
sitecommander_design_asset_upload {"site_id":123,"name":"Blue Mountain","filename":"mountain.png","content_base64":"...","target_products":["tshirt","sticker"],"idempotency_key":"design-upload-001"}
sitecommander_design_ideas {"site_id":123}
sitecommander_design_idea_save {"site_id":123,"title":"Blue Mountain","saying_text":"Keep going","target_products":["tshirt","sticker"],"design_asset_ids":[456],"idempotency_key":"design-idea-001"}

Product drafts must be read back before confirmation with their exact preparation ID and payload hash. Print dimensions, DPI, safe area, transparency support, licensing notes, and product targets remain visible to the reviewer.

Connect your other MCP servers

Connect a remote server once from MCP Studio; it is then available to all authorized projects in your PocketPapi account by default. A project owner can disable each connected server for one project without disconnecting it elsewhere. PocketPapi encrypts account-level credentials and never returns them to clients, so no separate credential is needed per project. Providers that require authentication still need credentials when first connected. Use public HTTPS Streamable HTTP endpoints; local stdio servers need a secured remote endpoint that you host. OAuth read-only clients can call read-only remote tools; write tools require the client’s mcp:write grant. For animation design, use PocketPapi’s built-in effects catalog, or connect SVGator and Figma directly in a supported OAuth-capable client because PocketPapi does not broker their interactive OAuth sign-in.

  • Animation authoring: SVGator MCP creates editable SVG animation projects. The connector is included with every plan; animated exports require a paid plan.
  • Design context: Figma MCP reads design context and supports design-to-code workflows for clients in Figma’s MCP catalog.
  • Browser performance: Chrome DevTools MCP offers free, open-source Chrome debugging and performance traces; Playwright MCP supports browser-based layout and interaction checks. Both need a browser runtime and a secured remote endpoint to route through PocketPapi.
  • Website motion and speed: PocketPapi’s built-in effects MCP tools prepare reduced-motion-aware recipes and staged effects, while its PageSpeed tool audits public pages.

Site Studio update check

After browser authorization, identify the authorized customer site. Site Studio MCP supports page content and SEO, navigation, page roles, every supported no-AI block, approved-media image replacement, managed effects, forms, galleries, protection, and PageSpeed audits for public pages. File changes stay in staging and return a preview. Link lists and inserted links accept Amazon/eBay tracking IDs, use the site Shop connection before PocketPapi central Shop when a link ID is blank, and can add an HTTPS profile to the social bar. Affiliate links include sponsored/nofollow attributes and nearby disclosure copy. A missing or stale feature-pack marker does not block routine edits or authorize a full upgrade. Use bootstrap and pack upgrade only for separately requested setup. Production stays unchanged until the owner approves the exact staged revision.

Discover pages with sitecommander_site_studio_pages. Use the matching Site Studio MCP tool for the requested edit. Routine saves update the site’s one current staging draft; they do not create a new draft for each edit. Keep later edits in that draft and open its preview. Ask separately before production publishing. After approval, call sitecommander_site_studio_publish with that site_id, the reviewed draft’s change_set_id, and confirm=true. Site Studio checks token scope and production deployment rights. Do not import this repository or upgrade the full pack for a routine edit.

Website intake and two-domain launch checks

New-project intake and the customer website-intake form capture the business brief, current website, customer domain, registrar, DNS provider, current host, email provider, who can update DNS, and whether existing email DNS must be preserved. The secure customer form also collects brand files, photos/video, staff details, and launch requirements. Those answers are saved in project intake and available to authorized project work, so an AI pass can use them without asking the customer to repeat them. Forms never request domain passwords, hosting credentials, or DNS API keys. Existing projects use the same project knowledge and launch checks.

For an existing project, MCP Studio shows a project-scoped command to create a 30-day customer intake link. The link is returned for a person to share; PocketPapi does not email it automatically. Creating one requires workspace.write, commerce.write, and the owner's project intake permission.

Project and AI knowledge

Project knowledge is shared with authorized AI clients. knowledge_save_draft keeps a revision in draft for review. Treat an owner request to update project or AI knowledge as a durable publication request unless they explicitly ask for a reviewable draft. When the exact content is owner-confirmed or verified, use knowledge_publish with the latest revision, a unique idempotency key, and confirm=true. Use knowledge_save_draft only for an explicitly requested reviewable draft or unverified research. knowledge_publish saves and approves the exact revision atomically when the token owner has project review permission, then the approved body is available through knowledge_combined. If the token owner lacks project review permission, report that blocker instead of silently saving a draft. Use knowledge_review to decide an existing exact draft revision. Public intake research remains draft until verified; exact Site Studio manifest observations are source-published as unverified context. Knowledge approval never publishes a customer site; production still requires approval of the exact change_set_id.

// Draft-only request:
sitecommander_ai_workspace {"action":"knowledge_save_draft","project_id":123,"slug":"ai-agent-guide","title":"AI and agent guide","document_body":"Owner-confirmed instructions","expected_revision":2,"idempotency_key":"guide-draft-20261025"}
// Separate owner-requested publish from current revision 2:
sitecommander_ai_workspace {"action":"knowledge_publish","project_id":123,"slug":"ai-agent-guide","title":"AI and agent guide","document_body":"Owner-confirmed instructions","expected_revision":2,"idempotency_key":"guide-publish-20261025","confirm":true}

Full-site research and AI pass

Before a business pass, refresh approved project knowledge and reuse the saved customer intake. The AI pass crawls every discoverable same-host page and up to three XML sitemaps before it writes, recording visible copy, headings, metadata, forms, links, social profiles, and image/media references. Its crawl is bounded to 120 pages, 500 links, 22 seconds, 2 MiB per page, 20 MiB total page bodies, and 60,000 visible text characters per page. A failed route, exceeded bound, or truncated page stops AI page changes and leaves project knowledge unchanged. The pass creates a complete, business-specific draft, stages a needed compatible runtime update in that same draft, and preserves current settings, forms, galleries, and approved media.

The crawl identifies image/media references; an owner request to import photos from a named public website or Facebook Photos/posts page authorizes a bounded photo import from that source. Import only photos the public page exposes, report inaccessible sources or failed URLs, and never infer a logo or hero role. The AI pass returns its exact preview and change-set ID. Review every intended page, SEO, accessibility, mobile layout, and performance before approving that exact revision for production.

sitecommander_ai_workspace {"action":"knowledge_combined","project_id":123,"mode":"full"}
sitecommander_site_studio_ai_pass {"site_id":456,"operation":"run","confirm":true}
// For an explicitly requested public photo import, use sitecommander_site_studio_media_import_source.
// Review the returned preview; publish only after approval of its exact change_set_id.

Every site can use a managed .stouterenterprises.com hostname and a separate customer domain. They should both serve the same site’s /production directory. The customer hostname is not treated as the active production URL until DNS points to PocketPapi and cPanel confirms the hostname maps to that exact production directory. The managed hostname stays available as the fallback. DNS resolution alone, correct nameservers alone, or a successful HTTP response alone does not prove the complete launch.

For a launch, domain setup, or domain troubleshooting request, run sitecommander_site_domain_check for the exact authorized site. It checks the customer DNS target, public HTTPS responses for both hosts, and the connected cPanel account’s mapping for each host. It is read-only: it does not change nameservers, DNS, cPanel mappings, email routing, or site files. A temporary or missing cPanel connection is returned as unverified. Preserve MX, SPF, DKIM, and domain-verification records during any separately authorized DNS change.

sitecommander_sites
sitecommander_site_domain_check {"site_id":123,"confirm":true}
// Report the site as ready only when production_ready=true.

After the check, review the project’s site card for both public addresses, DNS status, each cPanel mapping status, HTTP health, and the last mapping-check time. Project-specific launch state is isolated to that site.

Command cookbook

Paste these tool names or prompts into a connected MCP client. Start with the version check and project list. Use project_id for AI workspace and task actions; use site_id only for tools that specifically operate on a site.

sitecommander_design_mcp_catalog {"query":"animation"}
sitecommander_external_mcp_connections
sitecommander_status
sitecommander_projects
sitecommander_sites
sitecommander_mcp_version {"site_id":123}
sitecommander_mcp_studio {"site_id":123}
sitecommander_site_bootstrap {"site_id":123}
sitecommander_accounts {"site_id":123}
sitecommander_leads {"site_id":123,"status":"new","limit":50}
sitecommander_clients {"site_id":123,"limit":50}
sitecommander_activity {"site_id":123}
sitecommander_conversations {"site_id":123}
sitecommander_messages {"conversation_id":456}
sitecommander_tickets {"site_id":123}
sitecommander_ticket_messages {"ticket_id":789}
sitecommander_mail_profiles {"site_id":123}
sitecommander_galleries {"site_id":123,"page":"home"}
sitecommander_gallery_save {"site_id":123,"name":"Gallery","page":"home","items":[]}
sitecommander_services {"site_id":123}
sitecommander_service_save {"site_id":123,"title":"Consultation","description":"Owner-provided service details","preview_page":"services"}
sitecommander_service_delete {"site_id":123,"id":456,"preview_page":"services"}
sitecommander_zernio_accounts {"site_id":123}
sitecommander_zernio_social {"site_id":123}
sitecommander_zernio_sync {"site_id":123}
sitecommander_business_network {"site_id":123}
sitecommander_easyapp {"site_id":123}
sitecommander_agents
sitecommander_scheduled_tasks
sitecommander_task_claim_local
sitecommander_task_complete_local {"run_id":456,"status":"completed"}
sitecommander_effects_search {"q":"scroll reveal"}
sitecommander_effects_fetch {"effect_id":"fade-up-reveal"}
sitecommander_shop_products {"site_id":123}
sitecommander_shop_orders {"site_id":123}
sitecommander_pos_catalog {"site_id":123}
sitecommander_pos_sync_health {"site_id":123}

Useful edit prompt: “On site 123, improve the existing page as a professional link-in-bio page. Keep verified branding and links, stage the edit in Site Studio, and return a preview link. Do not import the PocketPapi repository or install a full feature pack. Ask separately before publishing.” For a full managed-pack setup, name that separate scope explicitly and approve it before the agent stages the pack.

Scheduled Site and Local tasks

MCP Studio can create project/site-scoped recurring tasks. Site tasks run through PocketPapi’s bounded cPanel cron using the encrypted project provider; Local tasks are claimed by a connected Codex, Claude, or portable local runner and execute with that client’s own provider key. Call sitecommander_agents to discover enabled agents before linking one to a task. Every MCP response includes contract metadata, and the client should call sitecommander_mcp_version first so a changed contract is refreshed before the next run.

The administrator-controlled Agent Runner switch in Settings enables the server lane. One cPanel request runs a small batch of Site-mode agents and Site-mode MCP tasks, then exits; it never launches a permanent worker, desktop session, or browser on shared hosting. Built-in automations use deterministic server rules where possible, preserve project/site scope, write audit/run history, keep learning items reviewable, and leave external side effects behind the existing approval boundary. Follow the execution limits in your AccuWeb plan when choosing the cPanel interval.

sitecommander_mcp_version
sitecommander_agents
sitecommander_scheduled_tasks
sitecommander_task_create
sitecommander_task_claim_local
sitecommander_task_complete_local

Configure one cPanel CLI job for /usr/local/bin/ea-php82 /home/stouter1/public_html/commander/app/Cli/agent-runner-cron.php. It reads the cron secret from PocketPapi’s server-owned config, so no secret belongs in the command, URL, repository, public HTML, browser JavaScript, or an MCP prompt. AccuWeb shared hosting permits at most three scheduled executions per day; for example, use minute 5 and hour */8. Keep the Settings switch off until you are ready to start scheduled work. The protected HTTP and legacy cron routes remain available for compatible tooling and are gated by the same switch.

Governed workflows

PocketPapi adopts the useful operations pattern behind modern enterprise agent platforms: describe work in a bounded task, choose a Site or Local execution lane, use deterministic built-ins for exact checks, route judgment to a configured provider, keep project-scoped memory as candidates until approved, and surface exceptions through the existing review queues. Browser recording, connector discovery, and computer-use sessions require a workstation or a separate automation service; they do not run inside an AccuWeb shared-hosting PHP request.

Simple prompts that work well

For a targeted fix, include the highlighted text and the page URL: “On https://example.com/services, fix the highlighted ‘Book now’ button so it has AA contrast, a visible focus state, and a 44px touch target. Use the existing site MCP/effects integration and apply the change in staging.” For a full connection pass: “Run the MCP sync pack for this site. Check chat, CRM/contact forms, SSO, branding, email identity, Zernio, business network, POS, shop/legal pages, and current visual effects; use existing project knowledge and log every repair.”

Courses, POS, and shared shop offers

Choose course / education in Site Studio to receive the course funnel, course pages, checkout-ready course products, learning materials, and legal/contact page pack. PocketPapi-owned products can be private, shared with selected projects, shared with all projects, or forced as a central promotion. Authorized staff can opt in from pocketpapi-shop.php; referrals are recorded against central orders so bonus status is reviewable.

POS, MyRides, and social operations

Every connected POS installation exposes the same site-scoped /api/control-plane/pos/{action} contract and sitecommander_pos_* MCP tools. It covers the complete suite: catalog/menu and modifiers, orders and line items, payments, register sessions and cash movements, KDS status, inventory events, loyalty, promotions, rewards, gift cards, giveaways, broadcasts, delivery jobs, kiosks, self-serve stations and assistance requests, receipt printers, menu boards, kitchen labels/printables with date-marking presets, settings, reports, and site-scoped email/text subscribers. Social connections and inbox items can be linked to support tickets or POS orders, and social-reply sends the approved reply through the connected provider while recording the ticket/order timeline.

To connect PocketPapi and MyRides, configure a peer on each site with sync-config, then schedule GET /cron/pos-sync?secret=CRON_SECRET in cPanel. The sync is bounded and idempotent. Bearer tokens, passwords, payment credentials, and social-provider secrets are never exported.

Connect a customer site

For a site's own server-side forms, leads, subscriptions, or MCP client, open that site's details in the authenticated command center and choose Connect site to command center. PocketPapi creates a separate site-scoped token with the same one-time reveal and rotate behavior. It can only reach that site, and every call appears in central Audit Logs and the command-center activity view. Public visitors can also use Get updates to choose email or text messages; those public opt-ins remain separate from staff account preferences.

Read the server integration contract →

PocketPapi site connections

Site owners can connect an authorized site to the shared Pocket Papi iOS and Android client from Project Setup. Every project receives Pocket Papi: public sites appear in the mobile chooser, while private sites require a one-time configuration code. Pocket Papi uses its own site-scoped user session for leads and chat, so an MCP token should never be placed in the mobile app.

Read the PocketPapi API contract →

Effects tools

The public catalog currently contains 68 copyable recipes, including cinematic backgrounds, multi-object choreography, scroll-driven motion, text systems, 3D/perspective interactions, form feedback, dialogs, and free MIT library starters. Catalog entries report whether Site Studio can stage them directly or whether they need markup/dependency setup. Use the read-only MCP tools to search, fetch, and compose code; use the site-scoped apply workflow to stage compatible effects on one exact preview element.

sitecommander_effects_search
sitecommander_effects_fetch
sitecommander_effects_compose
sitecommander_site_studio_media {"site_id":123,"media_type":"video"}
sitecommander_site_studio_media {"site_id":123,"media_type":"poster"}
sitecommander_site_studio_effect_apply {"site_id":123,"confirm":true,"path":"index.html","effect_id":"video-cinema-stage","selector":".hero","animation":{"background_video_asset_id":42,"trigger":"loop","duration":18,"palette":"ocean"}}

Effect apply supports loop, entry, in-view scroll, hover/focus, and click/keyboard triggers plus bounded timing, intensity, palette, direction, stagger, and child-object choreography. Video backgrounds use only the authorized site's MP4/WebM and optional poster assets from Project Media (up to 5 MiB each), load after idle while visible, and pause for reduced-motion, hidden tabs, or data-saver connections. Every write returns a staging preview and never publishes.

Browse and preview every effect in the Help Center →

See the complete discovery and endpoint reference →

Sender photos & BIMI

Use sitecommander_mail_profiles to list sender identities and sitecommander_mail_profile_upsert to manage a public custom photo. Use sitecommander_bimi_prepare, sitecommander_bimi_status, sitecommander_bimi_verify, and sitecommander_bimi_record to prepare and verify a domain logo. These tools do not change DNS or send email, and provider-owned Gmail/Microsoft 365 photos remain outside PocketPapi’s control.

Keep the token private

Never expose bearer tokens. Use MCP and the API from your server or AI-client configuration. Do not put a token in public HTML, browser JavaScript, or a client-side app bundle.