naftiko: 1.0.0-alpha2 info: label: SourceForge Allura API — Projects description: 'SourceForge Allura API — Projects. 3 operations. Lead operation: Create Project. Self-contained Naftiko capability covering one Sourceforge business surface.' tags: - Sourceforge - Projects created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SOURCEFORGE_API_KEY: SOURCEFORGE_API_KEY capability: consumes: - type: http namespace: allura-projects baseUri: https://sourceforge.net description: SourceForge Allura API — Projects business capability. Self-contained, no shared references. resources: - name: rest-p-add_project path: /rest/p/add_project operations: - name: createproject method: POST description: Create Project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: rest-p-project path: /rest/p/{project} operations: - name: getproject method: GET description: Get Project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-p-project-has_access path: /rest/p/{project}/has_access operations: - name: checkprojectaccess method: GET description: Check Project Access outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.SOURCEFORGE_API_KEY}}' exposes: - type: rest namespace: allura-projects-rest port: 8080 description: REST adapter for SourceForge Allura API — Projects. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/p/add-project name: rest-p-add-project description: REST surface for rest-p-add_project. operations: - method: POST name: createproject description: Create Project call: allura-projects.createproject with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/p/{project} name: rest-p-project description: REST surface for rest-p-project. operations: - method: GET name: getproject description: Get Project call: allura-projects.getproject outputParameters: - type: object mapping: $. - path: /v1/p/{project}/has-access name: rest-p-project-has-access description: REST surface for rest-p-project-has_access. operations: - method: GET name: checkprojectaccess description: Check Project Access call: allura-projects.checkprojectaccess outputParameters: - type: object mapping: $. - type: mcp namespace: allura-projects-mcp port: 9090 transport: http description: MCP adapter for SourceForge Allura API — Projects. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: create-project description: Create Project hints: readOnly: false destructive: false idempotent: false call: allura-projects.createproject with: body: tools.body outputParameters: - type: object mapping: $. - name: get-project description: Get Project hints: readOnly: true destructive: false idempotent: true call: allura-projects.getproject outputParameters: - type: object mapping: $. - name: check-project-access description: Check Project Access hints: readOnly: true destructive: false idempotent: true call: allura-projects.checkprojectaccess outputParameters: - type: object mapping: $.