naftiko: 1.0.0-alpha2 info: label: SAP BRIM Subscription Lifecycle Management description: Workflow capability for end-to-end subscription management within the SAP BRIM suite. Covers subscriber onboarding, plan management, lifecycle transitions (activate, suspend, renew, cancel), and billing cycle orchestration. Used by subscription management teams and customer service representatives. tags: - Billing - Revenue Management - SAP - Subscription Management created: '2026-05-02' modified: '2026-05-06' binds: - namespace: env keys: SAP_BRIM_OAUTH_TOKEN: SAP_BRIM_OAUTH_TOKEN capability: consumes: - type: http namespace: sap-brim-subscription-billing baseUri: https://api.sap.com/subscription-billing/v1 description: SAP BRIM Subscription Billing API for subscription lifecycle management. authentication: type: bearer token: '{{SAP_BRIM_OAUTH_TOKEN}}' resources: - name: subscriptions path: /subscriptions description: Subscription lifecycle management. operations: - name: list-subscriptions method: GET description: List subscriptions with optional filtering. inputParameters: - name: customerId in: query type: string required: false description: Filter by customer identifier - name: status in: query type: string required: false description: Filter by subscription status - name: planId in: query type: string required: false description: Filter by subscription plan - name: offset in: query type: integer required: false description: Pagination offset - name: limit in: query type: integer required: false description: Maximum results to return outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-subscription method: POST description: Create a new subscription for a customer. outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: customerId: '{{tools.customerId}}' planId: '{{tools.planId}}' startDate: '{{tools.startDate}}' - name: get-subscription method: GET description: Get details of a specific subscription. inputParameters: - name: subscriptionId in: path type: string required: true description: The subscription identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: suspend-subscription method: POST description: Suspend an active subscription. inputParameters: - name: subscriptionId in: path type: string required: true description: The subscription identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: cancel-subscription method: POST description: Cancel a subscription. inputParameters: - name: subscriptionId in: path type: string required: true description: The subscription identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: plans path: /plans description: Subscription plan catalog management. operations: - name: list-plans method: GET description: List available subscription plans. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-plan method: GET description: Get details of a specific subscription plan. inputParameters: - name: planId in: path type: string required: true description: The plan identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: customers path: /customers description: Customer account management for subscriptions. operations: - name: list-customers method: GET description: List customers with subscriptions. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-customer method: GET description: Get customer account details. inputParameters: - name: customerId in: path type: string required: true description: The customer identifier outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: sap-brim-subscription-lifecycle-api description: Unified REST API for SAP BRIM subscription lifecycle management. resources: - path: /v1/subscriptions name: subscriptions description: Subscription management. operations: - method: GET name: list-subscriptions description: List all subscriptions with filtering. call: sap-brim-subscription-billing.list-subscriptions outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionId} name: subscription description: Single subscription. operations: - method: GET name: get-subscription description: Get subscription details. call: sap-brim-subscription-billing.get-subscription with: subscriptionId: rest.subscriptionId outputParameters: - type: object mapping: $. - path: /v1/plans name: plans description: Subscription plan catalog. operations: - method: GET name: list-plans description: List available subscription plans. call: sap-brim-subscription-billing.list-plans outputParameters: - type: object mapping: $. - path: /v1/customers name: customers description: Customer accounts. operations: - method: GET name: list-customers description: List customers. call: sap-brim-subscription-billing.list-customers outputParameters: - type: object mapping: $. - path: /v1/customers/{customerId} name: customer description: Single customer account. operations: - method: GET name: get-customer description: Get customer account details. call: sap-brim-subscription-billing.get-customer with: customerId: rest.customerId outputParameters: - type: object mapping: $. - type: mcp port: 9080 namespace: sap-brim-subscription-lifecycle-mcp transport: http description: MCP server for AI-assisted SAP BRIM subscription lifecycle management. tools: - name: list-subscriptions description: List customer subscriptions with filtering by status, plan, or customer. hints: readOnly: true openWorld: true call: sap-brim-subscription-billing.list-subscriptions outputParameters: - type: object mapping: $. - name: get-subscription description: Get full lifecycle details of a specific subscription. hints: readOnly: true openWorld: false call: sap-brim-subscription-billing.get-subscription with: subscriptionId: tools.subscriptionId outputParameters: - type: object mapping: $. - name: create-subscription description: Create a new subscription for a customer on a selected plan. hints: readOnly: false idempotent: false call: sap-brim-subscription-billing.create-subscription with: customerId: tools.customerId planId: tools.planId outputParameters: - type: object mapping: $. - name: suspend-subscription description: Suspend an active subscription (e.g., for non-payment). hints: readOnly: false destructive: false idempotent: true call: sap-brim-subscription-billing.suspend-subscription with: subscriptionId: tools.subscriptionId outputParameters: - type: object mapping: $. - name: cancel-subscription description: Cancel and terminate a customer subscription. hints: readOnly: false destructive: true idempotent: true call: sap-brim-subscription-billing.cancel-subscription with: subscriptionId: tools.subscriptionId outputParameters: - type: object mapping: $. - name: list-plans description: List all available subscription plans in the BRIM catalog. hints: readOnly: true openWorld: true call: sap-brim-subscription-billing.list-plans outputParameters: - type: object mapping: $. - name: get-customer description: Get customer account details and subscription history. hints: readOnly: true openWorld: false call: sap-brim-subscription-billing.get-customer with: customerId: tools.customerId outputParameters: - type: object mapping: $.