Thank you for considering contributing to Obsidian MCP! This document provides guidelines and instructions for contributing.
Please be respectful and considerate of others when contributing to this project.
Before creating bug reports, please check the existing issues to see if the problem has already been reported. When you are creating a bug report, please include as many details as possible:
- Use a clear and descriptive title
- Describe the exact steps to reproduce the issue
- Describe the behavior you observed and what you expected to see
- Include screenshots if applicable
- Include error messages or logs
- Include your environment information (OS, Node.js version, etc.)
- Use a clear and descriptive title
- Provide a step-by-step description of the suggested enhancement
- Explain why this enhancement would be useful to most users
- Include screenshots or mockups if applicable
- Fill in the required template
- Follow the TypeScript code style
- Include tests when adding new features
- Update documentation when changing functionality
- Keep your PR focused on a single concern
- Reference issues or discussions that your PR addresses
- Fork the repository
- Clone your fork
git clone https://github.com/your-username/obsidian-mcp.git cd obsidian-mcp - Install dependencies
npm install - Create a
.envfile and add your Obsidian API keycp .env.example .env # Edit the .env file with your API key - Start the development server
npm run dev
- Use TypeScript
- Follow the existing code style
- Use meaningful variable and function names
- Write comments for complex logic
- Add JSDoc comments for functions and classes
- Write tests for new features
- Run tests before submitting PR
npm test
- Use the present tense ("Add feature" not "Added feature")
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
- Limit the first line to 72 characters or less
- Reference issues and pull requests liberally after the first line
The project maintainers will handle releases following semantic versioning:
- MAJOR version for incompatible API changes
- MINOR version for added functionality in a backward compatible manner
- PATCH version for backward compatible bug fixes
Your contributions help make Obsidian MCP better for everyone. We appreciate your time and effort!