docwriter-mcp-server
Version:
A Model Context Protocol (MCP) server for programmatic creation, modification, and compilation of structured LaTeX documents. Enables AI agents and automated workflows to generate reports, articles, and papers from templates, with secure, structured conte
56 lines (55 loc) • 2.02 kB
TypeScript
/**
* @fileoverview Core logic for the docwriter_update_document_block tool.
* This module handles updating a specific content block within an existing LaTeX document.
* @module src/mcp-server/tools/updateDocumentBlock/logic
*/
import { z } from "zod";
import { type RequestContext } from "../../../utils/index.js";
/**
* Zod schema for validating input arguments for the `docwriter_update_document_block` tool.
*/
export declare const UpdateDocumentBlockInputSchema: z.ZodObject<{
documentId: z.ZodString;
blocks: z.ZodArray<z.ZodObject<{
blockName: z.ZodString;
content: z.ZodString;
}, "strip", z.ZodTypeAny, {
content: string;
blockName: string;
}, {
content: string;
blockName: string;
}>, "many">;
}, "strip", z.ZodTypeAny, {
documentId: string;
blocks: {
content: string;
blockName: string;
}[];
}, {
documentId: string;
blocks: {
content: string;
blockName: string;
}[];
}>;
/**
* TypeScript type inferred from `UpdateDocumentBlockInputSchema`.
*/
export type UpdateDocumentBlockInput = z.infer<typeof UpdateDocumentBlockInputSchema>;
/**
* Defines the structure of the JSON payload returned by the `updateDocumentBlockLogic` tool handler.
*/
export interface UpdateDocumentBlockResponse {
status: "updated";
documentId: string;
blocksUpdated: string[];
}
/**
* Processes the core logic for the `docwriter_update_document_block` tool.
* @param {UpdateDocumentBlockInput} params - The validated input parameters for the tool.
* @param {RequestContext} context - The request context for logging and tracing.
* @returns {Promise<UpdateDocumentBlockResponse>} A promise that resolves to an object containing the update status.
* @throws {McpError} If the document or block is not found, or a file system error occurs.
*/
export declare function updateDocumentBlockLogic(params: UpdateDocumentBlockInput, context: RequestContext): Promise<UpdateDocumentBlockResponse>;