Grafana · Capability

Grafana — Create

Grafana — Create. 21 operations. Lead operation: Grafana Create Role. Self-contained Naftiko capability covering one Grafana business surface.

Run with Naftiko GrafanaCreate

What You Can Do

POST
Createrole — Grafana Create Role
/v1/access-control/roles
POST
Admincreateuser — Grafana Admin Create User
/v1/admin/users
POST
Createsession — Grafana Create Session
/v1/cloudmigration/migration
POST
Createsnapshot — Grafana Create Snapshot
/v1/cloudmigration/migration/{uid}/snapshot
POST
Createcloudmigrationtoken — Grafana Create Cloud Migration Token
/v1/cloudmigration/token
POST
Createpublicdashboard — Grafana Create Public Dashboard
/v1/dashboards/uid/{dashboarduid}/public-dashboards
POST
Createcorrelation — Grafana Create Correlation
/v1/datasources/uid/{sourceuid}/correlations
POST
Createfolder — Grafana Create Folder
/v1/folders
POST
Creategroupmappings — Grafana Create Group Mappings
/v1/groupsync/groups/{group-id}
POST
Createlibraryelement — Grafana Create Library Element
/v1/library-elements
POST
Createorg — Grafana Create Org
/v1/orgs
POST
Createplaylist — Grafana Create Playlist
/v1/playlists
POST
Createquery — Grafana Create Query
/v1/query-history
POST
Createrecordingrule — Grafana Create Recording Rule
/v1/recording-rules
POST
Testcreaterecordingrule — Grafana Test Create Recording Rule
/v1/recording-rules/test
POST
Createrecordingrulewritetarget — Grafana Create Recording Rule Write Target
/v1/recording-rules/writer
POST
Createreport — Grafana Create Report
/v1/reports
POST
Createserviceaccount — Grafana Create Service Account
/v1/serviceaccounts
POST
Createtoken — Grafana Create Token
/v1/serviceaccounts/{serviceaccountid}/tokens
POST
Createdashboardsnapshot — Grafana Create Dashboard Snapshot
/v1/snapshots
POST
Createteam — Grafana Create Team
/v1/teams

MCP Tools

grafana-create-role

Grafana Create Role

grafana-admin-create-user

Grafana Admin Create User

grafana-create-session

Grafana Create Session

grafana-create-snapshot

Grafana Create Snapshot

grafana-create-cloud-migration-token

Grafana Create Cloud Migration Token

grafana-create-public-dashboard

Grafana Create Public Dashboard

grafana-create-correlation

Grafana Create Correlation

grafana-create-folder

Grafana Create Folder

grafana-create-group-mappings

Grafana Create Group Mappings

grafana-create-library-element

Grafana Create Library Element

grafana-create-org

Grafana Create Org

grafana-create-playlist

Grafana Create Playlist

grafana-create-query

Grafana Create Query

read-only
grafana-create-recording-rule

Grafana Create Recording Rule

grafana-test-create-recording-rule

Grafana Test Create Recording Rule

read-only
grafana-create-recording-rule-write

Grafana Create Recording Rule Write Target

grafana-create-report

Grafana Create Report

grafana-create-service-account

Grafana Create Service Account

grafana-create-token

Grafana Create Token

grafana-create-dashboard-snapshot

Grafana Create Dashboard Snapshot

grafana-create-team

Grafana Create Team

Capability Spec

grafana-create.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Grafana — Create
  description: 'Grafana — Create. 21 operations. Lead operation: Grafana Create Role. Self-contained Naftiko capability covering
    one Grafana business surface.'
  tags:
  - Grafana
  - Create
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GRAFANA_API_KEY: GRAFANA_API_KEY
capability:
  consumes:
  - type: http
    namespace: grafana-create
    baseUri: http://{defaultHost}
    description: Grafana — Create business capability. Self-contained, no shared references.
    resources:
    - name: access-control-roles
      path: /access-control/roles
      operations:
      - name: createrole
        method: POST
        description: Grafana Create Role
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: admin-users
      path: /admin/users
      operations:
      - name: admincreateuser
        method: POST
        description: Grafana Admin Create User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cloudmigration-migration
      path: /cloudmigration/migration
      operations:
      - name: createsession
        method: POST
        description: Grafana Create Session
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cloudmigration-migration-uid-snapshot
      path: /cloudmigration/migration/{uid}/snapshot
      operations:
      - name: createsnapshot
        method: POST
        description: Grafana Create Snapshot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: uid
          in: path
          type: string
          description: UID of a session
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cloudmigration-token
      path: /cloudmigration/token
      operations:
      - name: createcloudmigrationtoken
        method: POST
        description: Grafana Create Cloud Migration Token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: dashboards-uid-dashboardUid-public-dashboards
      path: /dashboards/uid/{dashboardUid}/public-dashboards
      operations:
      - name: createpublicdashboard
        method: POST
        description: Grafana Create Public Dashboard
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: dashboardUid
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: datasources-uid-sourceUID-correlations
      path: /datasources/uid/{sourceUID}/correlations
      operations:
      - name: createcorrelation
        method: POST
        description: Grafana Create Correlation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sourceUID
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: folders
      path: /folders
      operations:
      - name: createfolder
        method: POST
        description: Grafana Create Folder
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: groupsync-groups-group_id
      path: /groupsync/groups/{group_id}
      operations:
      - name: creategroupmappings
        method: POST
        description: Grafana Create Group Mappings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: library-elements
      path: /library-elements
      operations:
      - name: createlibraryelement
        method: POST
        description: Grafana Create Library Element
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: orgs
      path: /orgs
      operations:
      - name: createorg
        method: POST
        description: Grafana Create Org
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: playlists
      path: /playlists
      operations:
      - name: createplaylist
        method: POST
        description: Grafana Create Playlist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: query-history
      path: /query-history
      operations:
      - name: createquery
        method: POST
        description: Grafana Create Query
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: recording-rules
      path: /recording-rules
      operations:
      - name: createrecordingrule
        method: POST
        description: Grafana Create Recording Rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: recording-rules-test
      path: /recording-rules/test
      operations:
      - name: testcreaterecordingrule
        method: POST
        description: Grafana Test Create Recording Rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: recording-rules-writer
      path: /recording-rules/writer
      operations:
      - name: createrecordingrulewritetarget
        method: POST
        description: Grafana Create Recording Rule Write Target
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: reports
      path: /reports
      operations:
      - name: createreport
        method: POST
        description: Grafana Create Report
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: serviceaccounts
      path: /serviceaccounts
      operations:
      - name: createserviceaccount
        method: POST
        description: Grafana Create Service Account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: serviceaccounts-serviceAccountId-tokens
      path: /serviceaccounts/{serviceAccountId}/tokens
      operations:
      - name: createtoken
        method: POST
        description: Grafana Create Token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: serviceAccountId
          in: path
          type: integer
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: snapshots
      path: /snapshots
      operations:
      - name: createdashboardsnapshot
        method: POST
        description: Grafana Create Dashboard Snapshot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: teams
      path: /teams
      operations:
      - name: createteam
        method: POST
        description: Grafana Create Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.GRAFANA_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: grafana-create-rest
    port: 8080
    description: REST adapter for Grafana — Create. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/access-control/roles
      name: access-control-roles
      description: REST surface for access-control-roles.
      operations:
      - method: POST
        name: createrole
        description: Grafana Create Role
        call: grafana-create.createrole
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/users
      name: admin-users
      description: REST surface for admin-users.
      operations:
      - method: POST
        name: admincreateuser
        description: Grafana Admin Create User
        call: grafana-create.admincreateuser
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudmigration/migration
      name: cloudmigration-migration
      description: REST surface for cloudmigration-migration.
      operations:
      - method: POST
        name: createsession
        description: Grafana Create Session
        call: grafana-create.createsession
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudmigration/migration/{uid}/snapshot
      name: cloudmigration-migration-uid-snapshot
      description: REST surface for cloudmigration-migration-uid-snapshot.
      operations:
      - method: POST
        name: createsnapshot
        description: Grafana Create Snapshot
        call: grafana-create.createsnapshot
        with:
          uid: rest.uid
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudmigration/token
      name: cloudmigration-token
      description: REST surface for cloudmigration-token.
      operations:
      - method: POST
        name: createcloudmigrationtoken
        description: Grafana Create Cloud Migration Token
        call: grafana-create.createcloudmigrationtoken
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/dashboards/uid/{dashboarduid}/public-dashboards
      name: dashboards-uid-dashboarduid-public-dashboards
      description: REST surface for dashboards-uid-dashboardUid-public-dashboards.
      operations:
      - method: POST
        name: createpublicdashboard
        description: Grafana Create Public Dashboard
        call: grafana-create.createpublicdashboard
        with:
          dashboardUid: rest.dashboardUid
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/datasources/uid/{sourceuid}/correlations
      name: datasources-uid-sourceuid-correlations
      description: REST surface for datasources-uid-sourceUID-correlations.
      operations:
      - method: POST
        name: createcorrelation
        description: Grafana Create Correlation
        call: grafana-create.createcorrelation
        with:
          sourceUID: rest.sourceUID
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/folders
      name: folders
      description: REST surface for folders.
      operations:
      - method: POST
        name: createfolder
        description: Grafana Create Folder
        call: grafana-create.createfolder
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/groupsync/groups/{group-id}
      name: groupsync-groups-group-id
      description: REST surface for groupsync-groups-group_id.
      operations:
      - method: POST
        name: creategroupmappings
        description: Grafana Create Group Mappings
        call: grafana-create.creategroupmappings
        with:
          group_id: rest.group_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/library-elements
      name: library-elements
      description: REST surface for library-elements.
      operations:
      - method: POST
        name: createlibraryelement
        description: Grafana Create Library Element
        call: grafana-create.createlibraryelement
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs
      name: orgs
      description: REST surface for orgs.
      operations:
      - method: POST
        name: createorg
        description: Grafana Create Org
        call: grafana-create.createorg
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/playlists
      name: playlists
      description: REST surface for playlists.
      operations:
      - method: POST
        name: createplaylist
        description: Grafana Create Playlist
        call: grafana-create.createplaylist
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/query-history
      name: query-history
      description: REST surface for query-history.
      operations:
      - method: POST
        name: createquery
        description: Grafana Create Query
        call: grafana-create.createquery
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/recording-rules
      name: recording-rules
      description: REST surface for recording-rules.
      operations:
      - method: POST
        name: createrecordingrule
        description: Grafana Create Recording Rule
        call: grafana-create.createrecordingrule
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/recording-rules/test
      name: recording-rules-test
      description: REST surface for recording-rules-test.
      operations:
      - method: POST
        name: testcreaterecordingrule
        description: Grafana Test Create Recording Rule
        call: grafana-create.testcreaterecordingrule
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/recording-rules/writer
      name: recording-rules-writer
      description: REST surface for recording-rules-writer.
      operations:
      - method: POST
        name: createrecordingrulewritetarget
        description: Grafana Create Recording Rule Write Target
        call: grafana-create.createrecordingrulewritetarget
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/reports
      name: reports
      description: REST surface for reports.
      operations:
      - method: POST
        name: createreport
        description: Grafana Create Report
        call: grafana-create.createreport
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/serviceaccounts
      name: serviceaccounts
      description: REST surface for serviceaccounts.
      operations:
      - method: POST
        name: createserviceaccount
        description: Grafana Create Service Account
        call: grafana-create.createserviceaccount
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/serviceaccounts/{serviceaccountid}/tokens
      name: serviceaccounts-serviceaccountid-tokens
      description: REST surface for serviceaccounts-serviceAccountId-tokens.
      operations:
      - method: POST
        name: createtoken
        description: Grafana Create Token
        call: grafana-create.createtoken
        with:
          serviceAccountId: rest.serviceAccountId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/snapshots
      name: snapshots
      description: REST surface for snapshots.
      operations:
      - method: POST
        name: createdashboardsnapshot
        description: Grafana Create Dashboard Snapshot
        call: grafana-create.createdashboardsnapshot
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/teams
      name: teams
      description: REST surface for teams.
      operations:
      - method: POST
        name: createteam
        description: Grafana Create Team
        call: grafana-create.createteam
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: grafana-create-mcp
    port: 9090
    transport: http
    description: MCP adapter for Grafana — Create. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: grafana-create-role
      description: Grafana Create Role
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createrole
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-admin-create-user
      description: Grafana Admin Create User
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.admincreateuser
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-session
      description: Grafana Create Session
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createsession
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-snapshot
      description: Grafana Create Snapshot
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createsnapshot
      with:
        uid: tools.uid
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-cloud-migration-token
      description: Grafana Create Cloud Migration Token
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createcloudmigrationtoken
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-public-dashboard
      description: Grafana Create Public Dashboard
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createpublicdashboard
      with:
        dashboardUid: tools.dashboardUid
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-correlation
      description: Grafana Create Correlation
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createcorrelation
      with:
        sourceUID: tools.sourceUID
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-folder
      description: Grafana Create Folder
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createfolder
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-group-mappings
      description: Grafana Create Group Mappings
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.creategroupmappings
      with:
        group_id: tools.group_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-library-element
      description: Grafana Create Library Element
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createlibraryelement
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-org
      description: Grafana Create Org
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createorg
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-playlist
      description: Grafana Create Playlist
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createplaylist
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-query
      description: Grafana Create Query
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: grafana-create.createquery
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-recording-rule
      description: Grafana Create Recording Rule
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createrecordingrule
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-test-create-recording-rule
      description: Grafana Test Create Recording Rule
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: grafana-create.testcreaterecordingrule
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-recording-rule-write
      description: Grafana Create Recording Rule Write Target
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createrecordingrulewritetarget
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-report
      description: Grafana Create Report
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createreport
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-service-account
      description: Grafana Create Service Account
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createserviceaccount
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-token
      description: Grafana Create Token
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createtoken
      with:
        serviceAccountId: tools.serviceAccountId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-dashboard-snapshot
      description: Grafana Create Dashboard Snapshot
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createdashboardsnapshot
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: grafana-create-team
      description: Grafana Create Team
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: grafana-create.createteam
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.