$npx -y skills add prismatic-io/prismatic-skills --skill prismatic-apiPrismatic API access patterns and GraphQL reference. Covers the two-tier access hierarchy (MCP tools → Prism CLI), CLI usage rules, GraphQL query patterns, pagination, authentication, and managing platform resources programmatically.
| 1 | # Prismatic API |
| 2 | |
| 3 | Reference documentation for Prismatic platform operations and the standardized API access hierarchy. |
| 4 | |
| 5 | ## API Access Method Hierarchy |
| 6 | |
| 7 | Prismatic API access follows a **two-tier priority system** for interactive agents (e.g., Orby). Builder agents (cni-builder, component-builder) use their own script-based pipelines and should not use MCP tools directly — see their agent docs for details. |
| 8 | |
| 9 | ### Priority 1: MCP Tools (Interactive Agents Only) |
| 10 | |
| 11 | Use MCP tools when operating within an interactive agent conversation (e.g., Orby). These handle auth, retries, and output formatting automatically. |
| 12 | |
| 13 | | MCP Tool | Operation | |
| 14 | |----------|-----------| |
| 15 | | `mcp__plugin_prismatic-skills_prism__prism_me` | Check auth / user profile | |
| 16 | | `mcp__plugin_prismatic-skills_prism__prism_components_list` | List / search components | |
| 17 | | `mcp__plugin_prismatic-skills_prism__prism_components_init` | Initialize new component | |
| 18 | | `mcp__plugin_prismatic-skills_prism__prism_components_publish` | Publish component | |
| 19 | | `mcp__plugin_prismatic-skills_prism__prism_components_generate_manifest` | Generate component manifest | |
| 20 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_list` | List / search integrations | |
| 21 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_init` | Initialize new CNI | |
| 22 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_import` | Import / update CNI | |
| 23 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_convert` | Convert YAML to CNI | |
| 24 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_flows_list` | List flows for integration | |
| 25 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_flows_test` | Test a flow | |
| 26 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_flows_listen` | Listen for webhook payloads | |
| 27 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_generate_flow` | Generate flow boilerplate | |
| 28 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_generate_config_page` | Generate config page | |
| 29 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_generate_config_var` | Generate config variable | |
| 30 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_add_connection_config_var` | Add connection config var | |
| 31 | | `mcp__plugin_prismatic-skills_prism__prism_integrations_add_datasource_config_var` | Add datasource config var | |
| 32 | | `mcp__plugin_prismatic-skills_prism__prism_install_component_manifest` | Install component manifest in CNI | |
| 33 | | `mcp__plugin_prismatic-skills_prism__prism_install_legacy_component_manifest` | Legacy manifest install | |
| 34 | |
| 35 | ### Priority 2: Prism CLI (Scripts + Agents) |
| 36 | |
| 37 | For scripts and operations not covered by MCP tools: |
| 38 | |
| 39 | **Built-in commands** (via `prism-retry.ts`): |
| 40 | ```bash |
| 41 | prism integrations:list --extended --output json |
| 42 | prism components:publish --directory ./my-component |
| 43 | prism integrations:import --directory ./my-integration |
| 44 | ``` |
| 45 | |
| 46 | **Custom GraphQL queries** (via `shared/graphql.ts`): |
| 47 | ```typescript |
| 48 | import { graphql, GraphQLError } from "./shared/graphql.js"; |
| 49 | |
| 50 | const data = graphql('query { customers { nodes { id name } } }'); |
| 51 | ``` |
| 52 | |
| 53 | Or directly via CLI: |
| 54 | ```bash |
| 55 | prism graphql:query 'query { customers { nodes { id name } } }' |
| 56 | prism graphql:query 'query($id: ID!) { customer(id: $id) { name } }' \ |
| 57 | --variables '{"id": "Q3VzdG9tZXI6..."}' |
| 58 | ``` |
| 59 | |
| 60 | ### Decision Tree |
| 61 | |
| 62 | ``` |
| 63 | Agent calling directly? → Use MCP tool if available, else `prism` via Bash |
| 64 | Script? → Use shared/graphql.ts for custom queries, |
| 65 | prism-retry.ts for built-in CLI commands |
| 66 | ``` |
| 67 | |
| 68 | **Rule: NEVER create inline GraphQL clients** — always use `shared/graphql.ts` imports. |
| 69 | |
| 70 | ## Common Operations Cheat Sheet |
| 71 | |
| 72 | These are the most frequently needed GraphQL operations. Use these exact queries — don't guess the field names. |
| 73 | |
| 74 | | Operation | Reference File | Query/Mutation Name | |
| 75 | |-----------|---------------|-------------------| |
| 76 | | Find test instance for an integration | `references/instances.md` → "Get Test (System) Instance" | `instances(integration: $id, isSystem: true)` | |
| 77 | | Get execution result with logs | `references/execution-and-logs.md` → "Get Execution Result with Step Results" | `executionResult(id: $id)` | |
| 78 | | Publish an integration version | `references/integrations.md` → "Mutation: Publish Integration" | `publishIntegration(input: { id: $id })` | |
| 79 | | Set marketplace availability | `references/integrations.md` → "Mutation: Set Marketplace Availability" | `updateIntegrationMarketplaceConfiguration` | |
| 80 | | Clear instance persisted state | `references/instances.md` → "Mutation: Clear Instance Persisted State" | `updateInstance(input: { id: $id, persistedData: "{}" })` | |
| 81 | | Update config variables (safe) | `references/instances.md` → "Mutation: Update Insta |