open_document
Open and access Word documents for reading or editing by providing the file path to enable document interaction through natural language commands.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes |
Implementation Reference
- src/services/DocumentService.ts:55-64 (handler)Core handler function that opens a Word document by reading the file and extracting its raw text content using the mammoth library.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)Registers the 'open_document' tool with the MCP server, defining the input schema using Zod and implementing the execution logic by calling DocumentService.openDocument.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:28-36 (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 (handler)Handler dispatch in the HTTP server that calls DocumentService.openDocument for the 'open_document' tool.case 'open_document': result = await docService.openDocument(parameters.filePath); break;