MCP ExplorerExplorer

Mcp Starter Template

@StevenStavrakison a year ago
27 MIT
FreeCommunity
AI Systems
An opinionated starter template for making Model Context Protocol (MCP) servers

Overview

What is Mcp Starter Template

mcp-starter-template is a production-ready starter template designed for building Model Context Protocol (MCP) servers using TypeScript. It provides a structured approach to creating MCP servers with essential tools and configurations.

Use cases

Use cases for mcp-starter-template include developing custom MCP tools, setting up a robust server environment for data processing, and integrating with Claude Desktop for enhanced functionality.

How to use

To use mcp-starter-template, clone the repository and install the dependencies using ‘bun install’. You can create new MCP tools with the provided script and manage your development environment with commands for testing, formatting, and linting.

Key features

Key features include fast testing and development with Bun, linting and formatting with Biome, automated version management using standard-version, and a clean, maintainable project structure.

Where to use

undefined

Content

MCP Server Starter

A production-ready starter template for building Model Context Protocol (MCP) servers with TypeScript.

🚀 Quick Start

  1. Clone the repository
  2. Install dependencies:
    bun install
    

✨ Key Features

  • Bun for fast testing and development
  • Biome for linting and formatting
  • Automated version management with standard-version
  • Clean, maintainable project structure

📂 Project Structure

mcp-starter/
├── src/
│   ├── tools/          # MCP tools implementation
│   ├── utils/          # Shared utilities
│   ├── main.ts         # Server entry point
│   └── types.ts        # Shared type definitions
├── tests/              # Test files
├── biome.json          # Linting configuration
├── tsconfig.json       # TypeScript configuration
└── package.json        # Project dependencies

⚙️ Configuration

Creating New Tools

The project includes a script to help create new MCP tools:

bun run scripts/create-tool.ts <tool-name>

This will:

  1. Create a new tool directory under src/tools/<tool-name>
  2. Generate the basic tool structure including:
    • index.ts (main implementation)
    • schema.ts (JSON schema for tool parameters)
    • test.ts (test file)
  3. Update the tools index file to export the new tool

Example:

bun run scripts/create-tool.ts weather

🛠️ Development

  • Run tests: bun test
  • Format code: bun run format
  • Lint code: bun run lint
  • Build project: bun run build

To add your development MCP server to Claude Desktop:

  1. Build the project:
    bun run build
    
  2. Add to your Claude Desktop config:

📜 Version Management

This project uses standard-version for automated version management. Run bun run release to create a new version.

Commit Message Format

  • feat: New feature (bumps minor version)
  • fix: Bug fix (bumps patch version)
  • BREAKING CHANGE: Breaking change (bumps major version)

📦 Publishing to npm

  1. Ensure you’re logged in to npm:
    npm login
    
  2. Build the project:
    bun run build
    
  3. Publish the package:
    npm publish
    

Remember to update the version number using bun run release before publishing new versions.

Installing from npm (after publishing)

Add to your Claude Desktop config:

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers