naftiko: 1.0.0-alpha2 info: label: GitLab API — events description: 'GitLab API — events. 3 operations. Lead operation: List currently authenticated user''s events. Self-contained Naftiko capability covering one Gitlab Ci business surface.' tags: - Gitlab Ci - events created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GITLAB_CI_API_KEY: GITLAB_CI_API_KEY capability: consumes: - type: http namespace: gitlab-ci-events baseUri: https://gitlab.com description: GitLab API — events business capability. Self-contained, no shared references. resources: - name: api-v4-events path: /api/v4/events operations: - name: getapiv4events method: GET description: List currently authenticated user's events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: scope in: query type: string description: Include all events across a user’s projects - name: page in: query type: integer description: Current page number - name: per_page in: query type: integer description: Number of items per page - name: action in: query type: string description: Event action to filter on - name: target_type in: query type: string description: Event target type to filter on - name: before in: query type: string description: Include only events created before this date - name: after in: query type: string description: Include only events created after this date - name: sort in: query type: string description: Return events sorted in ascending and descending order - name: api-v4-projects-id-events path: /api/v4/projects/{id}/events operations: - name: getapiv4projectsidevents method: GET description: List a project's visible events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: action in: query type: string description: Event action to filter on - name: target_type in: query type: string description: Event target type to filter on - name: before in: query type: string description: Include only events created before this date - name: after in: query type: string description: Include only events created after this date - name: sort in: query type: string description: Return events sorted in ascending and descending order - name: page in: query type: integer description: Current page number - name: per_page in: query type: integer description: Number of items per page - name: api-v4-users-id-events path: /api/v4/users/{id}/events operations: - name: getapiv4usersidevents method: GET description: Get the contribution events of a specified user outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or username of the user required: true - name: page in: query type: integer description: Current page number - name: per_page in: query type: integer description: Number of items per page - name: action in: query type: string description: Event action to filter on - name: target_type in: query type: string description: Event target type to filter on - name: before in: query type: string description: Include only events created before this date - name: after in: query type: string description: Include only events created after this date - name: sort in: query type: string description: Return events sorted in ascending and descending order exposes: - type: rest namespace: gitlab-ci-events-rest port: 8080 description: REST adapter for GitLab API — events. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v4/events name: api-v4-events description: REST surface for api-v4-events. operations: - method: GET name: getapiv4events description: List currently authenticated user's events call: gitlab-ci-events.getapiv4events with: scope: rest.scope page: rest.page per_page: rest.per_page action: rest.action target_type: rest.target_type before: rest.before after: rest.after sort: rest.sort outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/events name: api-v4-projects-id-events description: REST surface for api-v4-projects-id-events. operations: - method: GET name: getapiv4projectsidevents description: List a project's visible events call: gitlab-ci-events.getapiv4projectsidevents with: id: rest.id action: rest.action target_type: rest.target_type before: rest.before after: rest.after sort: rest.sort page: rest.page per_page: rest.per_page outputParameters: - type: object mapping: $. - path: /v1/api/v4/users/{id}/events name: api-v4-users-id-events description: REST surface for api-v4-users-id-events. operations: - method: GET name: getapiv4usersidevents description: Get the contribution events of a specified user call: gitlab-ci-events.getapiv4usersidevents with: id: rest.id page: rest.page per_page: rest.per_page action: rest.action target_type: rest.target_type before: rest.before after: rest.after sort: rest.sort outputParameters: - type: object mapping: $. - type: mcp namespace: gitlab-ci-events-mcp port: 9090 transport: http description: MCP adapter for GitLab API — events. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-currently-authenticated-user-s-events description: List currently authenticated user's events hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-events.getapiv4events with: scope: tools.scope page: tools.page per_page: tools.per_page action: tools.action target_type: tools.target_type before: tools.before after: tools.after sort: tools.sort outputParameters: - type: object mapping: $. - name: list-project-s-visible-events description: List a project's visible events hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-events.getapiv4projectsidevents with: id: tools.id action: tools.action target_type: tools.target_type before: tools.before after: tools.after sort: tools.sort page: tools.page per_page: tools.per_page outputParameters: - type: object mapping: $. - name: get-contribution-events-specified-user description: Get the contribution events of a specified user hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-events.getapiv4usersidevents with: id: tools.id page: tools.page per_page: tools.per_page action: tools.action target_type: tools.target_type before: tools.before after: tools.after sort: tools.sort outputParameters: - type: object mapping: $.