Gremlin · Capability

Gremlin API — orgs

Gremlin API — orgs. 8 operations. Lead operation: Get all Teams.. Self-contained Naftiko capability covering one Gremlin business surface.

Run with Naftiko Gremlinorgs

What You Can Do

GET
Info — Get all Teams.
/v1/orgs
POST
Create2 — Creates a new org with provided name.
/v1/orgs
GET
Downloadclientcredentials — Gets the secret key and certificate for this org in PEM format (zipped).
/v1/orgs/auth/certificate
POST
Addnewcertificate — Rolls over to use a new certificate. The current certificate will be saved and still valid for authentication, providing a transition period.
/v1/orgs/auth/certificate
DELETE
Replacecertificate — Deletes the current credentials and generates new. For use when the current credentials are compromised.
/v1/orgs/auth/certificate
DELETE
Invalidateoldcertificate — Deletes the old certificate for this org. This is intended for when a transition to new certificates has been completed, or when the old certificate has been compromised.
/v1/orgs/auth/certificate/old
POST
Secretreset — Resets the secret for this Team.
/v1/orgs/auth/secret/reset
GET
Info1 — Get the specified Team.
/v1/orgs/{identifier}

MCP Tools

get-all-teams

Get all Teams.

read-only idempotent
creates-new-org-provided-name

Creates a new org with provided name.

gets-secret-key-and-certificate

Gets the secret key and certificate for this org in PEM format (zipped).

read-only idempotent
rolls-over-use-new-certificate

Rolls over to use a new certificate. The current certificate will be saved and still valid for authentication, providing a transition period.

deletes-current-credentials-and-generates

Deletes the current credentials and generates new. For use when the current credentials are compromised.

idempotent
deletes-old-certificate-this-org

Deletes the old certificate for this org. This is intended for when a transition to new certificates has been completed, or when the old certificate has been compromised.

idempotent
resets-secret-this-team

Resets the secret for this Team.

get-specified-team

Get the specified Team.

read-only idempotent

Capability Spec

gremlin-orgs.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Gremlin API — orgs
  description: 'Gremlin API — orgs. 8 operations. Lead operation: Get all Teams.. Self-contained Naftiko capability covering
    one Gremlin business surface.'
  tags:
  - Gremlin
  - orgs
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GREMLIN_API_KEY: GREMLIN_API_KEY
capability:
  consumes:
  - type: http
    namespace: gremlin-orgs
    baseUri: https://api.gremlin.com/v1
    description: Gremlin API — orgs business capability. Self-contained, no shared references.
    resources:
    - name: orgs
      path: /orgs
      operations:
      - name: info
        method: GET
        description: Get all Teams.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: prefs
          in: query
          type: boolean
      - name: create2
        method: POST
        description: Creates a new org with provided name.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: addUser
          in: query
          type: boolean
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: orgs-auth-certificate
      path: /orgs/auth/certificate
      operations:
      - name: downloadclientcredentials
        method: GET
        description: Gets the secret key and certificate for this org in PEM format (zipped).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: teamId
          in: query
          type: string
          description: Required when using company session token.
          required: true
      - name: addnewcertificate
        method: POST
        description: Rolls over to use a new certificate.  The current certificate will be saved and still valid for authentication,
          providing a transition period.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: teamId
          in: query
          type: string
          description: Required when using company session token.
          required: true
      - name: replacecertificate
        method: DELETE
        description: Deletes the current credentials and generates new.  For use when the current credentials are compromised.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: teamId
          in: query
          type: string
          description: Required when using company session token.
          required: true
    - name: orgs-auth-certificate-old
      path: /orgs/auth/certificate/old
      operations:
      - name: invalidateoldcertificate
        method: DELETE
        description: Deletes the old certificate for this org.  This is intended for when a transition to new certificates
          has been completed, or when the old certificate has been compromised.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: teamId
          in: query
          type: string
          description: Required when using company session token.
          required: true
    - name: orgs-auth-secret-reset
      path: /orgs/auth/secret/reset
      operations:
      - name: secretreset
        method: POST
        description: Resets the secret for this Team.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: teamId
          in: query
          type: string
          description: Required when using company session token.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: orgs-identifier
      path: /orgs/{identifier}
      operations:
      - name: info1
        method: GET
        description: Get the specified Team.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: identifier
          in: path
          type: string
          required: true
        - name: prefs
          in: query
          type: boolean
  exposes:
  - type: rest
    namespace: gremlin-orgs-rest
    port: 8080
    description: REST adapter for Gremlin API — orgs. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/orgs
      name: orgs
      description: REST surface for orgs.
      operations:
      - method: GET
        name: info
        description: Get all Teams.
        call: gremlin-orgs.info
        with:
          prefs: rest.prefs
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: create2
        description: Creates a new org with provided name.
        call: gremlin-orgs.create2
        with:
          addUser: rest.addUser
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/auth/certificate
      name: orgs-auth-certificate
      description: REST surface for orgs-auth-certificate.
      operations:
      - method: GET
        name: downloadclientcredentials
        description: Gets the secret key and certificate for this org in PEM format (zipped).
        call: gremlin-orgs.downloadclientcredentials
        with:
          teamId: rest.teamId
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: addnewcertificate
        description: Rolls over to use a new certificate.  The current certificate will be saved and still valid for authentication,
          providing a transition period.
        call: gremlin-orgs.addnewcertificate
        with:
          teamId: rest.teamId
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: replacecertificate
        description: Deletes the current credentials and generates new.  For use when the current credentials are compromised.
        call: gremlin-orgs.replacecertificate
        with:
          teamId: rest.teamId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/auth/certificate/old
      name: orgs-auth-certificate-old
      description: REST surface for orgs-auth-certificate-old.
      operations:
      - method: DELETE
        name: invalidateoldcertificate
        description: Deletes the old certificate for this org.  This is intended for when a transition to new certificates
          has been completed, or when the old certificate has been compromised.
        call: gremlin-orgs.invalidateoldcertificate
        with:
          teamId: rest.teamId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/auth/secret/reset
      name: orgs-auth-secret-reset
      description: REST surface for orgs-auth-secret-reset.
      operations:
      - method: POST
        name: secretreset
        description: Resets the secret for this Team.
        call: gremlin-orgs.secretreset
        with:
          teamId: rest.teamId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{identifier}
      name: orgs-identifier
      description: REST surface for orgs-identifier.
      operations:
      - method: GET
        name: info1
        description: Get the specified Team.
        call: gremlin-orgs.info1
        with:
          identifier: rest.identifier
          prefs: rest.prefs
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: gremlin-orgs-mcp
    port: 9090
    transport: http
    description: MCP adapter for Gremlin API — orgs. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: get-all-teams
      description: Get all Teams.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gremlin-orgs.info
      with:
        prefs: tools.prefs
      outputParameters:
      - type: object
        mapping: $.
    - name: creates-new-org-provided-name
      description: Creates a new org with provided name.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gremlin-orgs.create2
      with:
        addUser: tools.addUser
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: gets-secret-key-and-certificate
      description: Gets the secret key and certificate for this org in PEM format (zipped).
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gremlin-orgs.downloadclientcredentials
      with:
        teamId: tools.teamId
      outputParameters:
      - type: object
        mapping: $.
    - name: rolls-over-use-new-certificate
      description: Rolls over to use a new certificate.  The current certificate will be saved and still valid for authentication,
        providing a transition period.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gremlin-orgs.addnewcertificate
      with:
        teamId: tools.teamId
      outputParameters:
      - type: object
        mapping: $.
    - name: deletes-current-credentials-and-generates
      description: Deletes the current credentials and generates new.  For use when the current credentials are compromised.
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: gremlin-orgs.replacecertificate
      with:
        teamId: tools.teamId
      outputParameters:
      - type: object
        mapping: $.
    - name: deletes-old-certificate-this-org
      description: Deletes the old certificate for this org.  This is intended for when a transition to new certificates has
        been completed, or when the old certificate has been compromised.
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: gremlin-orgs.invalidateoldcertificate
      with:
        teamId: tools.teamId
      outputParameters:
      - type: object
        mapping: $.
    - name: resets-secret-this-team
      description: Resets the secret for this Team.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gremlin-orgs.secretreset
      with:
        teamId: tools.teamId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-specified-team
      description: Get the specified Team.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gremlin-orgs.info1
      with:
        identifier: tools.identifier
        prefs: tools.prefs
      outputParameters:
      - type: object
        mapping: $.