MCP Dockmaster allows you to easily install and manage MCP servers. Available for Mac, Windows and Linux as a Desktop App, CLI and a library.
This is a monorepo for the MCP Dockmaster project, managed with NX. A monorepo is a single repository that holds multiple projects, which can be related or independent. NX is a set of extensible dev tools for monorepos, which helps in managing and scaling the projects efficiently.
apps/mcp-dockmaster
: The main Tauri application, which is a desktop application built using Tauri, a framework for building tiny, fast binaries for all major desktop platforms.apps/mcp-proxy-server
: The MCP proxy server, which handles network requests and serves as a middleware between the client and the server.
- Node.js (v18 or later): A JavaScript runtime built on Chrome's V8 JavaScript engine.
- npm (v8 or later): A package manager for JavaScript, included with Node.js.
- Clone the repository using Git, a distributed version control system.
- Install dependencies using
npm ci
, which installs dependencies from the lock file, ensuring a consistent environment.
To run the Dockmaster application:
npx nx dev mcp-dockmaster
This command starts the development server for the Dockmaster application.
For Tauri development:
npx nx tauri:dev mcp-dockmaster
This command is used for developing the Tauri application, providing a live-reload environment.
To build the MCP Runner:
npx nx build mcp-proxy-server
This command compiles the MCP proxy server, preparing it for production deployment.
# Build all projects
npx nx run-many -t build
This command builds all projects in the monorepo.
# Run tests across all projects
npx nx run-many -t test
This command runs tests for all projects, ensuring code quality and functionality.
# Lint all projects
npx nx run-many -t lint
This command checks the code for potential errors and enforces coding standards.
# Run a task for a specific project
npx nx <task> <project>
This command allows you to run specific tasks, such as build or test, for a particular project.
npx nx graph
This command generates a visual representation of the project dependencies, helping you understand the relationships between different parts of the monorepo.
npx nx run-many --target=build --parallel=3
This command runs multiple tasks in parallel, improving efficiency and reducing build times.
# Run tasks only for projects affected by changes
npx nx affected --target=build
This command optimizes the build process by only running tasks for projects that have been modified, saving time and resources.
- NX Documentation The official NX documentation provides comprehensive guides and API references to help you get the most out of NX.