@typeroll/mcp-server 0.45.74 → 0.45.75
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server.js +1 -0
- package/dist/tools/forms.js +12 -0
- package/dist/version.js +1 -1
- package/package.json +1 -1
package/dist/server.js
CHANGED
|
@@ -105,6 +105,7 @@ function effectFor(name) {
|
|
|
105
105
|
|| name === 'set_email_settings'
|
|
106
106
|
|| name === 'delete_email_settings'
|
|
107
107
|
|| name === 'send_test_email'
|
|
108
|
+
|| name === 'retry_form_intake_notification'
|
|
108
109
|
|| name === 'set_incoming_email_forwarding')
|
|
109
110
|
return 'admin';
|
|
110
111
|
// Compute an answer and write nothing, like the preview_* tools.
|
package/dist/tools/forms.js
CHANGED
|
@@ -135,6 +135,18 @@ export const formTools = [
|
|
|
135
135
|
return ok(res);
|
|
136
136
|
}),
|
|
137
137
|
},
|
|
138
|
+
{
|
|
139
|
+
name: 'list_form_intake_responses',
|
|
140
|
+
description: 'Administrator-only private questionnaire responses linked to one Page. Includes partial answers and notification status; never use for public profile content. Installation access requires forms:intake:read and is restricted to its own form.',
|
|
141
|
+
inputSchema: { form_id: z.string(), page_id: z.string(), after_id: z.string().optional() },
|
|
142
|
+
handler: withErrorBoundary(async ({ form_id, page_id, after_id }, { client, siteId }) => ok(await client.get(siteId, `forms/${encodeURIComponent(form_id)}/intake-responses`, { page_id, after_id }))),
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
name: 'retry_form_intake_notification',
|
|
146
|
+
description: 'Explicitly retry one private questionnaire notification after a confirmed failure, or dispatch its pending outbox event. Never resends accepted, in-flight or uncertain delivery. Requires site administrator access; installation callers need forms:intake:read and email:send.',
|
|
147
|
+
inputSchema: { form_id: z.string(), page_id: z.string(), submission_id: z.string().regex(/^[a-f0-9]{64}$/), event: z.enum(['first_answer', 'complete']) },
|
|
148
|
+
handler: withErrorBoundary(async ({ form_id, page_id, submission_id, event }, { client, siteId }) => ok(await client.post(siteId, `forms/${encodeURIComponent(form_id)}/intake-responses`, { submission_id, event }, { page_id }))),
|
|
149
|
+
},
|
|
138
150
|
{
|
|
139
151
|
name: 'list_form_submissions',
|
|
140
152
|
description: 'List submissions received for a form, newest first, cursor-paginated (cap 200 per page). Admins also see each submission\'s webhook delivery status. Use this to help a customer triage inbound contact / lead submissions; read_form_submission reads one.',
|
package/dist/version.js
CHANGED
package/package.json
CHANGED