generated: '2026-09-05' method: generated source: >- openapi/cloudchipr-enterprise-api-openapi.yml (26 operations) + conventions/cloudchipr-conventions.yml + errors/cloudchipr-problem-types.yml + data-model/cloudchipr-data-model.yml + mcp/cloudchipr-tool-crosswalk.yml provider: CloudChipr providerId: cloudchipr summary: >- Four packaged Agent Skills, one per marquee flow in the CloudChipr Enterprise API. Every operationId referenced was grepped out of the captured spec - none is invented. Each skill also states its MCP equivalent (or its absence), because the two surfaces diverge: two of these flows are richer on MCP and two exist only on REST. provider_published_skills: found: false probed: - path: /skills/ host: docs.cloudchipr.com result: not published - path: /AGENTS.md host: cloudchipr.com result: not published checked: '2026-09-05' note: CloudChipr publishes no Agent Skills or AGENTS.md of its own; these are generated by API Evangelist. skills: - name: cloudchipr-cost-breakdown file: cloudchipr-cost-breakdown.md summary: Break down multi-cloud spend, discovering valid groupings and filter values first and validating the query before running it. operations: [get-resource-explorer-possible-groupings, get-resource-explorer-possible-filters, get-resource-explorer-filter-values, validate-billing-explorer, billingDataByOrganisation] writes: false mcp_equivalent: [get_billing_groupings, get_billing_filters, get_billing_filter_values, validate_billing_query, get_billing_data] - name: cloudchipr-savings-opportunities file: cloudchipr-savings-opportunities.md summary: Find and triage cost-saving opportunities and join each one back to its account and live resource. operations: [get-accounts, filterSavingsOpportunities, lookupResource, get-accounts-accountId] writes: false mcp_equivalent: [get_cloud_accounts, get_cloud_account, filter_opportunities, get_opportunity, get_savings_summary] mcp_note: The MCP surface is richer here - get_savings_summary, get_opportunity and saved views have no REST equivalent. - name: cloudchipr-custom-cost-ingestion file: cloudchipr-custom-cost-ingestion.md summary: Create a custom data source and stream NDJSON rows into it - the only replay-protected write in the API, and one with no undo. operations: [listCustomSources, listTelemetries, createDataSource, ingestCustomData] writes: true reversible: false idempotent: partial idempotency_note: 'ingestCustomData requires an Idempotency-Key header; createDataSource has none and there is no delete operation.' mcp_equivalent: [] mcp_note: REST-only. The MCP server is read-only. - name: cloudchipr-budget-monitoring file: cloudchipr-budget-monitoring.md summary: Read budgets, thresholds and period history to report whether spend is tracking to plan. operations: [listBudgets, getBudget, getBudgetHistory] writes: false mcp_equivalent: [] mcp_note: REST-only. Budgets are not exposed as MCP tools. shared_rules: auth: 'x-api-key header on every request (openapi securityScheme ApiKey).' pagination: 'None anywhere in the API. Narrow the filter tree instead of paging.' rate_limits: 'None published, no 429 declared, no Retry-After. Pace conservatively.' errors: 'Bespoke {"message": string}, not RFC 9457. `message` is optional - handle its absence.' dry_run: 'POST /billing-explorer/validate (204 = valid) is the only rehearsal primitive.' reversibility: 'No reversal operation exists for any of the three writes. Treat every write as one-way.'