@mcp-apps/pdf-tools-mcp-server
Version:
MCP server for interacting with PDF documents
48 lines (41 loc) • 1.44 kB
text/typescript
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import { extractTextTool } from "./tools/extract-text";
import { fillPdfFormTool, getPdfFormElementsTool } from "./tools/pdf-form";
async function main() {
try {
const server = new McpServer({
name: process.env.MCP_SERVER_NAME || "pdf-tools-mcp-server",
description: "PDF Tools MCP Server for document processing and analysis",
version: process.env.MCP_SERVER_VERSION || "1.0.0",
});
server.tool(
extractTextTool.name,
extractTextTool.description,
extractTextTool.parameters,
extractTextTool.handler
);
server.tool(
fillPdfFormTool.name,
fillPdfFormTool.description,
fillPdfFormTool.parameters,
fillPdfFormTool.handler
);
server.tool(
getPdfFormElementsTool.name,
getPdfFormElementsTool.description,
getPdfFormElementsTool.parameters,
getPdfFormElementsTool.handler
);
const transport = new StdioServerTransport();
await server.connect(transport);
console.error("PDF Tools MCP Server running on stdio");
}
catch (error: any) {
console.error("Error starting MCP server:", error.message);
console.error("Stack trace:", error.stack);
process.exit(1);
}
}
main();