Mailchimp · Capability

Mailchimp Marketing API — Landing

Mailchimp Marketing API — Landing. 10 operations. Lead operation: Mailchimp List Landing Pages. Self-contained Naftiko capability covering one Mailchimp business surface.

Run with Naftiko MailchimpLanding

What You Can Do

GET
Getalllandingpages — Mailchimp List Landing Pages
/v1/landing-pages
POST
Postalllandingpages — Mailchimp Add Landing Page
/v1/landing-pages
GET
Getlandingpageid — Mailchimp Get Landing Page Info
/v1/landing-pages/{page-id}
PATCH
Patchlandingpageid — Mailchimp Update Landing Page
/v1/landing-pages/{page-id}
DELETE
Deletelandingpageid — Mailchimp Delete Landing Page
/v1/landing-pages/{page-id}
POST
Postlandingpageidactionspublish — Mailchimp Publish Landing Page
/v1/landing-pages/{page-id}/actions/publish
POST
Postlandingpageidactionsunpublish — Mailchimp Unpublish Landing Page
/v1/landing-pages/{page-id}/actions/unpublish
GET
Getlandingpageidcontent — Mailchimp Get Landing Page Content
/v1/landing-pages/{page-id}/content
GET
Getreportinglandingpages — Mailchimp List Landing Pages Reports
/v1/reporting/landing-pages
GET
Getreportinglandingpagesid — Mailchimp Get Landing Page Report
/v1/reporting/landing-pages/{outreach-id}

MCP Tools

mailchimp-list-landing-pages

Mailchimp List Landing Pages

read-only idempotent
mailchimp-add-landing-page

Mailchimp Add Landing Page

mailchimp-get-landing-page-info

Mailchimp Get Landing Page Info

read-only idempotent
mailchimp-update-landing-page

Mailchimp Update Landing Page

idempotent
mailchimp-delete-landing-page

Mailchimp Delete Landing Page

idempotent
mailchimp-publish-landing-page

Mailchimp Publish Landing Page

mailchimp-unpublish-landing-page

Mailchimp Unpublish Landing Page

mailchimp-get-landing-page-content

Mailchimp Get Landing Page Content

read-only idempotent
mailchimp-list-landing-pages-reports

Mailchimp List Landing Pages Reports

read-only idempotent
mailchimp-get-landing-page-report

Mailchimp Get Landing Page Report

read-only idempotent

Capability Spec

marketing-landing.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Mailchimp Marketing API  — Landing
  description: 'Mailchimp Marketing API  — Landing. 10 operations. Lead operation: Mailchimp List Landing Pages. Self-contained
    Naftiko capability covering one Mailchimp business surface.'
  tags:
  - Mailchimp
  - Landing
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MAILCHIMP_API_KEY: MAILCHIMP_API_KEY
capability:
  consumes:
  - type: http
    namespace: marketing-landing
    baseUri: https://server.api.mailchimp.com/3.0
    description: Mailchimp Marketing API  — Landing 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-landing-rest
    port: 8080
    description: REST adapter for Mailchimp Marketing API  — Landing. 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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.getreportinglandingpagesid
        with:
          fields: rest.fields
          outreach_id: rest.outreach_id
          exclude_fields: rest.exclude_fields
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: marketing-landing-mcp
    port: 9090
    transport: http
    description: MCP adapter for Mailchimp Marketing API  — Landing. 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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.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-landing.getreportinglandingpagesid
      with:
        fields: tools.fields
        outreach_id: tools.outreach_id
        exclude_fields: tools.exclude_fields
      outputParameters:
      - type: object
        mapping: $.