Mailchimp · Capability

Mailchimp Marketing API — Templates

Mailchimp Marketing API — Templates. 6 operations. Lead operation: Mailchimp List Templates. Self-contained Naftiko capability covering one Mailchimp business surface.

Run with Naftiko MailchimpTemplates

What You Can Do

GET
Gettemplates — Mailchimp List Templates
/v1/templates
POST
Posttemplates — Mailchimp Add Template
/v1/templates
GET
Gettemplatesid — Mailchimp Get Template Info
/v1/templates/{template-id}
PATCH
Patchtemplatesid — Mailchimp Update Template
/v1/templates/{template-id}
DELETE
Deletetemplatesid — Mailchimp Delete Template
/v1/templates/{template-id}
GET
Gettemplatesiddefaultcontent — Mailchimp View Default Content
/v1/templates/{template-id}/default-content

MCP Tools

mailchimp-list-templates

Mailchimp List Templates

read-only idempotent
mailchimp-add-template

Mailchimp Add Template

mailchimp-get-template-info

Mailchimp Get Template Info

read-only idempotent
mailchimp-update-template

Mailchimp Update Template

idempotent
mailchimp-delete-template

Mailchimp Delete Template

idempotent
mailchimp-view-default-content

Mailchimp View Default Content

read-only idempotent

Capability Spec

marketing-templates.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Mailchimp Marketing API  — Templates
  description: 'Mailchimp Marketing API  — Templates. 6 operations. Lead operation: Mailchimp List Templates. Self-contained
    Naftiko capability covering one Mailchimp business surface.'
  tags:
  - Mailchimp
  - Templates
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MAILCHIMP_API_KEY: MAILCHIMP_API_KEY
capability:
  consumes:
  - type: http
    namespace: marketing-templates
    baseUri: https://server.api.mailchimp.com/3.0
    description: Mailchimp Marketing API  — Templates business capability. Self-contained, no shared references.
    resources:
    - name: templates
      path: /templates
      operations:
      - name: gettemplates
        method: GET
        description: Mailchimp List Templates
        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: created_by
          in: query
          type: string
          description: The Mailchimp account user who created the template.
        - name: since_date_created
          in: query
          type: string
          description: 'Restrict the response to templates created after the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.'
        - name: before_date_created
          in: query
          type: string
          description: 'Restrict the response to templates created before the set date. Uses ISO 8601 time format: 2015-10-21T15:41:36+00:00.'
        - name: type
          in: query
          type: string
          description: Limit results based on template type.
        - name: category
          in: query
          type: string
          description: Limit results based on category.
        - name: folder_id
          in: query
          type: string
          description: The unique folder id.
        - name: sort_field
          in: query
          type: string
          description: Returns user templates sorted by the specified field.
        - name: content_type
          in: query
          type: string
          description: Limit results based on how the template's content is put together. Only templates of type `user` can
            be filtered by `content_type`. If you want to retrieve save
        - name: sort_dir
          in: query
          type: string
          description: Determines the order direction for sorted results.
      - name: posttemplates
        method: POST
        description: Mailchimp Add Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
    - name: templates-template_id
      path: /templates/{template_id}
      operations:
      - name: gettemplatesid
        method: GET
        description: Mailchimp Get Template 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: template_id
          in: path
          type: string
          description: The unique id for the template.
          required: true
      - name: patchtemplatesid
        method: PATCH
        description: Mailchimp Update Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: template_id
          in: path
          type: string
          description: The unique id for the template.
          required: true
        - name: body
          in: body
          type: object
          required: true
      - name: deletetemplatesid
        method: DELETE
        description: Mailchimp Delete Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: template_id
          in: path
          type: string
          description: The unique id for the template.
          required: true
    - name: templates-template_id-default-content
      path: /templates/{template_id}/default-content
      operations:
      - name: gettemplatesiddefaultcontent
        method: GET
        description: Mailchimp View Default 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: template_id
          in: path
          type: string
          description: The unique id for the template.
          required: true
  exposes:
  - type: rest
    namespace: marketing-templates-rest
    port: 8080
    description: REST adapter for Mailchimp Marketing API  — Templates. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/templates
      name: templates
      description: REST surface for templates.
      operations:
      - method: GET
        name: gettemplates
        description: Mailchimp List Templates
        call: marketing-templates.gettemplates
        with:
          fields: rest.fields
          exclude_fields: rest.exclude_fields
          count: rest.count
          offset: rest.offset
          created_by: rest.created_by
          since_date_created: rest.since_date_created
          before_date_created: rest.before_date_created
          type: rest.type
          category: rest.category
          folder_id: rest.folder_id
          sort_field: rest.sort_field
          content_type: rest.content_type
          sort_dir: rest.sort_dir
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: posttemplates
        description: Mailchimp Add Template
        call: marketing-templates.posttemplates
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/templates/{template-id}
      name: templates-template-id
      description: REST surface for templates-template_id.
      operations:
      - method: GET
        name: gettemplatesid
        description: Mailchimp Get Template Info
        call: marketing-templates.gettemplatesid
        with:
          fields: rest.fields
          exclude_fields: rest.exclude_fields
          template_id: rest.template_id
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: patchtemplatesid
        description: Mailchimp Update Template
        call: marketing-templates.patchtemplatesid
        with:
          template_id: rest.template_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletetemplatesid
        description: Mailchimp Delete Template
        call: marketing-templates.deletetemplatesid
        with:
          template_id: rest.template_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/templates/{template-id}/default-content
      name: templates-template-id-default-content
      description: REST surface for templates-template_id-default-content.
      operations:
      - method: GET
        name: gettemplatesiddefaultcontent
        description: Mailchimp View Default Content
        call: marketing-templates.gettemplatesiddefaultcontent
        with:
          fields: rest.fields
          exclude_fields: rest.exclude_fields
          template_id: rest.template_id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: marketing-templates-mcp
    port: 9090
    transport: http
    description: MCP adapter for Mailchimp Marketing API  — Templates. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: mailchimp-list-templates
      description: Mailchimp List Templates
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: marketing-templates.gettemplates
      with:
        fields: tools.fields
        exclude_fields: tools.exclude_fields
        count: tools.count
        offset: tools.offset
        created_by: tools.created_by
        since_date_created: tools.since_date_created
        before_date_created: tools.before_date_created
        type: tools.type
        category: tools.category
        folder_id: tools.folder_id
        sort_field: tools.sort_field
        content_type: tools.content_type
        sort_dir: tools.sort_dir
      outputParameters:
      - type: object
        mapping: $.
    - name: mailchimp-add-template
      description: Mailchimp Add Template
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: marketing-templates.posttemplates
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: mailchimp-get-template-info
      description: Mailchimp Get Template Info
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: marketing-templates.gettemplatesid
      with:
        fields: tools.fields
        exclude_fields: tools.exclude_fields
        template_id: tools.template_id
      outputParameters:
      - type: object
        mapping: $.
    - name: mailchimp-update-template
      description: Mailchimp Update Template
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: marketing-templates.patchtemplatesid
      with:
        template_id: tools.template_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: mailchimp-delete-template
      description: Mailchimp Delete Template
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: marketing-templates.deletetemplatesid
      with:
        template_id: tools.template_id
      outputParameters:
      - type: object
        mapping: $.
    - name: mailchimp-view-default-content
      description: Mailchimp View Default Content
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: marketing-templates.gettemplatesiddefaultcontent
      with:
        fields: tools.fields
        exclude_fields: tools.exclude_fields
        template_id: tools.template_id
      outputParameters:
      - type: object
        mapping: $.