Self-hosted MCP
Run the open-source Grovs MCP server against your own self-hosted Grovs backend.
On Grovs Cloud, AI tools connect to https://mcp.grovs.io/mcp. If you run Grovs yourself, run the MCP server too and point it at your backend. The server is open source: github.com/grovs-io/mcp.
Your Grovs backend already serves the OAuth endpoints and the API the MCP server uses, on its mcp. host (for example mcp.grovs.example.com). See Self-hosting. The MCP server is a separate Node.js process that AI tools talk to.
Run the server
git clone https://github.com/grovs-io/mcp.git
cd mcp
npm install && npm run build
GROVS_API_URL=https://mcp.grovs.example.com \
PUBLIC_URL=https://ai.grovs.example.com \
npm startOr with Docker:
docker build -t grovs-mcp .
docker run -p 8080:8080 \
-e GROVS_API_URL=https://mcp.grovs.example.com \
-e PUBLIC_URL=https://ai.grovs.example.com \
grovs-mcp| Variable | Default | Description |
|---|---|---|
PORT | 8080 | Port the server listens on. |
GROVS_API_URL | https://mcp.grovs.io | Your Grovs backend's mcp. host. |
PUBLIC_URL | http://localhost:8080 | The public URL of this MCP server, used for OAuth callbacks. |
ai.grovs.example.com above is an example: serve the MCP server on any HTTPS host your AI tools can reach, and set PUBLIC_URL to it.
Connect your tools
Use <PUBLIC_URL>/mcp as the server URL, for example https://ai.grovs.example.com/mcp, in any of the client guides: Cursor, VS Code, Claude Code, Claude Desktop, ChatGPT, Windsurf. On the Build with AI page, switch the server URL to Self-hosted to get install buttons for your URL.
For a quick local try, run the server on your machine and use http://localhost:8080/mcp. ChatGPT and Claude.ai connect from their own servers, so they need a public HTTPS URL.
The first time a tool connects, it opens your dashboard's consent page (/mcp/authorize, set by MCP_CONSENT_URL in the backend configuration) to approve it.