naftiko: 1.0.0-alpha2 info: label: Paymob Subscriptions API — Plans description: Manage Paymob subscription plans (create, list, update, suspend, resume) for recurring billing. tags: - Paymob - Subscriptions - Recurring created: '2026-05-24' modified: '2026-05-24' binds: - namespace: env keys: PAYMOB_AUTH_TOKEN: PAYMOB_AUTH_TOKEN capability: consumes: - type: http namespace: subscriptions-plans baseUri: https://accept.paymob.com description: Paymob subscription plan consumer. resources: - name: subscription-plans path: /api/acceptance/subscription-plans operations: - name: listsubscriptionplans method: GET description: List subscription plans. outputRawFormat: json outputParameters: - name: result type: array value: $. - name: createsubscriptionplan method: POST description: Create a subscription plan. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true - name: subscription-plan-item path: /api/acceptance/subscription-plans/{subscription_plan_id} operations: - name: updatesubscriptionplan method: PUT description: Update a subscription plan. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: subscription_plan_id in: path type: string required: true - name: body in: body type: object required: true - name: subscription-plan-suspend path: /api/acceptance/subscription-plans/{subscription_plan_id}/suspend operations: - name: suspendsubscriptionplan method: POST description: Suspend a subscription plan. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: subscription_plan_id in: path type: string required: true - name: subscription-plan-resume path: /api/acceptance/subscription-plans/{subscription_plan_id}/resume operations: - name: resumesubscriptionplan method: POST description: Resume a subscription plan. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: subscription_plan_id in: path type: string required: true authentication: type: apikey key: Authorization value: 'Bearer {{env.PAYMOB_AUTH_TOKEN}}' placement: header exposes: - type: mcp namespace: subscriptions-plans-mcp port: 9090 transport: http description: MCP adapter for Paymob subscription plans. tools: - name: paymob-list-subscription-plans description: List Paymob subscription plans. hints: readOnly: true destructive: false idempotent: true call: subscriptions-plans.listsubscriptionplans outputParameters: - type: array mapping: $. - name: paymob-create-subscription-plan description: Create a Paymob subscription plan. hints: readOnly: false destructive: false idempotent: false call: subscriptions-plans.createsubscriptionplan with: body: tools.body outputParameters: - type: object mapping: $.