naftiko: 1.0.0-alpha2 info: label: Sentry Crons API — Monitors description: 'Sentry Crons API — Monitors. 8 operations. Lead operation: Sentry Retrieve monitors for an organization. Self-contained Naftiko capability covering one Sentry System business surface.' tags: - Sentry System - Monitors created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SENTRY_SYSTEM_API_KEY: SENTRY_SYSTEM_API_KEY capability: consumes: - type: http namespace: sentry-crons-monitors baseUri: https://sentry.io/api/0 description: Sentry Crons API — Monitors business capability. Self-contained, no shared references. resources: - name: organizations-organization_id_or_slug-monitors path: /organizations/{organization_id_or_slug}/monitors/ operations: - name: listorganizationmonitors method: GET description: Sentry Retrieve monitors for an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: cursor in: query type: string description: Pagination cursor. - name: environment in: query type: string description: Filter by environment name. - name: createmonitor method: POST description: Sentry Create a monitor outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: organizations-organization_id_or_slug-monitors-monitor_id_or_slug path: /organizations/{organization_id_or_slug}/monitors/{monitor_id_or_slug}/ operations: - name: retrievemonitor method: GET description: Sentry Retrieve a monitor outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatemonitor method: PUT description: Sentry Update a monitor outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletemonitor method: DELETE description: Sentry Delete a monitor or monitor environments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: environment in: query type: string description: Specific environment to delete rather than the entire monitor. - name: projects-organization_id_or_slug-project_id_or_slug-monitors-monitor_id_or_slug path: /projects/{organization_id_or_slug}/{project_id_or_slug}/monitors/{monitor_id_or_slug}/ operations: - name: retrievemonitorforproject method: GET description: Sentry Retrieve a monitor for a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatemonitorforproject method: PUT description: Sentry Update a monitor for a project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletemonitorforproject method: DELETE description: Sentry Delete a monitor or monitor environments for a project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: environment in: query type: string description: Specific environment to delete. authentication: type: bearer token: '{{env.SENTRY_SYSTEM_API_KEY}}' exposes: - type: rest namespace: sentry-crons-monitors-rest port: 8080 description: REST adapter for Sentry Crons API — Monitors. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/organizations/{organization-id-or-slug}/monitors name: organizations-organization-id-or-slug-monitors description: REST surface for organizations-organization_id_or_slug-monitors. operations: - method: GET name: listorganizationmonitors description: Sentry Retrieve monitors for an organization call: sentry-crons-monitors.listorganizationmonitors with: cursor: rest.cursor environment: rest.environment outputParameters: - type: object mapping: $. - method: POST name: createmonitor description: Sentry Create a monitor call: sentry-crons-monitors.createmonitor with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/organizations/{organization-id-or-slug}/monitors/{monitor-id-or-slug} name: organizations-organization-id-or-slug-monitors-monitor-id-or-slug description: REST surface for organizations-organization_id_or_slug-monitors-monitor_id_or_slug. operations: - method: GET name: retrievemonitor description: Sentry Retrieve a monitor call: sentry-crons-monitors.retrievemonitor outputParameters: - type: object mapping: $. - method: PUT name: updatemonitor description: Sentry Update a monitor call: sentry-crons-monitors.updatemonitor with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletemonitor description: Sentry Delete a monitor or monitor environments call: sentry-crons-monitors.deletemonitor with: environment: rest.environment outputParameters: - type: object mapping: $. - path: /v1/projects/{organization-id-or-slug}/{project-id-or-slug}/monitors/{monitor-id-or-slug} name: projects-organization-id-or-slug-project-id-or-slug-monitors-monitor-id-or-slug description: REST surface for projects-organization_id_or_slug-project_id_or_slug-monitors-monitor_id_or_slug. operations: - method: GET name: retrievemonitorforproject description: Sentry Retrieve a monitor for a project call: sentry-crons-monitors.retrievemonitorforproject outputParameters: - type: object mapping: $. - method: PUT name: updatemonitorforproject description: Sentry Update a monitor for a project call: sentry-crons-monitors.updatemonitorforproject with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletemonitorforproject description: Sentry Delete a monitor or monitor environments for a project call: sentry-crons-monitors.deletemonitorforproject with: environment: rest.environment outputParameters: - type: object mapping: $. - type: mcp namespace: sentry-crons-monitors-mcp port: 9090 transport: http description: MCP adapter for Sentry Crons API — Monitors. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: sentry-retrieve-monitors-organization description: Sentry Retrieve monitors for an organization hints: readOnly: true destructive: false idempotent: true call: sentry-crons-monitors.listorganizationmonitors with: cursor: tools.cursor environment: tools.environment outputParameters: - type: object mapping: $. - name: sentry-create-monitor description: Sentry Create a monitor hints: readOnly: false destructive: false idempotent: false call: sentry-crons-monitors.createmonitor with: body: tools.body outputParameters: - type: object mapping: $. - name: sentry-retrieve-monitor description: Sentry Retrieve a monitor hints: readOnly: true destructive: false idempotent: true call: sentry-crons-monitors.retrievemonitor outputParameters: - type: object mapping: $. - name: sentry-update-monitor description: Sentry Update a monitor hints: readOnly: false destructive: false idempotent: true call: sentry-crons-monitors.updatemonitor with: body: tools.body outputParameters: - type: object mapping: $. - name: sentry-delete-monitor-monitor-environments description: Sentry Delete a monitor or monitor environments hints: readOnly: false destructive: true idempotent: true call: sentry-crons-monitors.deletemonitor with: environment: tools.environment outputParameters: - type: object mapping: $. - name: sentry-retrieve-monitor-project description: Sentry Retrieve a monitor for a project hints: readOnly: true destructive: false idempotent: true call: sentry-crons-monitors.retrievemonitorforproject outputParameters: - type: object mapping: $. - name: sentry-update-monitor-project description: Sentry Update a monitor for a project hints: readOnly: false destructive: false idempotent: true call: sentry-crons-monitors.updatemonitorforproject with: body: tools.body outputParameters: - type: object mapping: $. - name: sentry-delete-monitor-monitor-environments-2 description: Sentry Delete a monitor or monitor environments for a project hints: readOnly: false destructive: true idempotent: true call: sentry-crons-monitors.deletemonitorforproject with: environment: tools.environment outputParameters: - type: object mapping: $.