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: $.