naftiko: 1.0.0-alpha2 info: label: CodeProject REST API — My description: 'CodeProject REST API — My. 8 operations. Lead operation: List the authenticated user''s answers. Self-contained Naftiko capability covering one Codeproject business surface.' tags: - Codeproject - My created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CODEPROJECT_API_KEY: CODEPROJECT_API_KEY capability: consumes: - type: http namespace: rest-my baseUri: https://api.codeproject.com description: CodeProject REST API — My business capability. Self-contained, no shared references. resources: - name: v1-My-Answers path: /v1/My/Answers operations: - name: listmyanswers method: GET description: List the authenticated user's answers outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-My-Articles path: /v1/My/Articles operations: - name: listmyarticles method: GET description: List the authenticated user's articles outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-My-Blog path: /v1/My/Blog operations: - name: listmyblogposts method: GET description: List the authenticated user's blog posts outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-My-Bookmarks path: /v1/My/Bookmarks operations: - name: listmybookmarks method: GET description: List the authenticated user's bookmarks outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-My-Notifications path: /v1/My/Notifications operations: - name: listmynotifications method: GET description: List the authenticated user's notifications outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-My-Profile path: /v1/My/Profile operations: - name: getmyprofile method: GET description: Get the authenticated user's profile outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-My-Reputation path: /v1/My/Reputation operations: - name: getmyreputation method: GET description: Get the authenticated user's reputation outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-My-Tips path: /v1/My/Tips operations: - name: listmytips method: GET description: List the authenticated user's tips outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.CODEPROJECT_API_KEY}}' exposes: - type: rest namespace: rest-my-rest port: 8080 description: REST adapter for CodeProject REST API — My. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/my/answers name: v1-my-answers description: REST surface for v1-My-Answers. operations: - method: GET name: listmyanswers description: List the authenticated user's answers call: rest-my.listmyanswers outputParameters: - type: object mapping: $. - path: /v1/v1/my/articles name: v1-my-articles description: REST surface for v1-My-Articles. operations: - method: GET name: listmyarticles description: List the authenticated user's articles call: rest-my.listmyarticles outputParameters: - type: object mapping: $. - path: /v1/v1/my/blog name: v1-my-blog description: REST surface for v1-My-Blog. operations: - method: GET name: listmyblogposts description: List the authenticated user's blog posts call: rest-my.listmyblogposts outputParameters: - type: object mapping: $. - path: /v1/v1/my/bookmarks name: v1-my-bookmarks description: REST surface for v1-My-Bookmarks. operations: - method: GET name: listmybookmarks description: List the authenticated user's bookmarks call: rest-my.listmybookmarks outputParameters: - type: object mapping: $. - path: /v1/v1/my/notifications name: v1-my-notifications description: REST surface for v1-My-Notifications. operations: - method: GET name: listmynotifications description: List the authenticated user's notifications call: rest-my.listmynotifications outputParameters: - type: object mapping: $. - path: /v1/v1/my/profile name: v1-my-profile description: REST surface for v1-My-Profile. operations: - method: GET name: getmyprofile description: Get the authenticated user's profile call: rest-my.getmyprofile outputParameters: - type: object mapping: $. - path: /v1/v1/my/reputation name: v1-my-reputation description: REST surface for v1-My-Reputation. operations: - method: GET name: getmyreputation description: Get the authenticated user's reputation call: rest-my.getmyreputation outputParameters: - type: object mapping: $. - path: /v1/v1/my/tips name: v1-my-tips description: REST surface for v1-My-Tips. operations: - method: GET name: listmytips description: List the authenticated user's tips call: rest-my.listmytips outputParameters: - type: object mapping: $. - type: mcp namespace: rest-my-mcp port: 9090 transport: http description: MCP adapter for CodeProject REST API — My. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-authenticated-user-s-answers description: List the authenticated user's answers hints: readOnly: true destructive: false idempotent: true call: rest-my.listmyanswers outputParameters: - type: object mapping: $. - name: list-authenticated-user-s-articles description: List the authenticated user's articles hints: readOnly: true destructive: false idempotent: true call: rest-my.listmyarticles outputParameters: - type: object mapping: $. - name: list-authenticated-user-s-blog-posts description: List the authenticated user's blog posts hints: readOnly: true destructive: false idempotent: true call: rest-my.listmyblogposts outputParameters: - type: object mapping: $. - name: list-authenticated-user-s-bookmarks description: List the authenticated user's bookmarks hints: readOnly: true destructive: false idempotent: true call: rest-my.listmybookmarks outputParameters: - type: object mapping: $. - name: list-authenticated-user-s-notifications description: List the authenticated user's notifications hints: readOnly: true destructive: false idempotent: true call: rest-my.listmynotifications outputParameters: - type: object mapping: $. - name: get-authenticated-user-s-profile description: Get the authenticated user's profile hints: readOnly: true destructive: false idempotent: true call: rest-my.getmyprofile outputParameters: - type: object mapping: $. - name: get-authenticated-user-s-reputation description: Get the authenticated user's reputation hints: readOnly: true destructive: false idempotent: true call: rest-my.getmyreputation outputParameters: - type: object mapping: $. - name: list-authenticated-user-s-tips description: List the authenticated user's tips hints: readOnly: true destructive: false idempotent: true call: rest-my.listmytips outputParameters: - type: object mapping: $.