First off, thank you for considering contributing to MCPJam Inspector! It's people like you that make the open source community such a great place.
- You can find things to work on in our issues tab.
- Look for issues labelled
good first issueandvery easy. These are great starter tasks that are low commitment - Once you find an issue you like to work on, comment on the issue and tag @matteo8p. Then assign yourself the issue. This helps avoid multiple contributors working on the same issue.
Before you get started, please consider giving the project a star ⭐. It helps grow the project and gives your contributions more recognition.
Also join our Discord channel. That's where the community and other open source contributors communicate on.
Make sure to have the following:
- Fork the repository on GitHub.
- Clone your fork locally:
git clone https://github.com/YOUR_USERNAME/inspector.git cd inspector - Create a new branch for your changes:
git checkout -b my-feature-branch
Install the dependencies for all workspaces:
npm installCopy the .env file :
cp .env.local .env.developmentTo run the client and server in development mode with hot-reloading, use:
npm run devThis runs:
- Client: Vite dev server on
:5173 - Server: Hono dev server on
:3001
To run the Electron app in development mode:
npm run electron:devThis runs:
- Electron main process
- Embedded Hono server
- Vite dev server for renderer
To build all parts of the project (client, server, and SDK), run:
npm run build
npm run start // starts the buildYou can also build each part individually:
npm run build:client- Build React frontendnpm run build:server- Build Hono backendnpm run build:sdk- Build MCP SDK wrapper
To deploy MCPJam to a new version:
- Change the version in
package.jsonto the next version. Commit and merge it tomain. - Run
git tag v1.2.3with the correct version - Run
git push origin v1.2.3. This will kick off a GitHub action to deploy to npm and the electron desktop apps.
We use Prettier to maintain a consistent code style. Before you commit your changes, please format your code by running:
npm run prettier-fixWe follow the Conventional Commits specification. This helps us automate changelog generation and keep the commit history clean and readable.
Your commit messages should be structured as follows:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
Example:
feat(client): add new button to the main component
fix(server): resolve issue with API endpoint
Thank you for your contribution!