naftiko: 1.0.0-alpha2 info: label: Mailchimp Marketing API — Pages description: 'Mailchimp Marketing API — Pages. 10 operations. Lead operation: Mailchimp List Landing Pages. Self-contained Naftiko capability covering one Mailchimp business surface.' tags: - Mailchimp - Pages created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MAILCHIMP_API_KEY: MAILCHIMP_API_KEY capability: consumes: - type: http namespace: marketing-pages baseUri: https://server.api.mailchimp.com/3.0 description: Mailchimp Marketing API — Pages business capability. Self-contained, no shared references. resources: - name: landing-pages path: /landing-pages operations: - name: getalllandingpages method: GET description: Mailchimp List Landing Pages outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sort_dir in: query type: string description: Determines the order direction for sorted results. - name: sort_field in: query type: string description: Returns files sorted by the specified field. - name: fields in: query type: array description: A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation. - name: exclude_fields in: query type: array description: A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation. - name: count in: query type: integer description: The number of records to return. Default value is 10. Maximum value is 1000 - name: postalllandingpages method: POST description: Mailchimp Add Landing Page outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true - name: use_default_list in: query type: boolean description: Will create the Landing Page using the account's Default List instead of requiring a list_id. - name: landing-pages-page_id path: /landing-pages/{page_id} operations: - name: getlandingpageid method: GET description: Mailchimp Get Landing Page Info outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: fields in: query type: array description: A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation. - name: exclude_fields in: query type: array description: A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation. - name: page_id in: path type: string description: The unique id for the page. required: true - name: patchlandingpageid method: PATCH description: Mailchimp Update Landing Page outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page_id in: path type: string description: The unique id for the page. required: true - name: body in: body type: object required: true - name: deletelandingpageid method: DELETE description: Mailchimp Delete Landing Page outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page_id in: path type: string description: The unique id for the page. required: true - name: landing-pages-page_id-actions-publish path: /landing-pages/{page_id}/actions/publish operations: - name: postlandingpageidactionspublish method: POST description: Mailchimp Publish Landing Page outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page_id in: path type: string description: The unique id for the page. required: true - name: landing-pages-page_id-actions-unpublish path: /landing-pages/{page_id}/actions/unpublish operations: - name: postlandingpageidactionsunpublish method: POST description: Mailchimp Unpublish Landing Page outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page_id in: path type: string description: The unique id for the page. required: true - name: landing-pages-page_id-content path: /landing-pages/{page_id}/content operations: - name: getlandingpageidcontent method: GET description: Mailchimp Get Landing Page Content outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: fields in: query type: array description: A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation. - name: exclude_fields in: query type: array description: A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation. - name: page_id in: path type: string description: The unique id for the page. required: true - name: reporting-landing-pages path: /reporting/landing-pages operations: - name: getreportinglandingpages method: GET description: Mailchimp List Landing Pages Reports outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: fields in: query type: array description: A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation. - name: exclude_fields in: query type: array description: A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation. - name: count in: query type: integer description: The number of records to return. Default value is 10. Maximum value is 1000 - name: offset in: query type: integer description: Used for [pagination](https://mailchimp.com/developer/marketing/docs/methods-parameters/#pagination), this it the number of records from a collection to skip. D - name: reporting-landing-pages-outreach_id path: /reporting/landing-pages/{outreach_id} operations: - name: getreportinglandingpagesid method: GET description: Mailchimp Get Landing Page Report outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: fields in: query type: array description: A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation. - name: outreach_id in: path type: string description: The outreach id. required: true - name: exclude_fields in: query type: array description: A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation. exposes: - type: rest namespace: marketing-pages-rest port: 8080 description: REST adapter for Mailchimp Marketing API — Pages. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/landing-pages name: landing-pages description: REST surface for landing-pages. operations: - method: GET name: getalllandingpages description: Mailchimp List Landing Pages call: marketing-pages.getalllandingpages with: sort_dir: rest.sort_dir sort_field: rest.sort_field fields: rest.fields exclude_fields: rest.exclude_fields count: rest.count outputParameters: - type: object mapping: $. - method: POST name: postalllandingpages description: Mailchimp Add Landing Page call: marketing-pages.postalllandingpages with: body: rest.body use_default_list: rest.use_default_list outputParameters: - type: object mapping: $. - path: /v1/landing-pages/{page-id} name: landing-pages-page-id description: REST surface for landing-pages-page_id. operations: - method: GET name: getlandingpageid description: Mailchimp Get Landing Page Info call: marketing-pages.getlandingpageid with: fields: rest.fields exclude_fields: rest.exclude_fields page_id: rest.page_id outputParameters: - type: object mapping: $. - method: PATCH name: patchlandingpageid description: Mailchimp Update Landing Page call: marketing-pages.patchlandingpageid with: page_id: rest.page_id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletelandingpageid description: Mailchimp Delete Landing Page call: marketing-pages.deletelandingpageid with: page_id: rest.page_id outputParameters: - type: object mapping: $. - path: /v1/landing-pages/{page-id}/actions/publish name: landing-pages-page-id-actions-publish description: REST surface for landing-pages-page_id-actions-publish. operations: - method: POST name: postlandingpageidactionspublish description: Mailchimp Publish Landing Page call: marketing-pages.postlandingpageidactionspublish with: page_id: rest.page_id outputParameters: - type: object mapping: $. - path: /v1/landing-pages/{page-id}/actions/unpublish name: landing-pages-page-id-actions-unpublish description: REST surface for landing-pages-page_id-actions-unpublish. operations: - method: POST name: postlandingpageidactionsunpublish description: Mailchimp Unpublish Landing Page call: marketing-pages.postlandingpageidactionsunpublish with: page_id: rest.page_id outputParameters: - type: object mapping: $. - path: /v1/landing-pages/{page-id}/content name: landing-pages-page-id-content description: REST surface for landing-pages-page_id-content. operations: - method: GET name: getlandingpageidcontent description: Mailchimp Get Landing Page Content call: marketing-pages.getlandingpageidcontent with: fields: rest.fields exclude_fields: rest.exclude_fields page_id: rest.page_id outputParameters: - type: object mapping: $. - path: /v1/reporting/landing-pages name: reporting-landing-pages description: REST surface for reporting-landing-pages. operations: - method: GET name: getreportinglandingpages description: Mailchimp List Landing Pages Reports call: marketing-pages.getreportinglandingpages with: fields: rest.fields exclude_fields: rest.exclude_fields count: rest.count offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/reporting/landing-pages/{outreach-id} name: reporting-landing-pages-outreach-id description: REST surface for reporting-landing-pages-outreach_id. operations: - method: GET name: getreportinglandingpagesid description: Mailchimp Get Landing Page Report call: marketing-pages.getreportinglandingpagesid with: fields: rest.fields outreach_id: rest.outreach_id exclude_fields: rest.exclude_fields outputParameters: - type: object mapping: $. - type: mcp namespace: marketing-pages-mcp port: 9090 transport: http description: MCP adapter for Mailchimp Marketing API — Pages. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: mailchimp-list-landing-pages description: Mailchimp List Landing Pages hints: readOnly: true destructive: false idempotent: true call: marketing-pages.getalllandingpages with: sort_dir: tools.sort_dir sort_field: tools.sort_field fields: tools.fields exclude_fields: tools.exclude_fields count: tools.count outputParameters: - type: object mapping: $. - name: mailchimp-add-landing-page description: Mailchimp Add Landing Page hints: readOnly: false destructive: false idempotent: false call: marketing-pages.postalllandingpages with: body: tools.body use_default_list: tools.use_default_list outputParameters: - type: object mapping: $. - name: mailchimp-get-landing-page-info description: Mailchimp Get Landing Page Info hints: readOnly: true destructive: false idempotent: true call: marketing-pages.getlandingpageid with: fields: tools.fields exclude_fields: tools.exclude_fields page_id: tools.page_id outputParameters: - type: object mapping: $. - name: mailchimp-update-landing-page description: Mailchimp Update Landing Page hints: readOnly: false destructive: false idempotent: true call: marketing-pages.patchlandingpageid with: page_id: tools.page_id body: tools.body outputParameters: - type: object mapping: $. - name: mailchimp-delete-landing-page description: Mailchimp Delete Landing Page hints: readOnly: false destructive: true idempotent: true call: marketing-pages.deletelandingpageid with: page_id: tools.page_id outputParameters: - type: object mapping: $. - name: mailchimp-publish-landing-page description: Mailchimp Publish Landing Page hints: readOnly: false destructive: false idempotent: false call: marketing-pages.postlandingpageidactionspublish with: page_id: tools.page_id outputParameters: - type: object mapping: $. - name: mailchimp-unpublish-landing-page description: Mailchimp Unpublish Landing Page hints: readOnly: false destructive: false idempotent: false call: marketing-pages.postlandingpageidactionsunpublish with: page_id: tools.page_id outputParameters: - type: object mapping: $. - name: mailchimp-get-landing-page-content description: Mailchimp Get Landing Page Content hints: readOnly: true destructive: false idempotent: true call: marketing-pages.getlandingpageidcontent with: fields: tools.fields exclude_fields: tools.exclude_fields page_id: tools.page_id outputParameters: - type: object mapping: $. - name: mailchimp-list-landing-pages-reports description: Mailchimp List Landing Pages Reports hints: readOnly: true destructive: false idempotent: true call: marketing-pages.getreportinglandingpages with: fields: tools.fields exclude_fields: tools.exclude_fields count: tools.count offset: tools.offset outputParameters: - type: object mapping: $. - name: mailchimp-get-landing-page-report description: Mailchimp Get Landing Page Report hints: readOnly: true destructive: false idempotent: true call: marketing-pages.getreportinglandingpagesid with: fields: tools.fields outreach_id: tools.outreach_id exclude_fields: tools.exclude_fields outputParameters: - type: object mapping: $.