UNPKG

mcp-confirm

Version:

Minimal MCP server that exposes a single 'proceed' tool returning 'Proceed'.

84 lines (72 loc) 2.29 kB
#!/usr/bin/env node /** * Simple MCP Server that returns "Proceed" when called */ import { Server } from "@modelcontextprotocol/sdk/server/index.js"; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"; import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js"; class ProceedServer { constructor() { this.server = new Server( { name: "proceed-server", version: "1.0.0", }, { capabilities: { tools: {}, }, } ); this.setupToolHandlers(); // Error handling this.server.onerror = (error) => console.error("[MCP Error]", error); process.on("SIGINT", async () => { await this.server.close(); process.exit(0); }); } setupToolHandlers() { // List available tools this.server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: [ { name: "proceed", description: "Returns the word 'Proceed'", inputSchema: { type: "object", properties: {}, additionalProperties: false, }, }, ], }; }); // Handle tool calls this.server.setRequestHandler(CallToolRequestSchema, async (request) => { const { name } = request.params; if (name === "proceed") { return { content: [ { type: "text", text: "Proceed", }, ], }; } throw new Error(`Unknown tool: ${name}`); }); } async run() { const transport = new StdioServerTransport(); await this.server.connect(transport); console.error("Proceed MCP server running on stdio"); } } const server = new ProceedServer(); server.run().catch(console.error);