mcp-ts-template
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-ts-templateadd 3 and 5"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-ts-template
Production-ready Model Context Protocol (MCP) server template in TypeScript, built on the official @modelcontextprotocol/sdk. Ships an example tool, resource, and prompt.
Use this template
gh repo create my-mcp --template vidyasagarr7/mcp-ts-templateRelated MCP server: MCP Server Starter
Layout
src/
server.ts # stdio entry point (transport wiring only)
index.ts # createServer(): registers tools/resources/prompts
core/tools.ts # pure domain logic (testable, no MCP concerns)
version.ts
tests/ # vitest specsGolden rule: transport in server.ts, registration in index.ts, logic in core/.
Develop
npm install
npm run dev # run server from source over stdio
npm test # vitest
npm run typecheck
npm run build
npm run inspect # launch MCP Inspector against the built serverTry the server by hand
npm run build
# Initialize handshake over stdio:
printf '%s\n' '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"probe","version":"0"}}}' | node dist/server.jsRegister a new tool
Add pure logic to
src/core/tools.ts.Add a unit test in
tests/.Register it in
src/index.tsviaserver.registerTool(...)with azodinput schema.
Connect from a client
Point any MCP client (Claude Desktop, MCP Inspector, etc.) at the built binary:
{
"mcpServers": {
"my-mcp": { "command": "node", "args": ["/abs/path/dist/server.js"] }
}
}Make it yours (rename checklist)
package.json:name,description,binkey,repository,keywordssrc/index.ts:new McpServer({ name: ... })Replace the example
addtool /greetingresource /summarizeprompt with your ownKeep transport in
server.ts, registration inindex.ts, logic incore/
License
MIT
Available Tools
1 tooladdAddA
Add two numbers
| Name | Required | Description | Default |
|---|---|---|---|
| a | Yes | first addend | |
| b | Yes | second addend |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It accurately describes a pure function with no side effects. However, it does not mention that the result is a number or potential overflow, but the schema implies numeric return.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of four words, perfectly concise with no wasted words. It front-loads the action and object.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple arithmetic tool with two clear number parameters and no output schema, the description is complete. It covers purpose and behavior adequately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions 'first addend' and 'second addend'. The description adds no additional meaning beyond these, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Add two numbers' clearly states the verb (Add) and resource (two numbers), leaving no ambiguity about the tool's purpose. It is specific and need not differentiate from siblings as none exist.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description doesn't provide explicit when-to-use or alternative guidance, but given the tool's simplicity and absence of siblings, the usage context is obvious. It misses an opportunity to mention that this is for simple numeric addition only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v0.1.0- First observed
add
TDQS
Only one tool exists, so there is no possibility of confusion between tools. The tool's purpose is clear and unambiguous.
With a single tool, naming is trivially consistent. The name 'add' follows a simple verb pattern appropriate for its function.
As a template server, a single tool is slightly minimal but acceptable. It provides a basic starting point for extension.
Within the narrow domain of adding two numbers, the tool is complete. However, for a broader utility server, it lacks other arithmetic operations like subtract, multiply, or divide.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Kickstart development with a customizable TypeScript template featuring sample tools for greeting,…
A Model Context Protocol server for Wix AI tools
A simple Typescript MCP server built using the official MCP Typescript SDK and smithery/cli. This…
Related MCP Servers
- AlicenseCqualityDmaintenanceA production-ready template for creating Model Context Protocol servers with TypeScript, providing tools for efficient testing, development, and deployment.17047MIT
- AlicenseCqualityDmaintenanceA TypeScript-based template for building Model Context Protocol servers, featuring fast testing, automated version management, and a clean structure for MCP tool implementations.1704MIT
- FlicenseNot gradedqualityDmaintenanceA TypeScript template for building Model Context Protocol servers that provides a structured foundation with automated tools, testing, and synchronization capabilities.7-
- FlicenseNot gradedqualityDmaintenanceA customizable, production-ready template for building Model Context Protocol servers with dual transport support (stdio and HTTP), TypeScript, Docker support, and extensible architecture for tools, resources, and prompts.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/vidyasagarr7/mcp-ts-template'
If you have feedback or need assistance with the MCP directory API, please join our Discord server