naftiko: 1.0.0-alpha2 info: label: Guidewire PolicyCenter API — Policies description: 'Guidewire PolicyCenter API — Policies. 4 operations. Lead operation: List policies. Self-contained Naftiko capability covering one Guidewire business surface.' tags: - Guidewire - Policies created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GUIDEWIRE_API_KEY: GUIDEWIRE_API_KEY capability: consumes: - type: http namespace: policycenter-policies baseUri: https://{tenant}.guidewire.com/pc/rest/v1 description: Guidewire PolicyCenter API — Policies business capability. Self-contained, no shared references. resources: - name: policies path: /policies operations: - name: listpolicies method: GET description: List policies outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: pageSize in: query type: integer - name: pageNumber in: query type: integer - name: status in: query type: string - name: policyNumber in: query type: string - name: product in: query type: string - name: policies-policyId path: /policies/{policyId} operations: - name: getpolicy method: GET description: Get policy details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: policyId in: path type: string description: Unique policy identifier (PublicID) required: true - name: policies-policyId-transactions path: /policies/{policyId}/transactions operations: - name: listpolicytransactions method: GET description: List policy transactions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: policyId in: path type: string required: true - name: submissions-submissionId-issue path: /submissions/{submissionId}/issue operations: - name: issuepolicy method: POST description: Issue policy from submission outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: submissionId in: path type: string required: true authentication: type: bearer token: '{{env.GUIDEWIRE_API_KEY}}' exposes: - type: rest namespace: policycenter-policies-rest port: 8080 description: REST adapter for Guidewire PolicyCenter API — Policies. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/policies name: policies description: REST surface for policies. operations: - method: GET name: listpolicies description: List policies call: policycenter-policies.listpolicies with: pageSize: rest.pageSize pageNumber: rest.pageNumber status: rest.status policyNumber: rest.policyNumber product: rest.product outputParameters: - type: object mapping: $. - path: /v1/policies/{policyid} name: policies-policyid description: REST surface for policies-policyId. operations: - method: GET name: getpolicy description: Get policy details call: policycenter-policies.getpolicy with: policyId: rest.policyId outputParameters: - type: object mapping: $. - path: /v1/policies/{policyid}/transactions name: policies-policyid-transactions description: REST surface for policies-policyId-transactions. operations: - method: GET name: listpolicytransactions description: List policy transactions call: policycenter-policies.listpolicytransactions with: policyId: rest.policyId outputParameters: - type: object mapping: $. - path: /v1/submissions/{submissionid}/issue name: submissions-submissionid-issue description: REST surface for submissions-submissionId-issue. operations: - method: POST name: issuepolicy description: Issue policy from submission call: policycenter-policies.issuepolicy with: submissionId: rest.submissionId outputParameters: - type: object mapping: $. - type: mcp namespace: policycenter-policies-mcp port: 9090 transport: http description: MCP adapter for Guidewire PolicyCenter API — Policies. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-policies description: List policies hints: readOnly: true destructive: false idempotent: true call: policycenter-policies.listpolicies with: pageSize: tools.pageSize pageNumber: tools.pageNumber status: tools.status policyNumber: tools.policyNumber product: tools.product outputParameters: - type: object mapping: $. - name: get-policy-details description: Get policy details hints: readOnly: true destructive: false idempotent: true call: policycenter-policies.getpolicy with: policyId: tools.policyId outputParameters: - type: object mapping: $. - name: list-policy-transactions description: List policy transactions hints: readOnly: true destructive: false idempotent: true call: policycenter-policies.listpolicytransactions with: policyId: tools.policyId outputParameters: - type: object mapping: $. - name: issue-policy-submission description: Issue policy from submission hints: readOnly: false destructive: false idempotent: false call: policycenter-policies.issuepolicy with: submissionId: tools.submissionId outputParameters: - type: object mapping: $.