MCP Server Starter
local-only server
The server can only run on the clientβs local machine because it depends on local resources.
Integrations
MCP Server Starter
A production-ready starter template for building Model Context Protocol (MCP) servers with TypeScript.
π Quick Start
- Clone the repository
- Install dependencies:Copy
β¨ 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
βοΈ Configuration
Creating New Tools
The project includes a script to help create new MCP tools:
This will:
- Create a new tool directory under
src/tools/<tool-name>
- Generate the basic tool structure including:
- index.ts (main implementation)
- schema.ts (JSON schema for tool parameters)
- test.ts (test file)
- Update the tools index file to export the new tool
Example:
π οΈ 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:
- Build the project:Copy
- Add to your Claude Desktop config:Copy
π 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
- Ensure you're logged in to npm:Copy
- Build the project:Copy
- Publish the package:Copy
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:
You must be authenticated.
A production-ready template for creating Model Context Protocol servers with TypeScript, providing tools for efficient testing, development, and deployment.
- π Quick Start
- β¨ Key Features
- π Project Structure
- βοΈ Configuration
- π οΈ Development
- π Version Management
- π¦ Publishing to npm
- Installing from npm (after publishing)