naftiko: 1.0.0-alpha2 info: label: Fieldwire Forms API — Form Records description: Project-scoped Fieldwire form records captured in the field. tags: [Fieldwire, Forms, Records, Construction] created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: FIELDWIRE_ACCESS_TOKEN: FIELDWIRE_ACCESS_TOKEN FIELDWIRE_REGION_HOST: FIELDWIRE_REGION_HOST capability: consumes: - type: http namespace: forms-form-records baseUri: '{{env.FIELDWIRE_REGION_HOST}}' description: Fieldwire Form Records business capability. resources: - name: project-forms path: /api/v3/projects/{project_id}/forms operations: - name: getformsinproject method: GET description: Get Forms In Project inputParameters: [{ name: project_id, in: path, type: integer, required: true }] outputParameters: [{ name: result, type: array, value: $. }] - name: createforminproject method: POST description: Create Form In Project inputParameters: - { name: project_id, in: path, type: integer, required: true } - { name: body, in: body, type: object, required: true } outputParameters: [{ name: result, type: object, value: $. }] - name: project-form path: /api/v3/projects/{project_id}/forms/{form_id} operations: - name: getformbyid method: GET description: Get Form By ID inputParameters: - { name: project_id, in: path, type: integer, required: true } - { name: form_id, in: path, type: integer, required: true } outputParameters: [{ name: result, type: object, value: $. }] authentication: type: bearer value: '{{env.FIELDWIRE_ACCESS_TOKEN}}' placement: header exposes: - type: rest namespace: forms-form-records-rest port: 8080 description: REST adapter for Fieldwire Form Records. resources: - path: /v1/projects/{project_id}/forms name: project-forms operations: - method: GET name: getformsinproject call: forms-form-records.getformsinproject with: { project_id: rest.path.project_id } outputParameters: [{ type: array, mapping: $. }] - method: POST name: createforminproject call: forms-form-records.createforminproject with: { project_id: rest.path.project_id, body: rest.body } outputParameters: [{ type: object, mapping: $. }] - path: /v1/projects/{project_id}/forms/{form_id} name: project-form operations: - method: GET name: getformbyid call: forms-form-records.getformbyid with: { project_id: rest.path.project_id, form_id: rest.path.form_id } outputParameters: [{ type: object, mapping: $. }] - type: mcp namespace: forms-form-records-mcp port: 9090 transport: http description: MCP adapter for Fieldwire Form Records. tools: - name: fieldwire-list-form-records description: List form records captured in a Fieldwire project. hints: { readOnly: true, destructive: false, idempotent: true } call: forms-form-records.getformsinproject with: { project_id: tools.project_id } outputParameters: [{ type: array, mapping: $. }] - name: fieldwire-create-form-record description: Create a new form record (response) in a Fieldwire project. hints: { readOnly: false, destructive: false, idempotent: false } call: forms-form-records.createforminproject with: { project_id: tools.project_id, body: tools.body } outputParameters: [{ type: object, mapping: $. }] - name: fieldwire-get-form-record description: Get a single form record with its section records and values. hints: { readOnly: true, destructive: false, idempotent: true } call: forms-form-records.getformbyid with: { project_id: tools.project_id, form_id: tools.form_id } outputParameters: [{ type: object, mapping: $. }]