Skip to main content
Glama

TypeScript MCP Sample Server

by haneefdm

Sample

This is a Typescript sample for an MCP Server

Here's a tool creation example:

this.mcpServer.tool( 'completion', { model: z.string(), prompt: z.string(), options: z.object({ temperature: z.number().optional(), max_tokens: z.number().optional(), stream: z.boolean().optional() }).optional() }, async ({ model, prompt, options }) => { console.log(`Processing completion request for model: ${model}`); // Validate model if (!this.models.includes(model)) { throw new Error(`Model ${model} not supported`); } // Emit event for monitoring/metrics this.events.emit('request', { type: 'completion', model, timestamp: new Date() }); // In a real implementation, this would call an AI model // Here we just echo back parts of the request with a mock response const response = { id: `mcp-resp-${Date.now()}`, model, text: `This is a response to: ${prompt.substring(0, 30)}...`, usage: { promptTokens: prompt.split(' ').length, completionTokens: 20, totalTokens: prompt.split(' ').length + 20 } }; // Simulate network delay await new Promise(resolve => setTimeout(resolve, 500)); // Emit completion event this.events.emit('completion', { model, timestamp: new Date() }); return { content: [ { type: 'text', text: JSON.stringify(response) } ] }; } );

Install

Run the following command:

npm install

Run

npm start
Deploy Server
-
security - not tested
F
license - not found
-
quality - not tested

A sample MCP server implementation in TypeScript that demonstrates tool creation with a mock AI completion endpoint. Provides a basic example for developers to learn MCP server development patterns and tool registration.

  1. Install
    1. Run

      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/haneefdm/mymcp'

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