Enforces conventional commit message formats through commitlint.config.js configuration
Provides code quality checks and automatic fixes for source and test files
Integrates with git workflow through Husky hooks for pre-commit and pre-push validation
Handles test execution with TypeScript support, including watch mode and coverage reporting
Manages dependencies and provides scripts for building, testing, and maintenance tasks
Formats code automatically on staged files and through dedicated commands
Powers the development server for running TypeScript code without prior compilation
Provides strict type checking and configuration for the entire project
My first MCP server
Development
Scripts
Build & Run
npm start
- Run the built application from dist/npm run start:dev
- Run development server with ts-nodenpm run build
- Build project using tsup (generates CommonJS output with sourcemaps)
Testing
npm run test
- Run Jest testsnpm run test:watch
- Run Jest in watch mode for developmentnpm run test:coverage
- Run tests with coverage report
Code Quality
npm run lint
- Run ESLint on source and test filesnpm run lint:fix
- Fix ESLint issues automaticallynpm run format
- Format code with Prettiernpm run type-check
- Run TypeScript type checking without emitting files
Maintenance
npm run audit:check
- Check for security vulnerabilities using audit-cinpm run dep:check
- Check for outdated dependenciesnpm run dep:update
- Update dependencies to latest versionsnpm run release
- Create a release using standard-versionnpm run snapshot
- Create a snapshot prerelease
Project Structure
Configuration
TypeScript
The project uses strict TypeScript configuration with enhanced checking:
- Path Mapping: Use
#src/*
aliases for clean imports - Strict Mode: Enhanced type checking including
noUncheckedIndexedAccess
- Target: ES2022 with source maps and declarations enabled
Build
Currently builds CommonJS only. ESM and type definitions can be enabled by modifying tsup.config.ts
.
Testing
Jest is configured with:
- ts-jest preset for TypeScript support
- Node environment
- Path alias support (
#src/
and#test/
) - Coverage collection from all
src/
files
Git Hooks
Pre-commit hooks automatically:
- Run ESLint with auto-fix on staged files
- Format code with Prettier on staged files
- Validate commit messages using conventional commits
Pre-push hooks automatically:
- Run full ESLint checks on all source and test files
- Execute complete Jest test suite
- Check for outdated dependencies
- Perform security audit checks
Development Workflow
- Make Changes: Edit files in
src/
directory - Test: Run
npm run test:watch
for continuous testing - Lint: Code is automatically linted on save and commit
- Build: Run
npm run build
to verify production build - Commit: Use conventional commit messages (enforced by commitlint)
Contributing
- Install dependencies:
npm install
- Create a feature branch:
git checkout -b feature/my-feature
- Make your changes and add tests
- Ensure all checks pass:
npm run lint && npm run test && npm run build
- Commit using conventional commits
- Push and create a pull request
License
MIT License - see LICENSE file for details.
Author
Eugen Klymniuk
Generated with ❤️ using TypeScript and modern tooling.
This server cannot be installed
A TypeScript-based server project with comprehensive development tooling including testing, linting, and build configurations.
Related MCP Servers
- -securityFlicense-qualityThis TypeScript-based server implements a simple notes system, allowing users to create and manage text notes and generate summaries, showcasing core MCP concepts.Last updated -1410TypeScript
- AsecurityAlicenseAqualityA production-ready template for creating Model Context Protocol servers with TypeScript, providing tools for efficient testing, development, and deployment.Last updated -132732JavaScriptMIT License
- AsecurityAlicenseAqualityA TypeScript-based template for building Model Context Protocol servers, featuring fast testing, automated version management, and a clean structure for MCP tool implementations.Last updated -13274TypeScriptMIT License
- AsecurityAlicenseAqualityA TypeScript-based server that enables interaction with Jira, providing tools to execute JQL queries, manage tickets, list projects and statuses through natural language.Last updated -1124JavaScriptMIT License