Developing
April 30, 2025 ยท View on GitHub
We welcome contributions to all of our MCP servers! Here's a quick run down on how to get started.
Architecture
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.
Getting Started
This section will guide you through setting up your developer environment and running tests.
Installation
Install dependencies:
pnpm install
Testing
The project uses Vitest as the testing framework with fetchMock for API mocking.
Running Tests
To run all tests:
pnpm test
To run a specific test file:
pnpm test -- tests/tools/queues.test.ts
To run tests in watch mode (useful during development):
pnpm test:watch