Simple TypeScript MCP Server
# Simple TypeScript MCP Server
A simple TypeScript template for building Model Context Protocol (MCP) servers with basic CRUD operations. This template provides a foundation for creating MCP tools that return JSON responses.
## Features
- Simple notes API with CRUD operations
- In-memory data storage
- TypeScript implementation
- JSON responses
- Ready for testing with Vitest
## Setup
```bash
npm install
```
## Running the server
```bash
npm run dev
```
## Building for production
```bash
npm run build
npm start
```
## Available Tools
This template includes the following MCP tools:
- `getNote`: Retrieve a note by ID
- `getAllNotes`: Get all notes
- `createNote`: Create a new note
- `updateNote`: Update an existing note
- `deleteNote`: Delete a note by ID
## Testing
Run the tests with:
```bash
npm test
```
Or watch mode:
```bash
npm run test:watch
```
## Customizing
You can use this template as a starting point for your own MCP server by modifying the tools in `src/server.ts` to fit your needs.TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose with no overlap: createNote, deleteNote, getAllNotes, getNote, and updateNote cover different CRUD operations on notes. The action (create, delete, get, update) and scope (all vs. single) make them easily distinguishable.
All tools follow a consistent verbNoun pattern in camelCase (e.g., createNote, deleteNote). The naming is uniform across all five tools, with no deviations in style or convention.
With 5 tools, this server is well-scoped for managing notes, covering essential CRUD operations. Each tool serves a clear purpose without redundancy, making the count appropriate for the domain.
The tool set provides complete CRUD coverage for notes: create, read (get and getAll), update, and delete. There are no obvious gaps, as all lifecycle operations are included, allowing agents to handle full workflows without dead ends.