get-connector-form
Read a connector category's setup form, as the console's create page shows it: the fields to fill in, whether the provider signs the person in after the connector is created, and the defaults a new connector starts from. Needs the fabric:orchestrate.read grant.
The shape of result for get-connector-form is not recorded here: it was not captured against a live deployment. The fields inside form differ from one category to the next. Call it once and read what comes back rather than assuming a shape.
curl -sS -X POST https://fabric.wexa.ai/mcp/$FABRIC_PROJECT_ID \
-H "authorization: Bearer $FABRIC_API_KEY" \
-H "Mcp-Session-Id: $MCP_SESSION_ID" \
-H "content-type: application/json" -H "accept: application/json" \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"get-connector-form","arguments":{"category":"servicenow"}}}'Parameters
| Parameter | Type | Required | Notes |
|---|---|---|---|
category | string | Required | The connector category, such as servicenow, from list-connector-catalog. Case does not matter. Non-empty. A category with no form is refused (404). |
Errors
ValidationError(400): the platform refused the request, with its own reason.
More details
The result carries category, the category you asked about in lower case, and form, the category's template. Its ui_form lists the fields to fill in: each field's id, label and type, and whether it is required or secret. The rest are the defaults a new connector starts from. In Python read it as out["form"], and in TypeScript as result.form.
The form is the category's template. It never carries an existing connector's saved values, so it is safe to read for a connector that is already configured. Fill the form in and pass the values to configure-connector as credentials, keyed by each field's id. To read the forms of every category at once, call list-connector-catalog with forms.
The error code on the 422 is S4:validate-input, and the message on the 400 and 404 is the platform's own reason. Reading a form needs only fabric:orchestrate.read, and anyone with it may read one; saving the values is configure-connector, which only an admin may call. Not marked consequential. See also list-connector-access-scopes.
Every tool call works the same way: How every tool call works.