list_forms
Retrieve all forms in your workspace using Tally MCP. Simplify form management by listing and organizing forms without manual intervention.
Instructions
List all forms in the workspace
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/tools/form_retrieval_tool.ts:12-26 (handler)FormRetrievalTool class defines the 'list_forms' tool implementation. The execute method (line 22-25) is the primary handler that invokes TallyApiService.getForms with the input arguments.export class FormRetrievalTool implements Tool<FormRetrievalArgs, TallyFormsResponse> { public readonly name = 'list_forms'; public readonly description = 'Lists Tally forms.'; private tallyApiService: TallyApiService; constructor(apiClientConfig: TallyApiClientConfig) { this.tallyApiService = new TallyApiService(apiClientConfig); } public async execute(args: FormRetrievalArgs): Promise<TallyFormsResponse> { console.log(`Executing form retrieval tool with args: ${JSON.stringify(args)}`); return this.tallyApiService.getForms(args); } }
- Input schema (TypeScript interface) for the list_forms tool defining optional pagination and filtering parameters.export interface FormRetrievalArgs { page?: number; limit?: number; workspaceId?: string; }
- src/server.ts:1282-1292 (registration)Registration of FormRetrievalTool instance in MCPServer.tools.form_retrieval during server initialization.this.tools = { workspaceManagement: new WorkspaceManagementTool(apiClientConfig), template: new TemplateTool(), form_creation: new FormCreationTool(apiClientConfig), form_modification: new FormModificationTool(apiClientConfig), form_retrieval: new FormRetrievalTool(apiClientConfig), form_sharing: new FormSharingTool(tallyApiClient), form_permissions: new FormPermissionManager(apiClientConfig), submission_analysis: new SubmissionAnalysisTool(apiClientConfig), diagnostic: new DiagnosticTool(), };
- src/server.ts:1608-1627 (handler)MCP server dispatch handler in _handleToolsCall for 'list_forms': delegates to tool instance execute() and formats MCP response.case 'list_forms': if (this.tools?.form_retrieval) { const forms = await this.tools.form_retrieval.execute(args || {}); return { content: [ { type: 'text', text: JSON.stringify(forms, null, 2) } ] }; } return { content: [ { type: 'text', text: 'Form retrieval functionality is not implemented' } ] };
- src/server.ts:1424-1433 (schema)JSON Schema definition for list_forms tool provided in MCP tools/list response (note: slightly differs from TS interface using offset instead of page).name: 'list_forms', description: 'List all forms in the authenticated user\'s Tally account', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum number of forms to return', minimum: 1, maximum: 100 }, offset: { type: 'number', description: 'Number of forms to skip for pagination', minimum: 0 } } } },