naftiko: 1.0.0-alpha2 info: label: github-repos-api — Repositories description: 'github-repos-api — Repositories. 3 operations. Lead operation: GitHub List Repository Issues. Self-contained Naftiko capability covering one Github business surface.' tags: - Github - Repositories created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GITHUB_API_KEY: GITHUB_API_KEY capability: consumes: - type: http namespace: repo-issues-repositories baseUri: '' description: github-repos-api — Repositories business capability. Self-contained, no shared references. resources: - name: repos-owner-repo-issues path: /repos/{owner}/{repo}/issues operations: - name: listrepositoryissues method: GET description: GitHub List Repository Issues outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: milestone in: query type: string description: If an `integer` is passed, it should refer to a milestone by its `number` field. If the string `*` is passed, issues with any milestone are accepted. If the str - name: state in: query type: string description: Indicates the state of the issues to return. - name: assignee in: query type: string description: Can be the name of a user. Pass in `none` for issues with no assigned user, and `*` for issues assigned to any user. - name: creator in: query type: string description: The user that created the issue. - name: mentioned in: query type: string description: user that's mentioned in the issue. - name: sort in: query type: string description: What to sort results by. - name: Authorization in: header type: string - name: X-GitHub-Api-Version in: header type: string - name: Accept in: header type: string - name: repos-owner-repo-issues-comments path: /repos/{owner}/{repo}/issues/comments operations: - name: listissuecommentsforrepository method: GET description: GitHub List Issue Comments for Repository outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: direction in: query type: string description: Either `asc` or `desc`. Ignored without the `sort` parameter. - name: Authorization in: header type: string - name: X-GitHub-Api-Version in: header type: string - name: Accept in: header type: string - name: repos-owner-repo-issues-events path: /repos/{owner}/{repo}/issues/events operations: - name: listissueeventsforrepository method: GET description: GitHub List Issue Events for Repository outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Authorization in: header type: string - name: X-GitHub-Api-Version in: header type: string - name: Accept in: header type: string authentication: type: bearer token: '{{env.GITHUB_API_KEY}}' exposes: - type: rest namespace: repo-issues-repositories-rest port: 8080 description: REST adapter for github-repos-api — Repositories. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/repos/{owner}/{repo}/issues name: repos-owner-repo-issues description: REST surface for repos-owner-repo-issues. operations: - method: GET name: listrepositoryissues description: GitHub List Repository Issues call: repo-issues-repositories.listrepositoryissues with: milestone: rest.milestone state: rest.state assignee: rest.assignee creator: rest.creator mentioned: rest.mentioned sort: rest.sort Authorization: rest.Authorization X-GitHub-Api-Version: rest.X-GitHub-Api-Version Accept: rest.Accept outputParameters: - type: object mapping: $. - path: /v1/repos/{owner}/{repo}/issues/comments name: repos-owner-repo-issues-comments description: REST surface for repos-owner-repo-issues-comments. operations: - method: GET name: listissuecommentsforrepository description: GitHub List Issue Comments for Repository call: repo-issues-repositories.listissuecommentsforrepository with: direction: rest.direction Authorization: rest.Authorization X-GitHub-Api-Version: rest.X-GitHub-Api-Version Accept: rest.Accept outputParameters: - type: object mapping: $. - path: /v1/repos/{owner}/{repo}/issues/events name: repos-owner-repo-issues-events description: REST surface for repos-owner-repo-issues-events. operations: - method: GET name: listissueeventsforrepository description: GitHub List Issue Events for Repository call: repo-issues-repositories.listissueeventsforrepository with: Authorization: rest.Authorization X-GitHub-Api-Version: rest.X-GitHub-Api-Version Accept: rest.Accept outputParameters: - type: object mapping: $. - type: mcp namespace: repo-issues-repositories-mcp port: 9090 transport: http description: MCP adapter for github-repos-api — Repositories. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: github-list-repository-issues description: GitHub List Repository Issues hints: readOnly: true destructive: false idempotent: true call: repo-issues-repositories.listrepositoryissues with: milestone: tools.milestone state: tools.state assignee: tools.assignee creator: tools.creator mentioned: tools.mentioned sort: tools.sort Authorization: tools.Authorization X-GitHub-Api-Version: tools.X-GitHub-Api-Version Accept: tools.Accept outputParameters: - type: object mapping: $. - name: github-list-issue-comments-repository description: GitHub List Issue Comments for Repository hints: readOnly: true destructive: false idempotent: true call: repo-issues-repositories.listissuecommentsforrepository with: direction: tools.direction Authorization: tools.Authorization X-GitHub-Api-Version: tools.X-GitHub-Api-Version Accept: tools.Accept outputParameters: - type: object mapping: $. - name: github-list-issue-events-repository description: GitHub List Issue Events for Repository hints: readOnly: true destructive: false idempotent: true call: repo-issues-repositories.listissueeventsforrepository with: Authorization: tools.Authorization X-GitHub-Api-Version: tools.X-GitHub-Api-Version Accept: tools.Accept outputParameters: - type: object mapping: $.