# GoFormz MCP by usefulapi (remote · goformz.usefulapi.io)

Read GoFormz templates, forms, groups and data sources; create and update forms and rows.

- Trust score: 18/100 (low)
- Change this week: −46
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `goformz.usefulapi.io`: 18/100 (this document), [markdown](https://verifymcp.io/servers/io-usefulapi-goformz/goformz.md), [page](https://verifymcp.io/servers/io-usefulapi-goformz/goformz)

## Channel facts

- Endpoint: `https://goformz.usefulapi.io/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.11.2`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 46/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.
  - HTTPS enforcement could not be verified: the plaintext port redirected somewhere other than https, so enforcement is unproven.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 0/100
  - Transport check failed: declared streamable-http, but the endpoint redirected instead of responding directly.
- **Schema Quality & AI Usability**: 0/100
  - Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Tool Safety**: 0/100
  - Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Capabilities**: 0/100
  - Capabilities not yet verified: we couldn't read the endpoint's capabilities.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### How do I install the GoFormz MCP by usefulapi server?

GoFormz MCP by usefulapi is a hosted endpoint at https://goformz.usefulapi.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http io-usefulapi-goformz 'https://goformz.usefulapi.io/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "io-usefulapi-goformz": {
      "url": "https://goformz.usefulapi.io/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "io-usefulapi-goformz": {
      "type": "http",
      "url": "https://goformz.usefulapi.io/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.io-usefulapi-goformz]
url = "https://goformz.usefulapi.io/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-usefulapi-goformz": {
      "type": "remote",
      "url": "https://goformz.usefulapi.io/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add io-usefulapi-goformz --url 'https://goformz.usefulapi.io/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  io-usefulapi-goformz:
    url: "https://goformz.usefulapi.io/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "io-usefulapi-goformz": {
      "Transport": "http",
      "Url": "https://goformz.usefulapi.io/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add io-usefulapi-goformz -t streamable-http -u 'https://goformz.usefulapi.io/mcp'
```

### Other

```json
{
  "mcpServers": {
    "io-usefulapi-goformz": {
      "type": "http",
      "url": "https://goformz.usefulapi.io/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-02 (score 18, −50)

- [security regression] Endpoint reachability: reachable → not serving MCP
- [security regression] Tool safety: pass → unverified
- [security regression] Authorization: pass → unverified
- [security regression] Stability: 0.20 → unverified
- [functional regression] Schema quality: 100 → unverified
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified

### 2026-10-31 (score 68, +3)

- [security improvement] Authorization: partial → pass
- [functional improvement] MCP protocol: fail → pass
- [functional] New prompt “correct_a_form_s_field_values”
- [functional] New prompt “create_and_assign_a_draft_form”
- [functional] New prompt “export_a_finished_form_to_pdf”
- [functional] New prompt “find_completed_forms_for_a_template”
- [functional] New prompt “keep_dropdown_lookup_tables_up_to_date”
- [functional] New prompt “reopen_or_complete_a_form”
- [functional] MCP protocol version: 2025-06-18 → 2025-11-25
- [functional] Server version: 1.7.0 → 1.9.0
- [functional] Server version: 1.6.0 → 1.7.0
- [functional] Server version: 1.5.2 → 1.6.0

### 2026-10-30 (score 65, +1)

- [functional] Server version: 1.5.1 → 1.5.2
- [functional] Server version: 1.5.0 → 1.5.1

### 2026-10-29 (score 64, 0)

- [functional] Server version: 1.4.0 → 1.5.0
- [functional] Server version: 1.3.0 → 1.4.0

### 2026-10-28 (score 64, +1)

- [functional] Server version: 1.1.0 → 1.3.0

### 2026-10-27 (score 63, 0)

- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: 1.0.0 → 1.1.0

### 2026-10-26 (score 63)

First indexed and scored.

## MCP tools (23)

### `goformz_list_templates` (~103 tokens)

List templates

List the form templates of the account (id, name). Use a template id to list its forms or to create a form. GET /v2/templates.

Input parameters:

- `name` (string): Only items whose name starts with this text.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `page_size` (integer): Results per page, 1-100 (default 25).

### `goformz_get_template` (~38 tokens)

Get a template

Get one template by id. GET /v2/templates/{id}.

Input parameters:

- `template_id` (string, required): Template id (a GUID).

### `goformz_list_forms` (~186 tokens)

List forms

List forms (filled-in instances of templates) with name, status (draft or complete), last update date and assignment. Field values are NOT included: call goformz_get_form for those. Filter by name prefix, status or last-updated date. GET /v2/formz.

Input parameters:

- `direction` (string): Sort direction (default asc).
- `name` (string): Only items whose name starts with this text.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `page_size` (integer): Results per page, 1-100 (default 25).
- `sort` (string): Sort field.
- `status` (string): Only draft or only complete forms.
- `updated_after` (string): Only forms last updated after this date or date-time (ISO 8601).

### `goformz_list_template_forms` (~153 tokens)

List forms of a template

List the forms created from one template (name, status, last update date). Field values are not included. GET /v2/templates/{templateId}/formz.

Input parameters:

- `direction` (string): Sort direction (default asc).
- `name` (string): Only items whose name starts with this text.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `page_size` (integer): Results per page, 1-100 (default 25).
- `sort` (string): Sort field.
- `status` (string): Only draft or only complete forms.
- `template_id` (string, required): Template id (a GUID).

### `goformz_get_form` (~84 tokens)

Get a form

Get one form with all its field values (text, numbers, dates, checkboxes, table rows, signature/image references), status, assignment and template version. GET /v2/formz/{id}.

Input parameters:

- `form_id` (string, required): Form id (a GUID).
- `include_deleted` (boolean): Also return a form that has been deleted (default false).

### `goformz_list_groups` (~89 tokens)

List groups

List user groups (forms can be assigned to a group). GET /v2/groups.

Input parameters:

- `name` (string): Only items whose name starts with this text.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `page_size` (integer): Results per page, 1-100 (default 25).

### `goformz_get_group` (~38 tokens)

Get a group

Get one group by id. GET /v2/groups/{id}.

Input parameters:

- `group_id` (string, required): Group id (a GUID).

### `goformz_list_users` (~103 tokens)

List users

List the account's users (id, username, first and last name). A user id is needed to assign a new form. GET /v2/users.

Input parameters:

- `name` (string): Only items whose name starts with this text.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `page_size` (integer): Results per page, 1-100 (default 25).

### `goformz_get_user` (~38 tokens)

Get a user

Get one user by id. GET /v2/users/{id}.

Input parameters:

- `user_id` (string, required): User id (a GUID).

### `goformz_list_datasources` (~95 tokens)

List data sources

List data sources (lookup tables that feed dropdown and database fields in templates). GET /v2/datasources.

Input parameters:

- `name` (string): Only items whose name starts with this text.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `page_size` (integer): Results per page, 1-100 (default 25).

### `goformz_get_datasource` (~49 tokens)

Get a data source

Get one data source: its name, columns and indexed columns. GET /v2/datasources/{id}.

Input parameters:

- `datasource_id` (string, required): Data source id (a GUID).

### `goformz_list_datasource_rows` (~138 tokens)

List data source rows

List the rows of a data source. Each row has an id, a keyColumn (the lookup key) and a value (a JSON-encoded array of the column values). GET /v2/datasources/{dataSourceId}/rows.

Input parameters:

- `datasource_id` (string, required): Data source id (a GUID).
- `name` (string): Only rows whose key column starts with this text.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `page_size` (integer): Results per page, 1-100 (default 25).

### `goformz_get_datasource_row` (~65 tokens)

Get a data source row

Get one data source row by id. GET /v2/datasources/{dataSourceId}/rows/{rowId}.

Input parameters:

- `datasource_id` (string, required): Data source id (a GUID).
- `row_id` (string, required): Row id (a GUID).

### `goformz_list_webhooks` (~108 tokens)

List webhooks

List the webhooks that call a URL when a form of a template is completed (event form.complete). Read-only. GET /v2/webhooks.

Input parameters:

- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `page_size` (integer): Results per page, 1-100 (default 25).
- `template_id` (string): Only webhooks for this template (the webhook's entity id).

### `goformz_get_queue_item` (~93 tokens)

Get an async job status

Check a queued job, for example the PDF export started by goformz_export_form_pdf. Returns status (and progressIndicator); when it is Completed, redirectUrl points at the result (a /v2/files/{id} URL: pass that id to goformz_get_file). GET /v2/queue/{id}.

Input parameters:

- `queue_id` (string, required): Queue item id (a GUID).

### `goformz_get_file` (~77 tokens)

Get a file

Get a file summary: type, created date and a temporary download `link` (it expires; see linkExpiration). Use it for an exported PDF or a form image/signature. The file itself is not downloaded here. GET /v2/files/{id}.

Input parameters:

- `file_id` (string, required): File id (a GUID).

### `goformz_get_pdf_export` (~77 tokens)

Get a PDF export

Get the metadata of a PDF export of a form, including the temporary download `link` once the PDF is ready. GET /v2/formz/{formId}/exports/{exportId}.

Input parameters:

- `export_id` (string, required): Export id (a GUID).
- `form_id` (string, required): Form id (a GUID).

### `goformz_export_form_pdf` (~124 tokens)

Export a form to PDF

WRITE: start a PDF export of a form (the form is not changed; GoFormz creates a PDF file). The reply gives the queue_id of the job: poll goformz_get_queue_item until Completed, then read the file with goformz_get_file using the id in redirectUrl. POST /v2/formz/{formId}/exports.

Input parameters:

- `form_id` (string, required): Form id (a GUID).
- `pages` (string): Pages to include, for example "1-5,7,9" (default all pages).

### `goformz_create_form` (~247 tokens)

Create a form

WRITE: create a new draft form from a template, optionally pre-filled and assigned to a user or group (assignment is only possible at creation). Field keys are the template's field names (or ids) and the values are field objects such as {"text": "Acme"}; see goformz_get_form on an existing form of the template for each field's shape. Each call creates another form. POST /v2/formz.

Input parameters:

- `assign_to_id` (string): User or group id (a GUID).
- `assign_to_type` (string): Assign the form to a User or a Group (needs assign_to_id).
- `fields` (object): Field values keyed by field name or id, for example {"PO #": {"value": "1223333"}, "Customer": {"text": "Acme"}}.
- `name` (string): Form name. Ignored unless override_default_form_name is true: GoFormz names forms by the template's rule.
- `override_default_form_name` (boolean): Use `name` instead of the template's automatic form name (default false).
- `template_id` (string, required): Template id (a GUID).

### `goformz_update_form` (~136 tokens)

Update a form

WRITE: change a form's name and/or field values (partial update: only the fields given change; a null value clears a field). Does NOT change the status and does not trigger workflows; to re-run completion workflows use goformz_set_form_status draft, update, then complete. PATCH /v2/formz/{id}.

Input parameters:

- `fields` (object): Field values keyed by field name or id, for example {"PO #": {"value": "1223333"}}; null clears the field.
- `form_id` (string, required): Form id (a GUID).
- `name` (string): New form name.

### `goformz_set_form_status` (~86 tokens)

Complete or re-open a form

WRITE: mark a form complete (this can trigger the template's completion workflows and webhooks) or re-open it as a draft so it can be edited. POST /v2/formz/{id}/status.

Input parameters:

- `form_id` (string, required): Form id (a GUID).
- `status` (string, required): complete to finish the form, draft to re-open it.

### `goformz_create_datasource_row` (~120 tokens)

Add a data source row

WRITE: add a row to a data source. key_column is the lookup key; values are the column values in the data source's column order (see goformz_get_datasource). Each call adds another row. POST /v2/datasources/{dataSourceId}/rows.

Input parameters:

- `datasource_id` (string, required): Data source id (a GUID).
- `key_column` (string, required): The row's lookup key (the value of the key column).
- `values` (array, required): Column values in column order, as strings.

### `goformz_update_datasource_row` (~108 tokens)

Update a data source row

WRITE: replace a data source row's key and values (the whole row is replaced; send every column). PATCH /v2/datasources/{dataSourceId}/rows/{rowId}.

Input parameters:

- `datasource_id` (string, required): Data source id (a GUID).
- `key_column` (string, required): The row's lookup key.
- `row_id` (string, required): Row id (a GUID).
- `values` (array, required): All column values in column order, as strings.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/io-usefulapi-goformz/goformz#diagnostics

## Score history

- 2026-11-05: 18
- 2026-11-04: 18
- 2026-11-03: 18
- 2026-11-02: 18
- 2026-11-01: 68
- 2026-10-31: 68
- 2026-10-30: 65
- 2026-10-29: 64
- 2026-10-28: 64
- 2026-10-27: 63
- 2026-10-26: 63

## Common questions

### What is the GoFormz MCP by usefulapi server?

GoFormz MCP by usefulapi is listed in the public MCP registry as io.usefulapi/goformz. Read GoFormz templates, forms, groups and data sources; create and update forms and rows. This page covers its hosted endpoint (https://goformz.usefulapi.io/mcp).

### Is the GoFormz MCP by usefulapi server safe to use?

GoFormz MCP by usefulapi scores 18 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the GoFormz MCP by usefulapi server expose?

GoFormz MCP by usefulapi exposes 23 tools: goformz_list_templates, goformz_get_template, goformz_list_forms, goformz_list_template_forms, goformz_get_form, and 18 more. Their descriptions and schemas cost roughly 2,355 tokens of context every time the server is loaded.

### Does the GoFormz MCP by usefulapi server require authentication?

Its publisher declares no required credentials for GoFormz MCP by usefulapi. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.

### Is the GoFormz MCP by usefulapi server still maintained?

GoFormz MCP by usefulapi is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://goformz.usefulapi.io/mcp
- Repository: https://github.com/m190/usefulapi-mcp
- Website: https://usefulapi.io/goformz/
- Changelog RSS feed: https://verifymcp.io/servers/io-usefulapi-goformz/goformz.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-usefulapi-goformz/goformz.json
- HTML version of this page: https://verifymcp.io/servers/io-usefulapi-goformz/goformz
