Nuclei · Capability

PDCP API — configurations

PDCP API — configurations. 14 operations. Lead operation: Get Configs List. Self-contained Naftiko capability covering one Nuclei business surface.

Run with Naftiko Nucleiconfigurations

What You Can Do

GET
Getv1scansconfig — Get Configs List
/v1/v1/scans/config
POST
Postv1scansconfig — Add Config
/v1/v1/scans/config
GET
Getscansconfigexclude — Get excluded templates
/v1/v1/scans/config/exclude
POST
Postscansconfigexclude — Add excluded templates and targets
/v1/v1/scans/config/exclude
DELETE
Deletescansconfigexclude — Delete excluded templates or targets by ids
/v1/v1/scans/config/exclude
GET
Getv1scansconfigseverity — Get custom severity mappings
/v1/v1/scans/config/severity
POST
Postv1scansconfigseverity — Add custom severity mapping
/v1/v1/scans/config/severity
DELETE
Deletev1scansconfigseverity — Delete custom severity mapping
/v1/v1/scans/config/severity
POST
Postv1scansconfigverify — Verify Config
/v1/v1/scans/config/verify
POST
Postv1scansconfigverifycontents — Get Verify Config Contents
/v1/v1/scans/config/verify/contents
GET
Getv1scansconfigconfigid — Get Config
/v1/v1/scans/config/{config-id}
PATCH
Patchv1scansconfigconfigid — Update Config
/v1/v1/scans/config/{config-id}
DELETE
Deletev1scansconfigconfigid — Delete Config
/v1/v1/scans/config/{config-id}
PATCH
Patchv1scansconfigconfigidseverity — Modify custom severity mapping
/v1/v1/scans/config/{config-id}/severity

MCP Tools

get-configs-list

Get Configs List

read-only idempotent
add-config

Add Config

get-excluded-templates

Get excluded templates

read-only idempotent
add-excluded-templates-and-targets

Add excluded templates and targets

delete-excluded-templates-targets-ids

Delete excluded templates or targets by ids

idempotent
get-custom-severity-mappings

Get custom severity mappings

read-only idempotent
add-custom-severity-mapping

Add custom severity mapping

delete-custom-severity-mapping

Delete custom severity mapping

idempotent
verify-config

Verify Config

get-verify-config-contents

Get Verify Config Contents

read-only
get-config

Get Config

read-only idempotent
update-config

Update Config

idempotent
delete-config

Delete Config

idempotent
modify-custom-severity-mapping

Modify custom severity mapping

idempotent

Capability Spec

nuclei-configurations.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: PDCP API — configurations
  description: 'PDCP API — configurations. 14 operations. Lead operation: Get Configs List. Self-contained Naftiko capability
    covering one Nuclei business surface.'
  tags:
  - Nuclei
  - configurations
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    NUCLEI_API_KEY: NUCLEI_API_KEY
capability:
  consumes:
  - type: http
    namespace: nuclei-configurations
    baseUri: https://api.projectdiscovery.io
    description: PDCP API — configurations business capability. Self-contained, no shared references.
    resources:
    - name: v1-scans-config
      path: /v1/scans/config
      operations:
      - name: getv1scansconfig
        method: GET
        description: Get Configs List
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: type
          in: query
          type: string
          description: filter by the type of config
        - name: search
          in: query
          type: string
          description: search by config name
        - name: limit
          in: query
          type: integer
          description: The numbers of items to return
        - name: offset
          in: query
          type: integer
          description: The number of items to skip before starting to collect the result set
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
      - name: postv1scansconfig
        method: POST
        description: Add Config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-scans-config-exclude
      path: /v1/scans/config/exclude
      operations:
      - name: getscansconfigexclude
        method: GET
        description: Get excluded templates
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
      - name: postscansconfigexclude
        method: POST
        description: Add excluded templates and targets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deletescansconfigexclude
        method: DELETE
        description: Delete excluded templates or targets by ids
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-scans-config-severity
      path: /v1/scans/config/severity
      operations:
      - name: getv1scansconfigseverity
        method: GET
        description: Get custom severity mappings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
      - name: postv1scansconfigseverity
        method: POST
        description: Add custom severity mapping
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deletev1scansconfigseverity
        method: DELETE
        description: Delete custom severity mapping
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-scans-config-verify
      path: /v1/scans/config/verify
      operations:
      - name: postv1scansconfigverify
        method: POST
        description: Verify Config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-scans-config-verify-contents
      path: /v1/scans/config/verify/contents
      operations:
      - name: postv1scansconfigverifycontents
        method: POST
        description: Get Verify Config Contents
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: project_id
          in: query
          type: string
          description: Jira Project ID to fetch details for
        - name: team_id
          in: query
          type: string
          description: Linear Team ID to fetch details for
        - name: cloud_id
          in: query
          type: string
          description: Specific Jira cloud ID when multiple clouds are available
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-scans-config-config_id
      path: /v1/scans/config/{config_id}
      operations:
      - name: getv1scansconfigconfigid
        method: GET
        description: Get Config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: config_json
          in: query
          type: boolean
          description: config is in json format
      - name: patchv1scansconfigconfigid
        method: PATCH
        description: Update Config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: config_json
          in: query
          type: boolean
          description: Specify payload is in json
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deletev1scansconfigconfigid
        method: DELETE
        description: Delete Config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
    - name: v1-scans-config-config_id-severity
      path: /v1/scans/config/{config_id}/severity
      operations:
      - name: patchv1scansconfigconfigidseverity
        method: PATCH
        description: Modify custom severity mapping
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: apikey
      key: X-API-Key
      value: '{{env.NUCLEI_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: nuclei-configurations-rest
    port: 8080
    description: REST adapter for PDCP API — configurations. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/v1/scans/config
      name: v1-scans-config
      description: REST surface for v1-scans-config.
      operations:
      - method: GET
        name: getv1scansconfig
        description: Get Configs List
        call: nuclei-configurations.getv1scansconfig
        with:
          type: rest.type
          search: rest.search
          limit: rest.limit
          offset: rest.offset
          X-Team-Id: rest.X-Team-Id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postv1scansconfig
        description: Add Config
        call: nuclei-configurations.postv1scansconfig
        with:
          X-Team-Id: rest.X-Team-Id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/scans/config/exclude
      name: v1-scans-config-exclude
      description: REST surface for v1-scans-config-exclude.
      operations:
      - method: GET
        name: getscansconfigexclude
        description: Get excluded templates
        call: nuclei-configurations.getscansconfigexclude
        with:
          X-Team-Id: rest.X-Team-Id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postscansconfigexclude
        description: Add excluded templates and targets
        call: nuclei-configurations.postscansconfigexclude
        with:
          X-Team-Id: rest.X-Team-Id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletescansconfigexclude
        description: Delete excluded templates or targets by ids
        call: nuclei-configurations.deletescansconfigexclude
        with:
          X-Team-Id: rest.X-Team-Id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/scans/config/severity
      name: v1-scans-config-severity
      description: REST surface for v1-scans-config-severity.
      operations:
      - method: GET
        name: getv1scansconfigseverity
        description: Get custom severity mappings
        call: nuclei-configurations.getv1scansconfigseverity
        with:
          X-Team-Id: rest.X-Team-Id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postv1scansconfigseverity
        description: Add custom severity mapping
        call: nuclei-configurations.postv1scansconfigseverity
        with:
          X-Team-Id: rest.X-Team-Id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletev1scansconfigseverity
        description: Delete custom severity mapping
        call: nuclei-configurations.deletev1scansconfigseverity
        with:
          X-Team-Id: rest.X-Team-Id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/scans/config/verify
      name: v1-scans-config-verify
      description: REST surface for v1-scans-config-verify.
      operations:
      - method: POST
        name: postv1scansconfigverify
        description: Verify Config
        call: nuclei-configurations.postv1scansconfigverify
        with:
          X-Team-Id: rest.X-Team-Id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/scans/config/verify/contents
      name: v1-scans-config-verify-contents
      description: REST surface for v1-scans-config-verify-contents.
      operations:
      - method: POST
        name: postv1scansconfigverifycontents
        description: Get Verify Config Contents
        call: nuclei-configurations.postv1scansconfigverifycontents
        with:
          X-Team-Id: rest.X-Team-Id
          project_id: rest.project_id
          team_id: rest.team_id
          cloud_id: rest.cloud_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/scans/config/{config-id}
      name: v1-scans-config-config-id
      description: REST surface for v1-scans-config-config_id.
      operations:
      - method: GET
        name: getv1scansconfigconfigid
        description: Get Config
        call: nuclei-configurations.getv1scansconfigconfigid
        with:
          X-Team-Id: rest.X-Team-Id
          config_json: rest.config_json
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: patchv1scansconfigconfigid
        description: Update Config
        call: nuclei-configurations.patchv1scansconfigconfigid
        with:
          X-Team-Id: rest.X-Team-Id
          config_json: rest.config_json
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletev1scansconfigconfigid
        description: Delete Config
        call: nuclei-configurations.deletev1scansconfigconfigid
        with:
          X-Team-Id: rest.X-Team-Id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/scans/config/{config-id}/severity
      name: v1-scans-config-config-id-severity
      description: REST surface for v1-scans-config-config_id-severity.
      operations:
      - method: PATCH
        name: patchv1scansconfigconfigidseverity
        description: Modify custom severity mapping
        call: nuclei-configurations.patchv1scansconfigconfigidseverity
        with:
          X-Team-Id: rest.X-Team-Id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: nuclei-configurations-mcp
    port: 9090
    transport: http
    description: MCP adapter for PDCP API — configurations. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: get-configs-list
      description: Get Configs List
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: nuclei-configurations.getv1scansconfig
      with:
        type: tools.type
        search: tools.search
        limit: tools.limit
        offset: tools.offset
        X-Team-Id: tools.X-Team-Id
      outputParameters:
      - type: object
        mapping: $.
    - name: add-config
      description: Add Config
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: nuclei-configurations.postv1scansconfig
      with:
        X-Team-Id: tools.X-Team-Id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-excluded-templates
      description: Get excluded templates
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: nuclei-configurations.getscansconfigexclude
      with:
        X-Team-Id: tools.X-Team-Id
      outputParameters:
      - type: object
        mapping: $.
    - name: add-excluded-templates-and-targets
      description: Add excluded templates and targets
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: nuclei-configurations.postscansconfigexclude
      with:
        X-Team-Id: tools.X-Team-Id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-excluded-templates-targets-ids
      description: Delete excluded templates or targets by ids
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: nuclei-configurations.deletescansconfigexclude
      with:
        X-Team-Id: tools.X-Team-Id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-custom-severity-mappings
      description: Get custom severity mappings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: nuclei-configurations.getv1scansconfigseverity
      with:
        X-Team-Id: tools.X-Team-Id
      outputParameters:
      - type: object
        mapping: $.
    - name: add-custom-severity-mapping
      description: Add custom severity mapping
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: nuclei-configurations.postv1scansconfigseverity
      with:
        X-Team-Id: tools.X-Team-Id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-custom-severity-mapping
      description: Delete custom severity mapping
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: nuclei-configurations.deletev1scansconfigseverity
      with:
        X-Team-Id: tools.X-Team-Id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: verify-config
      description: Verify Config
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: nuclei-configurations.postv1scansconfigverify
      with:
        X-Team-Id: tools.X-Team-Id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-verify-config-contents
      description: Get Verify Config Contents
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: nuclei-configurations.postv1scansconfigverifycontents
      with:
        X-Team-Id: tools.X-Team-Id
        project_id: tools.project_id
        team_id: tools.team_id
        cloud_id: tools.cloud_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-config
      description: Get Config
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: nuclei-configurations.getv1scansconfigconfigid
      with:
        X-Team-Id: tools.X-Team-Id
        config_json: tools.config_json
      outputParameters:
      - type: object
        mapping: $.
    - name: update-config
      description: Update Config
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: nuclei-configurations.patchv1scansconfigconfigid
      with:
        X-Team-Id: tools.X-Team-Id
        config_json: tools.config_json
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-config
      description: Delete Config
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: nuclei-configurations.deletev1scansconfigconfigid
      with:
        X-Team-Id: tools.X-Team-Id
      outputParameters:
      - type: object
        mapping: $.
    - name: modify-custom-severity-mapping
      description: Modify custom severity mapping
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: nuclei-configurations.patchv1scansconfigconfigidseverity
      with:
        X-Team-Id: tools.X-Team-Id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.