Labsco
GreatAuk logo

MCP Server Starter

โ˜… 4

from GreatAuk

A starter project for building MCP servers with TypeScript and Bun.

๐Ÿ”ฅโœ“ VerifiedFreeAdvanced setup

MCP Server Starter

smithery badge

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

Server Starter MCP server

โœจ 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

๐Ÿ› ๏ธ 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:
    // You only need the argument if you need to pass arguments to your server
    {
      "mcpServers": {
        "your-server-name": {
          "command": "node",
          "args": ["/path/to/your/project/dist/main.js", "some_argument"]
        }
      }
    }

๐Ÿ“œ 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.