We welcome contributions to all of our MCP servers! Here's a quick run down on how to get started.
This monorepo has two top-level directories: /apps and /packages.
- /apps: Containing directories for each server. Within each server, you'll find a
CONTRIBUTING.mdwith any special instructions on how to get set up: - /packages: Containing shared packages used across our various apps.
- packages/eslint-config: Eslint config used by all apps and packages.
- packages/typescript-config: tsconfig used by all apps and packages.
- packages/mcp-common: Shared common tools and scripts to help manage this repo.
We use TurboRepo and pnpm to manage this repository. TurboRepo manages the monorepo by ensuring commands are run across all apps.
This section will guide you through setting up your developer environment and running tests.
Install dependencies:
pnpm installThe project uses Vitest as the testing framework with fetchMock for API mocking.
To run all tests:
pnpm testTo run a specific test file:
pnpm test -- tests/tools/queues.test.tsTo run tests in watch mode (useful during development):
pnpm test:watch