| | import { z } from "zod"; |
| | import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; |
| |
|
| | |
| | |
| | |
| | export function register(mcp: McpServer): void { |
| | |
| | mcp.tool( |
| | "hello", |
| | "A simple greeting tool that welcomes users to the vortex MCP Server. Use this to verify connectivity.", |
| | { name: z.string().describe("The name of the user to greet") }, |
| | async ({ name }) => ({ |
| | content: [{ type: "text", text: `Hello, ${name}! Welcome to the vortex MCP Server. I can help you fetch competitive programming data from LeetCode, Codeforces, AtCoder, CodeChef, and GeeksforGeeks.` }], |
| | }) |
| | ); |
| |
|
| | |
| | mcp.tool( |
| | "server_info", |
| | "Returns information about the vortex MCP Server including version, supported platforms, and available API categories.", |
| | {}, |
| | async () => ({ |
| | content: [{ |
| | type: "text", |
| | text: JSON.stringify({ |
| | name: "vortex MCP Server", |
| | version: "1.0.0", |
| | supportedPlatforms: [ |
| | { name: "LeetCode", tools: 22 }, |
| | { name: "Codeforces", tools: 15 }, |
| | { name: "AtCoder", tools: 5 }, |
| | { name: "CodeChef", tools: 1 }, |
| | { name: "GeeksforGeeks", tools: 5 } |
| | ], |
| | totalTools: 50, |
| | capabilities: ["User ratings", "Contest history", "Submissions", "Problem sets", "Leaderboards"] |
| | }, null, 2) |
| | }], |
| | }) |
| | ); |
| | } |
| |
|