From prismatic-skills
Prismatic 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.
How this skill is triggered — by the user, by Claude, or both
Slash command
/prismatic-skills:prismatic-apiThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Reference documentation for Prismatic platform operations and the standardized API access hierarchy.
references/api-access-methods.mdreferences/authentication.mdreferences/common-patterns.mdreferences/components.mdreferences/config-variables.mdreferences/connections.mdreferences/customers.mdreferences/execution-and-logs.mdreferences/instances.mdreferences/integrations.mdreferences/pagination-and-filtering.mdReference documentation for Prismatic platform operations and the standardized API access hierarchy.
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.
Use MCP tools when operating within an interactive agent conversation (e.g., Orby). These handle auth, retries, and output formatting automatically.
| MCP Tool | Operation |
|---|---|
mcp__plugin_prismatic-skills_prism__prism_me | Check auth / user profile |
mcp__plugin_prismatic-skills_prism__prism_components_list | List / search components |
mcp__plugin_prismatic-skills_prism__prism_components_init | Initialize new component |
mcp__plugin_prismatic-skills_prism__prism_components_publish | Publish component |
mcp__plugin_prismatic-skills_prism__prism_components_generate_manifest | Generate component manifest |
mcp__plugin_prismatic-skills_prism__prism_integrations_list | List / search integrations |
mcp__plugin_prismatic-skills_prism__prism_integrations_init | Initialize new CNI |
mcp__plugin_prismatic-skills_prism__prism_integrations_import | Import / update CNI |
mcp__plugin_prismatic-skills_prism__prism_integrations_convert | Convert YAML to CNI |
mcp__plugin_prismatic-skills_prism__prism_integrations_flows_list | List flows for integration |
mcp__plugin_prismatic-skills_prism__prism_integrations_flows_test | Test a flow |
mcp__plugin_prismatic-skills_prism__prism_integrations_flows_listen | Listen for webhook payloads |
mcp__plugin_prismatic-skills_prism__prism_integrations_generate_flow | Generate flow boilerplate |
mcp__plugin_prismatic-skills_prism__prism_integrations_generate_config_page | Generate config page |
mcp__plugin_prismatic-skills_prism__prism_integrations_generate_config_var | Generate config variable |
mcp__plugin_prismatic-skills_prism__prism_integrations_add_connection_config_var | Add connection config var |
mcp__plugin_prismatic-skills_prism__prism_integrations_add_datasource_config_var | Add datasource config var |
mcp__plugin_prismatic-skills_prism__prism_install_component_manifest | Install component manifest in CNI |
mcp__plugin_prismatic-skills_prism__prism_install_legacy_component_manifest | Legacy manifest install |
For scripts and operations not covered by MCP tools:
Built-in commands (via prism-retry.ts):
prism integrations:list --extended --output json
prism components:publish --directory ./my-component
prism integrations:import --directory ./my-integration
Custom GraphQL queries (via shared/graphql.ts):
import { graphql, GraphQLError } from "./shared/graphql.js";
const data = graphql('query { customers { nodes { id name } } }');
Or directly via CLI:
prism graphql:query 'query { customers { nodes { id name } } }'
prism graphql:query 'query($id: ID!) { customer(id: $id) { name } }' \
--variables '{"id": "Q3VzdG9tZXI6..."}'
Agent calling directly? → Use MCP tool if available, else `prism` via Bash
Script? → Use shared/graphql.ts for custom queries,
prism-retry.ts for built-in CLI commands
Rule: NEVER create inline GraphQL clients — always use shared/graphql.ts imports.
These are the most frequently needed GraphQL operations. Use these exact queries — don't guess the field names.
| Operation | Reference File | Query/Mutation Name |
|---|---|---|
| Find test instance for an integration | references/instances.md → "Get Test (System) Instance" | instances(integration: $id, isSystem: true) |
| Get execution result with logs | references/execution-and-logs.md → "Get Execution Result with Step Results" | executionResult(id: $id) |
| Publish an integration version | references/integrations.md → "Mutation: Publish Integration" | publishIntegration(input: { id: $id }) |
| Set marketplace availability | references/integrations.md → "Mutation: Set Marketplace Availability" | updateIntegrationMarketplaceConfiguration |
| Clear instance persisted state | references/instances.md → "Mutation: Clear Instance Persisted State" | updateInstance(input: { id: $id, persistedData: "{}" }) |
| Update config variables (safe) | references/instances.md → "Mutation: Update Instance Config Variables" | updateInstanceConfigVariables (NOT updateInstance) |
Read the referenced file section for the full query with all fields. Do not reconstruct queries from memory.
prism must be installed globally (npm install -g @prismatic-io/prism) — never use npx prism--extended --output json--extended and --columns are mutually exclusive — always prefer --extendedgraphql:query: always use --variables flag, never string interpolation{PRISMATIC_URL}/api (default: https://app.prismatic.io/api){"query": "...", "variables": {}}Authorization headerapplication/jsonObtain tokens via Prism CLI. See references/authentication.md.
Quick reference:
prism me:token - Short-lived access tokenprism me:token --type refresh - Long-lived refresh tokenerrors arrayAll collection queries use Relay cursor-based pagination. See references/pagination-and-filtering.md.
query($after: String) {
resources(after: $after, first: 100) {
nodes { id name }
pageInfo { hasNextPage endCursor }
}
}
variableScope: "customer" not "CUSTOMER", managedBy: "org" not "ORG"updateInstanceConfigVariables (partial, safe) not updateInstance (replaces ALL config vars)deployInstance to activateerrors { field messages } alongside resultsreferences/customers.md - Customer CRUD, external IDs, labelsreferences/integrations.md - Integration management, publishing, testingreferences/instances.md - Instance deployment, config variables, lifecyclereferences/components.md - Component queries, action introspection, searchreferences/connections.md - Scoped config vars, customer config vars, connection managementreferences/config-variables.md - Instance config updates, deployment patternsreferences/execution-and-logs.md - Execution results, step results, log queries, replayreferences/common-patterns.md - Batch operations, nested queries, aliased mutations, error handlingreferences/api-access-methods.md - Detailed MCP tool reference, CLI patterns, migration notesnpx claudepluginhub prismatic-io/prismatic-skills --plugin prismatic-skillsReference documentation for embedding Prismatic's integration marketplace and workflow builder in a web application. Covers JWT authentication, the embedded SDK, marketplace and workflow embedding, theming, i18n, additional screens, and custom marketplace UI. Use when the user asks about embedding Prismatic, JWT tokens for embedded apps, marketplace iframes, workflow builder integration, custom marketplace UI, or frontend SDK setup.
Automates Prisma operations via Composio's Prisma toolkit through Rube MCP. Discovers tools, manages connections, and executes Prisma workflows.
Plans third-party integrations covering OAuth, webhooks, rate limits, error handling, and testing. Use when integrating with external services like Stripe, Google, or Slack.