# Contributing to Code-MCP
Thank you for your interest in contributing to **Code-MCP**! ๐
Help us build the ultimate AI coding brain.
## Development Setup
1. **Clone the repository**:
```bash
git clone https://github.com/millsydotdev/Code-MCP.git
cd Code-MCP
```
2. **Install dependencies**:
```bash
npm install
```
_We use standard `npm`._
3. **Build the project**:
```bash
npm run build
```
_This uses `tsc` to compile TypeScript to `dist/`._
4. **Verify changes**:
```bash
npm run lint # Check formatting
npm run build # Ensure implementation matches interfaces
```
_Note: We currently don't have a dedicated test runner (e.g. Jest), so rely on the build system and manual verification._
## Project Structure
- `src/tools/`: Implementation of MCP tools.
- `src/prompts.ts`: Definition of smart prompts.
- `src/index.ts`: Tool registration and server entry point.
- `src/data/`: JSON registries for languages, frameworks, etc.
## Adding a New Tool
1. Define the input schema (Zod) in the appropriate category file in `src/tools/`.
2. Implement the handler function.
3. Export both schema and handler.
4. **Register the tool** in `src/index.js` in the `toolRegistry` map.
5. Update `README.md` counts!
## Pull Request Guidelines
- **Atomic Commits**: Keep changes focused.
- **Conventional Commits**: Use `feat:`, `fix:`, `docs:` prefixes.
- **Agentic Check**: If adding a new capability, considering adding a relevant Prompt as well.
## Code Style
- We use **Prettier** for formatting.
- We enforce **TypeScript** strict mode.
- We follow the **Code-MCP Developer Rules** (see `src/tools/fullstack.ts`).
## Questions?
Open an issue on GitHub!