@muxoai/platform 1.3.0 → 1.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/plugins/marketplace.json +1 -1
- package/.claude-plugin/marketplace.json +19 -4
- package/.codex/config.toml +9 -2
- package/README.md +63 -20
- package/dist/clerk.d.ts +33 -0
- package/dist/clerk.js +198 -0
- package/dist/cli.js +1181 -99
- package/dist/engine.d.ts +22 -1
- package/dist/engine.js +284 -14
- package/dist/mcp.d.ts +6 -1
- package/dist/mcp.js +109 -22
- package/dist/nl.js +60 -36
- package/dist/policy.d.ts +9 -0
- package/dist/policy.js +73 -0
- package/dist/providers/composio-instant.d.ts +4 -0
- package/dist/providers/composio-instant.js +634 -534
- package/dist/providers/composio-sdk.d.ts +1 -0
- package/dist/providers/composio-sdk.js +6 -2
- package/dist/providers/microsoft-governance.d.ts +61 -2
- package/dist/providers/microsoft-governance.js +458 -24
- package/dist/providers/stripe-billing.js +14 -4
- package/dist/providers/stripe-projects.d.ts +4 -1
- package/dist/providers/stripe-projects.js +123 -12
- package/dist/providers/supermemory.d.ts +28 -5
- package/dist/providers/supermemory.js +183 -55
- package/dist/sdk.d.ts +167 -1
- package/dist/sdk.js +113 -2
- package/dist/server.js +258 -40
- package/dist/store.d.ts +26 -1
- package/dist/store.js +255 -6
- package/dist/types.d.ts +86 -0
- package/dist/ui/console-html.d.ts +16 -0
- package/dist/ui/console-html.js +2427 -2206
- package/dist/ui/design-tokens.d.ts +177 -0
- package/dist/ui/design-tokens.js +210 -0
- package/dist/version.d.ts +1 -0
- package/dist/version.js +1 -0
- package/package.json +2 -2
- package/plugins/muxo/.app.json +1 -1
- package/plugins/muxo/.claude-plugin/plugin.json +2 -2
- package/plugins/muxo/.codex-plugin/plugin.json +7 -5
- package/plugins/muxo/.mcp.json +1 -33
- package/plugins/muxo/assets/logo.png +0 -0
- package/plugins/muxo/hooks/session-start.sh +1 -1
- package/plugins/muxo/plugin.json +63 -6
- package/plugins/muxo/skills/muxo/SKILL.md +92 -14
- package/plugins/muxo/skills/muxo/agents/openai.yaml +12 -0
- package/plugins/muxo/skills/muxo/references/cli.md +4 -2
- package/plugins/muxo/skills/muxo/references/mcp.md +15 -9
- package/plugins/muxo/skills/setup/SKILL.md +8 -2
- package/plugins/muxo/skills/setup/agents/openai.yaml +12 -0
|
@@ -1,25 +1,103 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: muxo
|
|
3
|
-
description: Route governed Muxo work
|
|
3
|
+
description: Route governed Muxo work through the hosted Muxo MCP server (`https://api.muxo.ai/mcp`), the live Muxo HTTP API (`https://api.muxo.ai`), or the local Muxo CLI. Use when a user wants to read or act on external SaaS services via Composio Connected Apps (GitHub, Gmail, Slack, Notion, Linear, Jira, HubSpot, Google Calendar, Google Drive, Discord, Airtable, Salesforce, and 1,000+ apps), complete OAuth handoff (`start_connection`, `wait_for_connection`, `connection_status`), provision live cloud infrastructure via Stripe Projects (`resource.*` for Turso SQLite, Neon Postgres, Supabase, Upstash Redis, Cloudflare Workers, Vercel, Prisma, Clerk, WorkOS, PlanetScale, ClickHouse, Chroma, E2B, Browserbase, Resend, Sentry, PostHog, Datadog, Railway, Fly.io), manage Stripe credits & subscriptions (`billing.*`), run zero-OAuth Instant tools (`instant.*` for web search, scrape, crawl, SEO audit, DNS, Hacker News), recall workspace context from Muxo Workspace Memory, or verify cryptographic execution receipts.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Muxo
|
|
7
7
|
|
|
8
|
-
Choose
|
|
8
|
+
Choose the execution surface available in the current session, and NEVER check for the `muxo` CLI first when running inside ChatGPT web/app.
|
|
9
9
|
|
|
10
|
-
## Choose the surface
|
|
10
|
+
## Choose the surface (Priority Order)
|
|
11
11
|
|
|
12
|
-
1.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
1. **Hosted Muxo MCP Tools (ChatGPT web/app & Codex primary path)**:
|
|
13
|
+
- Look directly in your available MCP tools for `search_tools`, `inspect_tool`, `plan_action`, `execute_read`, `execute_write`, `execute_provisioning`, `execute_financial`, `execute_admin`, `execute_destructive`, `get_profile`, `get_organization`, `start_connection`, `wait_for_connection`, `connection_status`, or `get_receipt` (they may be prefixed with `muxo` or your connector name).
|
|
14
|
+
- If these MCP tools are present in the session, call them directly! Do NOT run bash commands to check if `muxo` CLI is installed first. Read [references/mcp.md](references/mcp.md).
|
|
15
|
+
2. **Direct HTTPS API / JSON-RPC Fallback (when inside ChatGPT/sandbox with `curl` or Python/fetch access, and MCP tools are not bound in the session)**:
|
|
16
|
+
- If the user installed the skill without connecting the MCP server at `https://chatgpt.com/plugins`, you can STILL execute every Muxo tool live over HTTPS against `https://api.muxo.ai/mcp` or `https://api.muxo.ai/api/v1/do`!
|
|
17
|
+
- Works for **Zero-OAuth Instant Tools (`instant.*`)**, **Composio Connected Apps & OAuth Handoff (`app.*`, `start_connection`, `wait_for_connection`)**, and **Stripe Projects Cloud Provisioning & Billing (`resource.*`, `billing.*`)**.
|
|
18
|
+
- Example one-shot JSON-RPC calls over HTTPS:
|
|
19
|
+
```bash
|
|
20
|
+
# 1) Zero-OAuth Instant Tool (e.g. SEO Audit or Multi-Page Web Crawl)
|
|
21
|
+
curl -s -X POST https://api.muxo.ai/mcp -H "Content-Type: application/json" \
|
|
22
|
+
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"plan_action","arguments":{"tool_slug":"instant.seo.audit","input":{"url":"https://muxo.ai"},"reason":"Audit technical SEO"}}}'
|
|
23
|
+
curl -s -X POST https://api.muxo.ai/mcp -H "Content-Type: application/json" \
|
|
24
|
+
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"execute_read","arguments":{"plan_id":"<PLAN_ID>"}}}'
|
|
16
25
|
|
|
17
|
-
|
|
26
|
+
# 2) Composio Connected Apps & External User OAuth Handoff (GitHub, Gmail, Slack, Notion, Linear, etc.)
|
|
27
|
+
curl -s -X POST https://api.muxo.ai/mcp -H "Content-Type: application/json" \
|
|
28
|
+
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"start_connection","arguments":{"provider":"gmail"}}}'
|
|
29
|
+
# Share connection.redirectUrl with the user, then verify connection status:
|
|
30
|
+
curl -s -X POST https://api.muxo.ai/mcp -H "Content-Type: application/json" \
|
|
31
|
+
-d '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"wait_for_connection","arguments":{"provider":"gmail"}}}'
|
|
18
32
|
|
|
19
|
-
|
|
33
|
+
# 3) Stripe Projects Cloud Infrastructure Provisioning (Turso, Neon, Supabase, Upstash, Cloudflare, Vercel, etc.)
|
|
34
|
+
curl -s -X POST https://api.muxo.ai/mcp -H "Content-Type: application/json" \
|
|
35
|
+
-d '{"jsonrpc":"2.0","id":5,"method":"tools/call","params":{"name":"plan_action","arguments":{"tool_slug":"resource.turso.database","input":{"resource_name":"agent-db","plan":"free"},"reason":"Provision Turso SQLite DB"}}}'
|
|
36
|
+
curl -s -X POST https://api.muxo.ai/mcp -H "Content-Type: application/json" \
|
|
37
|
+
-d '{"jsonrpc":"2.0","id":6,"method":"tools/call","params":{"name":"execute_provisioning","arguments":{"plan_id":"<PLAN_ID>"}}}'
|
|
38
|
+
```
|
|
39
|
+
3. **Local Muxo CLI (`muxo`, requires Node.js 22+)**:
|
|
40
|
+
- Use ONLY in a local developer terminal, Codex CLI, Claude Code, or Droid environment when pulling `.env` credentials (`muxo env pull`) or running local scripts. CLI signup (`muxo login --signup`) and local MCP (`muxo mcp`) connect to the hosted workspace at `https://api.muxo.ai`. Read [references/cli.md](references/cli.md).
|
|
41
|
+
4. **Enabling Native Harness & MCP Connections**:
|
|
42
|
+
- **ChatGPT**:
|
|
43
|
+
1. Open **Plugins → + → Add custom MCP server** (at `https://chatgpt.com/plugins`).
|
|
44
|
+
2. Enter Server URL: `https://api.muxo.ai/mcp` (Authentication: **No authentication** for Instant tools, or **OAuth** for Connected Apps; OAuth client registration can use CIMD or DCR).
|
|
45
|
+
3. Select **Create as a plugin**, then invoke `@Muxo` in ChatGPT (**Work** tab or chat composer).
|
|
46
|
+
- **Claude Code Marketplace (`muxo@muxo`)**:
|
|
47
|
+
`claude plugin marketplace add https://api.muxo.ai/.claude-plugin/marketplace.json && claude plugin install muxo@muxo`
|
|
48
|
+
- **OpenAI Codex**:
|
|
49
|
+
Add a Git repository or local marketplace directory containing `.agents/plugins/marketplace.json` and enable `[plugins."muxo@muxo"]` in `.codex/config.toml`, or configure `[mcp_servers.muxo]` (`url = "https://api.muxo.ai/mcp"`) in `~/.codex/config.toml`.
|
|
50
|
+
- **Claude Desktop**:
|
|
51
|
+
Configure hosted MCP via **Settings → Connectors → Add custom connector** (`https://api.muxo.ai/mcp`), or configure the local stdio server (`npx -y @muxoai/cli@latest mcp`, requires Node.js 22+) in `claude_desktop_config.json`.
|
|
20
52
|
|
|
21
|
-
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
-
|
|
25
|
-
-
|
|
53
|
+
## Fast-Path Slugs & Workflows across Muxo's 4 Pillars
|
|
54
|
+
|
|
55
|
+
### 1. Zero-OAuth Instant Tools (`composio_instant` → `execute_read`)
|
|
56
|
+
- Technical SEO Audit: `instant.seo.audit` — `{"url": "https://muxo.ai"}`
|
|
57
|
+
- Multi-Page Web Crawl: `instant.web.crawl` — `{"url": "https://muxo.ai", "maxPages": 5}`
|
|
58
|
+
- Web Page Scrape: `instant.web.scrape` — `{"url": "https://muxo.ai"}`
|
|
59
|
+
- Live Web Search: `instant.web.search` — `{"query": "..."}`
|
|
60
|
+
- DNS Lookup: `instant.dns.lookup` — `{"domain": "muxo.ai", "type": "A"}`
|
|
61
|
+
- GitHub Repo Intel: `instant.github.repo_intel` — `{"owner": "openai", "repo": "openai-node"}`
|
|
62
|
+
- Hacker News Top Stories: `instant.hackernews.top_stories` — `{"limit": 5}`
|
|
63
|
+
|
|
64
|
+
### 2. Composio Connected Apps & OAuth Handoff (`composio_sdk` → `execute_read` / `execute_write`)
|
|
65
|
+
Supports 1,000+ SaaS toolkits dynamically via `search_tools({ query: "...", lane: "composio_sdk", toolkit: "<app>" })` or any `app.<provider>.<action>` slug:
|
|
66
|
+
- **Gmail**: `app.gmail.fetch_emails` (`{"query": "is:inbox", "max_results": 5}`, `execute_read`), `app.gmail.send_email` (`{"recipient_email": "...", "subject": "...", "body": "..."}`, `execute_write`)
|
|
67
|
+
- **GitHub**: `app.github.list_issues` (`{"owner": "...", "repo": "..."}`, `execute_read`), `app.github.create_issue` (`{"owner": "...", "repo": "...", "title": "...", "body": "..."}`, `execute_write`)
|
|
68
|
+
- **Slack**: `app.slack.send_message` (`{"channel": "#general", "text": "..."}`, `execute_write`)
|
|
69
|
+
- **Notion**: `app.notion.search_pages` (`{"query": "..."}`, `execute_read`)
|
|
70
|
+
- **Linear**: `app.linear.create_issue` (`{"team_id": "ENG", "title": "..."}`, `execute_write`)
|
|
71
|
+
- **Google Calendar**: `app.googlecalendar.list_events` (`{"calendar_id": "primary"}`, `execute_read`)
|
|
72
|
+
- **Jira**: `app.jira.create_issue` (`{"project_key": "ENG", "summary": "..."}`, `execute_write`)
|
|
73
|
+
- **HubSpot**: `app.hubspot.search_contacts` (`{"query": "..."}`, `execute_read`)
|
|
74
|
+
- **Discord**: `app.discord.send_message` (`{"channel_id": "...", "content": "..."}`, `execute_write`)
|
|
75
|
+
- **Google Drive**: `app.googledrive.search_files` (`{"query": "..."}`, `execute_read`)
|
|
76
|
+
- **Airtable**: `app.airtable.list_records` (`{"base_id": "...", "table_name": "..."}`, `execute_read`)
|
|
77
|
+
- **Salesforce**: `app.salesforce.query_records` (`{"soql": "SELECT Id, Name FROM Account LIMIT 5"}`, `execute_read`)
|
|
78
|
+
- **External User OAuth Handoff**:
|
|
79
|
+
1. Call `plan_action` for the `app.*` tool (or call `start_connection({ provider: "<provider>" })` directly).
|
|
80
|
+
2. When `authHandoff.required: true` is returned, present `authHandoff.redirectUrl` (or `connection.redirectUrl`) to the user so they can authorize in their browser.
|
|
81
|
+
3. Poll `wait_for_connection({ provider: "<provider>" })` (or `connection_status({ provider: "<provider>" })`) until `ready: true` (`status === "active"`).
|
|
82
|
+
4. Resume the original `plan.id` with `execute_read` or `execute_write`.
|
|
83
|
+
|
|
84
|
+
### 3. Stripe Projects Cloud Infrastructure Provisioning (`stripe_projects` → `execute_provisioning`)
|
|
85
|
+
Provision live cloud databases, caches, auth, sandboxes, and hosting through Muxo's Stripe Projects catalog; connection strings and API keys are automatically encrypted in the AES-256-GCM Muxo Vault (`envVarKeys`):
|
|
86
|
+
- **Databases & Data**: `resource.turso.database`, `resource.neon.postgres`, `resource.supabase.project`, `resource.upstash.redis`, `resource.prisma.database`, `resource.planetscale.postgresql`, `resource.clickhouse.clickhouse`, `resource.chroma.database`
|
|
87
|
+
- **Cloud Hosting & Edge**: `resource.cloudflare.worker`, `resource.vercel.project`, `resource.railway.hosting`, `resource.flyio.app`, `resource.render.static_site`, `resource.netlify.project`, `resource.herenow.hosting`
|
|
88
|
+
- **Auth & Identity**: `resource.clerk.auth`, `resource.workos.auth`, `resource.auth0.client`
|
|
89
|
+
- **AI, Search, Browser & Sandboxes**: `resource.e2b.sandboxes`, `resource.daytona.sandbox`, `resource.browserbase.project`, `resource.steel.browser`, `resource.exa.search`, `resource.firecrawl.api`, `resource.perplexity.api`, `resource.openrouter.api`, `resource.supermemory.memory`, `resource.elevenlabs.tts`
|
|
90
|
+
- **Email, Comms, Observability & Commerce**: `resource.resend.email`, `resource.agentmail.api`, `resource.agentphone.number`, `resource.twilio.email`, `resource.sentry.project`, `resource.posthog.analytics`, `resource.datadog.observability`, `resource.inngest.app`, `resource.cloudinary.media`, `resource.shopify.store`, `resource.spaceship.domain`
|
|
91
|
+
- **Lifecycle Management**: `resource.projects.status` (`execute_read`), `resource.projects.rotate_credentials` (`execute_provisioning`), `resource.projects.deprovision` (`execute_destructive`)
|
|
92
|
+
- Standard input: `{"resource_name": "my-service", "plan": "free"}` → `plan_action` → `execute_provisioning`.
|
|
93
|
+
|
|
94
|
+
### 4. Stripe Billing, Credits & Subscriptions (`stripe_billing` → `execute_financial`)
|
|
95
|
+
- Top Up Prepaid Credits: `billing.credits.topup` — `{"credits": 1000}` (`execute_financial`)
|
|
96
|
+
- Upgrade to Starter Plan ($29/mo, 10,000 actions/mo + 1,000 bonus credits): `billing.subscription.upgrade` — `{"tier": "starter"}` (`execute_financial`)
|
|
97
|
+
- Create Stripe Checkout Session URL: `billing.checkout.create` — `{"kind": "credit_topup", "credits": 1000}` (`execute_financial`)
|
|
98
|
+
|
|
99
|
+
## Safety & Secret Custody
|
|
100
|
+
|
|
101
|
+
- **Single-Execution & Safety Guardrails**: Every mutation or provisioning call creates a governed `plan_*` evaluated against workspace safety rules. Execute each confirmed plan exactly once on its matching risk lane (`execute_read`, `execute_write`, `execute_admin`, `execute_financial`, `execute_provisioning`, `execute_destructive`).
|
|
102
|
+
- **Uncertain Write Boundary**: After a timeout or unclear write/provisioning result, check `get_run` or `get_receipt` before doing anything else.
|
|
103
|
+
- **Secret Custody**: Provisioned infrastructure credentials are encrypted in the Muxo AES-256-GCM Vault and redacted from Workspace Memory. Never expose raw tokens or connection secrets in chat responses.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Muxo"
|
|
3
|
+
short_description: "Governed SaaS, Instant Web/SEO tools, Cloud Infrastructure, and Workspace Memory"
|
|
4
|
+
default_prompt: "Audit https://muxo.ai for technical SEO and crawl its top pages."
|
|
5
|
+
|
|
6
|
+
dependencies:
|
|
7
|
+
tools:
|
|
8
|
+
- type: "mcp"
|
|
9
|
+
value: "muxo"
|
|
10
|
+
description: "Muxo Governed Execution, Instant Web/SEO Tools, Connected Apps, and Cloud Infrastructure MCP Server"
|
|
11
|
+
transport: "streamable_http"
|
|
12
|
+
url: "https://api.muxo.ai/mcp"
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# Local Muxo CLI
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
> **Requirement:** `@muxoai/cli` requires **Node.js 22+** (`node >= 22.0.0`).
|
|
4
|
+
|
|
5
|
+
Prefer this path in terminal, Codex, Claude Code, and Droid environments when the `muxo` command is available. By default, `muxo login --signup` and `muxo mcp` connect to the live hosted workspace at `https://api.muxo.ai`. It supports governed SaaS actions (`app.*`), zero-OAuth Instant tools (`instant.*`), live cloud infrastructure provisioning (`resource.*`), interactive browser OAuth handoffs, and local `.env` credential pulls.
|
|
4
6
|
|
|
5
7
|
## Workflow
|
|
6
8
|
|
|
@@ -47,7 +49,7 @@ Prefer this path in terminal, Codex, Claude Code, and Droid environments when th
|
|
|
47
49
|
muxo env pull --out .env.muxo
|
|
48
50
|
```
|
|
49
51
|
|
|
50
|
-
6. **Recall
|
|
52
|
+
6. **Recall Workspace Memory & verify execution audit records**:
|
|
51
53
|
```bash
|
|
52
54
|
muxo memory "database provisioning"
|
|
53
55
|
muxo governance
|
|
@@ -1,21 +1,27 @@
|
|
|
1
1
|
# Hosted Muxo MCP App
|
|
2
2
|
|
|
3
|
-
Use this path in ChatGPT web/app, when no usable terminal exists, or when the user explicitly requests the hosted MCP surface. The runtime's tool descriptions and schemas are the source of truth.
|
|
3
|
+
Use this path in ChatGPT web/app, when no usable terminal exists, or when the user explicitly requests the hosted MCP surface (`https://api.muxo.ai/mcp`). The runtime's tool descriptions and schemas are the source of truth.
|
|
4
4
|
|
|
5
|
-
## Workflow
|
|
5
|
+
## Workflow across all 4 Pillars
|
|
6
6
|
|
|
7
|
-
1. **Context & Memory Recall**:
|
|
7
|
+
1. **Context & Memory Recall**:
|
|
8
|
+
- Call `get_run_context({ query })` when workspace facts, prior execution history, provisioned resources, or workspace safety status are relevant to the task.
|
|
8
9
|
2. **Discovery & Schema Inspection**:
|
|
9
|
-
- Call `search_tools({ query, lane })` across
|
|
10
|
+
- Call `search_tools({ query, lane, toolkit })` across:
|
|
11
|
+
- **Instant Tools (`lane: "composio_instant"`)**: `instant.seo.audit`, `instant.web.crawl`, `instant.web.scrape`, `instant.web.search`, `instant.dns.lookup`, `instant.github.repo_intel`, `instant.hackernews.top_stories`
|
|
12
|
+
- **Composio Connected Apps (`lane: "composio_sdk"`)**: 1,000+ SaaS apps (`app.github.*`, `app.gmail.*`, `app.slack.*`, `app.notion.*`, `app.linear.*`, `app.googlecalendar.*`, `app.jira.*`, `app.hubspot.*`, `app.discord.*`, `app.googledrive.*`, `app.airtable.*`, `app.salesforce.*`, plus live Composio `/api/v3/tools` search)
|
|
13
|
+
- **Stripe Projects Cloud Infrastructure (`lane: "stripe_projects"`)**: 36+ infrastructure providers (`resource.turso.database`, `resource.neon.postgres`, `resource.supabase.project`, `resource.upstash.redis`, `resource.cloudflare.worker`, `resource.vercel.project`, `resource.prisma.database`, `resource.clerk.auth`, `resource.workos.auth`, `resource.auth0.client`, `resource.planetscale.postgresql`, `resource.clickhouse.clickhouse`, `resource.chroma.database`, `resource.e2b.sandboxes`, `resource.daytona.sandbox`, `resource.browserbase.project`, `resource.steel.browser`, `resource.exa.search`, `resource.firecrawl.api`, `resource.perplexity.api`, `resource.openrouter.api`, `resource.supermemory.memory`, `resource.resend.email`, `resource.sentry.project`, `resource.posthog.analytics`, `resource.datadog.observability`, `resource.inngest.app`, `resource.railway.hosting`, `resource.flyio.app`, `resource.render.static_site`, `resource.netlify.project`, `resource.herenow.hosting`, `resource.cloudinary.media`, `resource.elevenlabs.tts`, `resource.agentmail.api`, `resource.agentphone.number`, `resource.twilio.email`, `resource.shopify.store`, `resource.spaceship.domain`)
|
|
14
|
+
- **Stripe Billing (`lane: "stripe_billing"`)**: `billing.credits.topup`, `billing.subscription.upgrade`, `billing.checkout.create`
|
|
10
15
|
- Call `inspect_tool({ tool_slug })` to inspect the JSON input schema, `riskLevel`, and `creditCost`.
|
|
11
16
|
3. **Governed Planning**:
|
|
12
|
-
- Call `plan_action({ tool_slug, input, reason })` to evaluate policy, scan
|
|
13
|
-
4. **External User OAuth Handoff & Recovery**:
|
|
17
|
+
- Call `plan_action({ tool_slug, input, reason })` to evaluate workspace safety policy, scan inputs, recall workspace context, and receive `plan.id`.
|
|
18
|
+
4. **External User OAuth Handoff & Recovery (`composio_sdk` / `app.*`)**:
|
|
14
19
|
- If `plan_action` returns `authHandoff.required: true` (or a connection is missing), share `authHandoff.redirectUrl` (or call `start_connection({ provider })`) so the user can authorize in their browser.
|
|
15
|
-
- Poll `wait_for_connection({ provider, timeout_seconds: 15 })` until `connected: true` (`status: "active"`), then resume the original `plan.id`.
|
|
16
|
-
5. **Risk-Scoped Execution &
|
|
20
|
+
- Poll `wait_for_connection({ provider, timeout_seconds: 15 })` or `connection_status({ provider })` until `connected: true` (`status: "active"`), then resume the original `plan.id`.
|
|
21
|
+
5. **Risk-Scoped Execution & Audit Verification**:
|
|
17
22
|
- Call the matching execution tool (`execute_read`, `execute_write`, `execute_admin`, `execute_financial`, `execute_provisioning`, or `execute_destructive`) with `{ plan_id }`.
|
|
18
|
-
-
|
|
23
|
+
- For Stripe Projects provisioning (`execute_provisioning`), connection secrets are automatically saved in the encrypted Muxo Vault and returned by key name in `envVarKeys`.
|
|
24
|
+
- Call `get_receipt({ receipt_id })` to verify the cryptographic execution receipt when proof is needed.
|
|
19
25
|
|
|
20
26
|
## Failure boundaries
|
|
21
27
|
|
|
@@ -11,11 +11,17 @@ Welcome to **Muxo** — the unified execution, cloud provisioning, contextual me
|
|
|
11
11
|
|
|
12
12
|
1. If you are in **ChatGPT** or **Codex** with the hosted Muxo MCP server (`https://api.muxo.ai/mcp`) enabled:
|
|
13
13
|
- Call `get_profile` and `get_organization` to confirm your workspace ID, credit balance (`fundingMode: "muxo_funded"`), and active governance policy.
|
|
14
|
-
2. If you are in a terminal environment and prefer the local CLI:
|
|
14
|
+
2. If you are in a terminal environment and prefer the local CLI (requires **Node.js 22+**):
|
|
15
15
|
```bash
|
|
16
16
|
npx -y @muxoai/cli@latest login --signup --name "my-agent"
|
|
17
17
|
muxo whoami
|
|
18
18
|
```
|
|
19
|
+
This CLI-first signup calls `POST https://api.muxo.ai/api/v1/agents/signup` to provision a hosted workspace, 250 starter credits, and `mk_live_*` API key in `~/.muxo/config.json`.
|
|
20
|
+
3. Harness-specific setup:
|
|
21
|
+
- **Claude Code**: `claude plugin marketplace add https://api.muxo.ai/.claude-plugin/marketplace.json && claude plugin install muxo@muxo`
|
|
22
|
+
- **OpenAI Codex**: Add a Git repository or local marketplace directory containing `.agents/plugins/marketplace.json`, or configure `[mcp_servers.muxo]` (`url = "https://api.muxo.ai/mcp"`) in `~/.codex/config.toml`.
|
|
23
|
+
- **Claude Desktop**: Use **Settings → Connectors → Add custom connector** (`https://api.muxo.ai/mcp`) for hosted MCP, or configure `npx -y @muxoai/cli@latest mcp` in `claude_desktop_config.json` for the local stdio server.
|
|
24
|
+
- **ChatGPT**: Open **Plugins → + → Add custom MCP server** and enter `https://api.muxo.ai/mcp` (OAuth registration supports CIMD or DCR).
|
|
19
25
|
|
|
20
26
|
## Step 2: Connect your first SaaS app or run an Instant tool
|
|
21
27
|
|
|
@@ -24,5 +30,5 @@ Welcome to **Muxo** — the unified execution, cloud provisioning, contextual me
|
|
|
24
30
|
- **Connected Apps (`app.*`)** use automatic OAuth handoff:
|
|
25
31
|
- Plan any action (e.g., `app.github.create_issue` or `app.gmail.fetch_emails`) via `plan_action`.
|
|
26
32
|
- If the app is not connected yet, `plan_action` returns `authHandoff.redirectUrl`. Open that link to authorize, then call `wait_for_connection({ provider })` to resume.
|
|
27
|
-
- **Cloud Infrastructure (`resource.*`)** provisions live databases and services
|
|
33
|
+
- **Cloud Infrastructure (`resource.*`)** provisions live databases and services through Muxo Cloud Infrastructure:
|
|
28
34
|
- Provision Turso SQLite (`resource.turso.database`), Neon Postgres (`resource.neon.postgres`), Supabase (`resource.supabase.project`), or Upstash Redis (`resource.upstash.redis`) and pull encrypted `.env` credentials via `muxo env pull`.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Muxo Setup"
|
|
3
|
+
short_description: "Guided onboarding and connection verification for Muxo in ChatGPT and Codex"
|
|
4
|
+
default_prompt: "Check my Muxo profile and organization status."
|
|
5
|
+
|
|
6
|
+
dependencies:
|
|
7
|
+
tools:
|
|
8
|
+
- type: "mcp"
|
|
9
|
+
value: "muxo"
|
|
10
|
+
description: "Muxo Governed Execution, Instant Web/SEO Tools, Connected Apps, and Cloud Infrastructure MCP Server"
|
|
11
|
+
transport: "streamable_http"
|
|
12
|
+
url: "https://api.muxo.ai/mcp"
|