MCP Server Starter
A TypeScript starter project for building Model Context Protocol (MCP) servers with Bun.
MCP Server Starter
A production-ready starter template for building Model Context Protocol (MCP) servers with TypeScript.
🚀 Quick Start
- Clone the repository
- 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:
- 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:
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:
- Build the project:
bun run build - 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
- Ensure you're logged in to npm:
npm login - Build the project:
bun run build - 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:
// You only need the argument if you need to pass arguments to your server
{
"mcpServers": {
"your-server-name": {
"command": "npx",
"args": ["-y", "your-package-name", "some_argument"]
}
}
}
相關伺服器
Scout Monitoring MCP
贊助Put performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
贊助Access financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Model Context Protocol (MCP)
Interact with Gibson projects to create/update projects, explain database/API interactions, and write code within your IDE.
MCP Dev Utils
A modular and extensible MCP server with essential utilities for developers.
MCP Server + Asgardeo
A sample MCP server that uses Asgardeo for client authentication and connection.
Android MCP
An MCP server that provides control over Android devices through ADB. Offers device screenshot capture, UI layout analysis, package management, and ADB command execution capabilities.
Leeroopedia
The Brain that turns Generalist Agents into ML Experts.
SpecBridge
Automatically generates MCP tools from OpenAPI specifications by scanning a folder for spec files. No configuration is needed and it supports authentication via environment variables.
Lean LSP
Interact with the Lean theorem prover via the Language Server Protocol (LSP), enabling LLM agents to understand, analyze, and modify Lean projects.
Remote MCP Server on Cloudflare
A customizable remote MCP server for deployment on Cloudflare Workers, operating without authentication.
Algorand
A comprehensive MCP server for tooling interactions(40+) and resource accessibility(60+) plus many useful prompts to interact with Algorand Blockchain.
Juniper Junos MCP Server
An MCP server for interacting with Juniper Junos network devices using LLMs.