Content
# DX MCP Server
<h4>Use natural language to write and execute queries on your organizational data in DX Data Cloud!</h4>
.png)
## About
The DX MCP Server is a Python-based tool that empowers AI applications, such as [Claude for Desktop](https://claude.ai/download) and [Cursor](https://www.cursor.com/), to interact with your Data Cloud database. The server runs locally and establishes a connection to the inputted Postgres database, which can be configured on DX's [DB Users settings page](https://app.getdx.com/datacloud/dbusers). A query tool is exposed to the MCP client application, allowing the AI to actively formulate and execute queries on the database. Click [here](https://modelcontextprotocol.io/introduction) to learn more about MCP.
## Demo
https://github.com/user-attachments/assets/c6ce12a5-4562-4b44-b235-2d04871c3142
## Installation
You can install the DX MCP Server in two ways:
### Option 1: Install from [PyPI](https://pypi.org/project/dx-mcp-server/)
Install directly using pip:
```bash
pip install dx-mcp-server
```
**NOTE**: For macOS users: if you encounter an "externally-managed-environment" error, use `pipx` instead to install the package.
### Option 2: Use from Source
Simply clone this repository:
```bash
git clone https://github.com/get-dx/dx-mcp-server
```
## Set up the MCP client
Both Claude for Desktop and Cursor use JSON configuration files to set up MCP servers. The configuration process is similar for both:
### 1. Access the configuration file
- **Claude for Desktop**: Click **Claude > Settings > Developer > Edit Config**
- Config location: `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows)
- **Cursor**: Click **Cursor > Settings > Cursor Settings > MCP > Add new global MCP Server**
- This directly opens the `mcp.json` file
### 2. Add the MCP server configuration
Add the following configuration to the JSON file, adjusting based on your installation method:
#### If you installed via pip:
```json
{
"mcpServers": {
"DX Data": {
"command": "dx-mcp-server",
"args": ["run"],
"env": {
"DB_URL": "YOUR-DATABASE-URL"
}
}
}
}
```
#### If you're using from source:
```json
{
"mcpServers": {
"DX Data": {
"command": "uv",
"args": ["--directory", "/path/to/dx-mcp-server-repo", "run", "-m", "dx_mcp_server", "run"],
"env": {
"DB_URL": "YOUR-DATABASE-URL"
}
}
}
}
```
### 3. Restart and use
After saving the configuration, restart your MCP client. You should see "DX Data" in the available tools. When you use the database query tool, the client will ask for your approval before proceeding.
## Troubleshooting
### Path Resolution Issues
The most common issue involves the MCP client not finding the `dx-mcp-server`/`uv` command, as GUI applications don't inherit the same PATH environment variables as the terminal. The solution is to use the full path to the executable in the json config.
For pip installations:
```bash
# Find the path on macOS/Linux
which dx-mcp-server
# Find the path on Windows (in Command Prompt)
where dx-mcp-server
```
```json
{
"mcpServers": {
"DX Data": {
"command": "/full/path/to/dx-mcp-server",
"args": ["run"],
"env": {
"DB_URL": "YOUR-DATABASE-URL"
}
}
}
}
```
For source installations:
```bash
# Find the path on macOS/Linux
which uv
# Find the path on Windows (in Command Prompt)
where uv
```
```json
{
"mcpServers": {
"DX Data": {
"command": "/full/path/to/uv",
"args": ["--directory", "/path/to/dx-mcp-server-repo", "run", "-m", "dx_mcp_server", "run"],
"env": {
"DB_URL": "YOUR-DATABASE-URL"
}
}
}
}
```
### Checking Logs
If you're still experiencing issues:
- **Claude Desktop**: Check logs at:
- macOS: `~/Library/Logs/Claude/`
- Windows: `%APPDATA%\Claude\logs\`
- **Cursor**: Check logs at:
- macOS: `~/Library/Application Support/Cursor/logs/[SESSION_ID]`
- Windows: `%APPDATA%\Cursor\logs\[SESSION_ID]`
The logs will show any errors that occur when trying to start the MCP server.
You Might Also Like
MarkItDown MCP
markitdown-mcp is a lightweight MCP server for converting various URIs to Markdown.
Github
GitHub MCP Server connects AI tools to GitHub for code management and automation.

apisix
Apache APISIX is an API Gateway for managing APIs and microservices.
opik
Opik is a powerful tool for managing and optimizing machine learning experiments.

MCP Toolbox for Databases
MCP Toolbox for Databases is an open-source server simplifying database tool...

sqlglot
SQLGlot is a no-dependency SQL parser and transpiler supporting 30 dialects.