open_document
Access and interact with Word documents by specifying the file path, enabling AI-powered reading and editing through natural language.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes |
Implementation Reference
- src/services/DocumentService.ts:55-64 (handler)Core handler function that reads the document file and extracts its raw text content using the mammoth library, returning success or error response.async openDocument(filePath: string): Promise<APIResponse> { try { const buffer = await fs.readFile(filePath); const result = await mammoth.extractRawText({ buffer }); return { success: true, data: { content: result.value } }; } catch (error) { const err = error as Error; return { success: false, error: `打开文档失败: ${err.message}` }; } }
- src/mcp-server.ts:49-66 (registration)MCP server tool registration for 'open_document', including Zod input schema and thin wrapper that calls the DocumentService handler.server.tool( "open_document", { filePath: z.string(), }, async (params) => { const result = await docService.openDocument(params.filePath); return { content: [ { type: "text", text: result.success ? result.data!.content : result.error!, }, ], isError: !result.success, }; } );
- src/server.ts:27-37 (schema)JSON Schema definition for the 'open_document' tool input parameters in the HTTP server's tools list.{ name: 'open_document', description: '打开 Word 文档', parameters: { properties: { filePath: { type: 'string', description: '文档路径' }, }, required: ['filePath'], type: 'object', }, },
- src/server.ts:129-131 (registration)Dispatch handler registration in the HTTP server's switch statement for executing 'open_document' tool.case 'open_document': result = await docService.openDocument(parameters.filePath); break;