naftiko: 1.0.0-alpha2 info: label: Freshworks Freshchat API — Agents description: 'Freshworks Freshchat API — Agents. 2 operations. Lead operation: List all agents. Self-contained Naftiko capability covering one Freshworks business surface.' tags: - Freshworks - Agents created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: FRESHWORKS_API_KEY: FRESHWORKS_API_KEY capability: consumes: - type: http namespace: freshchat-agents baseUri: https://{domain}.freshchat.com/v2 description: Freshworks Freshchat API — Agents business capability. Self-contained, no shared references. resources: - name: agents path: /agents operations: - name: listagents method: GET description: List all agents outputRawFormat: json outputParameters: - name: result type: object value: $. - name: agents-agent_id path: /agents/{agent_id} operations: - name: getagent method: GET description: View an agent outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.FRESHWORKS_API_KEY}}' exposes: - type: rest namespace: freshchat-agents-rest port: 8080 description: REST adapter for Freshworks Freshchat API — Agents. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/agents name: agents description: REST surface for agents. operations: - method: GET name: listagents description: List all agents call: freshchat-agents.listagents outputParameters: - type: object mapping: $. - path: /v1/agents/{agent-id} name: agents-agent-id description: REST surface for agents-agent_id. operations: - method: GET name: getagent description: View an agent call: freshchat-agents.getagent outputParameters: - type: object mapping: $. - type: mcp namespace: freshchat-agents-mcp port: 9090 transport: http description: MCP adapter for Freshworks Freshchat API — Agents. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-all-agents description: List all agents hints: readOnly: true destructive: false idempotent: true call: freshchat-agents.listagents outputParameters: - type: object mapping: $. - name: view-agent description: View an agent hints: readOnly: true destructive: false idempotent: true call: freshchat-agents.getagent outputParameters: - type: object mapping: $.