Skip to main content
Glama
hrishi2710

dg-mcp-server

by hrishi2710
README.md
# dg-mcp-server
Model context Protocol server for Datagroom

[✨ Features](#features) | [🚀 Getting Started](#getting-started) | [🛠️ Tools](#tools) | [🧑‍💻 Development](#development)

## ✨ Features <a id="features"></a>

A powerful and flexible Datagroom MCP server implementation to read the data and let the LLM handle the reasoning of the data.

## 🚀 Getting Started <a id="getting-started"></a>

### Requirements
- Access to a locally hosted [Datagroom gateway] (https://github.com/h-tendy/datagroom-gateway) instance

### Prerequisites

* Install the python-sdk dependencies like uv, mcp etc.
* Clone the project
* Run `uv sync` to install the dependencies

### Letta ADE (Local installation - Letta Desktop)
* Set BASIC_AUTH_USER and BASIC_AUTH_PASS on the os using `export` or `set` command.
* Run the mcp server using `uv run main.py`
* Create a new agent in Letta ADE
* Go to Tool manager, add a new custom server.
* Provide the server name as `DgGatewayMcpServer`.
* Provide the url as `http://127.0.0.1:8001/mcp`
* Connect with the server and add it and attach required tools to the agent.


## 🛠️ Tools <a id="tools"></a>

### `server_info`

Get the mcp server information

### `get_datasets`

Get all the datasets that are hosted on the Datagroom

### `get_columns_and_filters_metadata`

Get all the columns or headers for a given dataset name, dataset view and for a given user.
If the dataset view is not provided it is assumed to be default view. It also provides the data like filters for a dataset,
the metadata attributes for each column/header and the access control list for the given dataset.

**Parameters:**
* `dsName` (`string`, required)
    * The datasetname for which the metadata is to be retrieved
* `dsView` (`string`, optional, default = `default`)
    * The view for which the the metadata to be retrieved

## 🧑‍💻 Development <a id="development"></a>

### Running the server with mcp-inspector

Run `uv run mcp dev main.py`