Skip to main content
Glama
snoopdave

Hello World MCP Server

by snoopdave

helloTool

Echo back user-provided messages or return a default greeting, enabling basic interaction testing with the Hello World MCP Server's simplest tool.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
messageNoMessage to echo back. If not provided, returns a default greeting.

Implementation Reference

  • The handler function that executes the 'helloTool' logic: echoes the input message or returns a default greeting 'Hello, World!', formats as text content, and handles errors by returning an error response.
    async ({ message }) => { try { const responseMessage = message ? `You said: ${message}` : "Hello, World!"; return { content: [ { type: "text", text: responseMessage } ] }; } catch (error) { return { content: [ { type: "text", text: `Error in hello tool: ${error instanceof Error ? error.message : String(error)}` } ], isError: true }; } }
  • Input schema for the 'helloTool' using Zod: an optional string 'message' parameter.
    { message: z.string().optional().describe("Message to echo back. If not provided, returns a default greeting.") },
  • The server.tool() call that registers the 'helloTool' with its name, input schema, and handler function.
    server.tool( "helloTool", { message: z.string().optional().describe("Message to echo back. If not provided, returns a default greeting.") }, async ({ message }) => { try { const responseMessage = message ? `You said: ${message}` : "Hello, World!"; return { content: [ { type: "text", text: responseMessage } ] }; } catch (error) { return { content: [ { type: "text", text: `Error in hello tool: ${error instanceof Error ? error.message : String(error)}` } ], isError: true }; } } );
  • src/index.ts:21-21 (registration)
    Invocation of registerHelloTool on the MCP server instance, completing the tool registration.
    registerHelloTool(server);
  • The exported registerHelloTool function that contains the logic to register the 'helloTool' on the server.
    export function registerHelloTool(server: McpServer): void { console.error('Registering Hello World tool...'); // Tool to echo a message or respond with "Hello, World!" server.tool( "helloTool", { message: z.string().optional().describe("Message to echo back. If not provided, returns a default greeting.") }, async ({ message }) => { try { const responseMessage = message ? `You said: ${message}` : "Hello, World!"; return { content: [ { type: "text", text: responseMessage } ] }; } catch (error) { return { content: [ { type: "text", text: `Error in hello tool: ${error instanceof Error ? error.message : String(error)}` } ], isError: true }; } } ); console.error('Hello World tool registered successfully'); }

Other Tools

Related Tools

  • @CaptainCrouton89/mcp-reddit
  • @currentspace/bootstrap_mcp
  • @gemyago/typescript-mcp-boilerplate
  • @piebro/echo-mcp-server-for-testing
  • @StevenStavrakis/mcp-starter-template
  • @nykznykz/mcp_example

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/snoopdave/mcp-hello-world-ts'

If you have feedback or need assistance with the MCP directory API, please join our Discord server