|
| 1 | +# Contributing Guide |
| 2 | + |
| 3 | +## Run MCP Inspector |
| 4 | + |
| 5 | +The [MCP Inspector](https://github.com/modelcontextprotocol/inspector) is an official debug tool. |
| 6 | + |
| 7 | +```shell |
| 8 | +pnpm run dev |
| 9 | +``` |
| 10 | + |
| 11 | +ref: https://modelcontextprotocol.io/docs/tools/inspector |
| 12 | + |
| 13 | +You can set environment variables at startup using `.env.local`. |
| 14 | + |
| 15 | +```shell |
| 16 | +cat << EOS > .env.local |
| 17 | +GAROON_BASE_URL=https://example.cybozu.com/g |
| 18 | +GAROON_USERNAME=username |
| 19 | +GAROON_PASSWORD=password |
| 20 | +http_proxy=http://localhost:7890 |
| 21 | +https_proxy=http://localhost:7890 |
| 22 | +GAROON_PFX_FILE_PATH=absolute/path/to/pfx_file |
| 23 | +GAROON_PFX_FILE_PASSWORD=pfx_password |
| 24 | +GAROON_BASIC_AUTH_USERNAME=username |
| 25 | +GAROON_BASIC_AUTH_PASSWORD=password |
| 26 | +EOS |
| 27 | +``` |
| 28 | + |
| 29 | +## Build |
| 30 | + |
| 31 | +> [!WARNING] |
| 32 | +> Please configure Git on your local machine as follows. |
| 33 | +> |
| 34 | +> ```shell |
| 35 | +> git update-index --skip-worktree src/build-constants.ts |
| 36 | +> ``` |
| 37 | +> |
| 38 | +> This file is automatically generated by prebuild and should not be committed. |
| 39 | +
|
| 40 | +npm package |
| 41 | +
|
| 42 | +```shell |
| 43 | +pnpm install |
| 44 | +pnpm run build |
| 45 | +``` |
| 46 | +
|
| 47 | +Docker image |
| 48 | + |
| 49 | +```shell |
| 50 | +./scripts/build-docker.sh |
| 51 | +``` |
| 52 | + |
| 53 | +MCPB |
| 54 | + |
| 55 | +```shell |
| 56 | +pnpm run build:mcpb |
| 57 | +``` |
| 58 | + |
| 59 | +## Test |
| 60 | + |
| 61 | +```shell |
| 62 | +pnpm run test |
| 63 | +``` |
| 64 | + |
| 65 | +## Lint |
| 66 | + |
| 67 | +```shell |
| 68 | +pnpm run lint |
| 69 | +pnpm run fix |
| 70 | +``` |
| 71 | + |
| 72 | +## License Check |
| 73 | + |
| 74 | +```shell |
| 75 | +pnpm run license:analyze |
| 76 | +``` |
| 77 | + |
| 78 | +If you find a disallowed license in new dependencies you installed, review the terms and conditions. |
| 79 | + |
| 80 | +The allowed licenses are listed in [`license-manager.config.cjs`](license-manager.config.cjs). |
| 81 | + |
| 82 | +## Pull Request Label |
| 83 | + |
| 84 | +Please label your pull request to support the release process. |
| 85 | +This repository uses [release-drafter](https://github.com/release-drafter/release-drafter) to draft a next release. |
| 86 | +The labels determine the next version following [semantic versioning](https://semver.org/). |
| 87 | +In addition, merged pull requests are automatically listed in [release notes](https://github.com/garoon/garoon-mcp-server/releases) and categorized by the labels. |
| 88 | + |
| 89 | +Refer to the [release-drafter settings](.github/release-drafter.yml) to determine the appropriate label. |
0 commit comments