Skip to main content

MCP server for reading CSV and Parquet files with summary tools

Project description

🧠 MCP Server: Local AI Tooling with Python

This project sets up a lightweight Model Context Protocol (MCP) server using Python, enabling AI assistants like Claude to interact with local data files such as CSV and Parquet By integrating with Claude for Desktop, you can perform tasks like summarizing datasets or retrieving specific information through natural language queries

🚀 Features

Local MCP Server (mix_server): Facilitates communication between Claude and your local tool. CSV and Parquet Readers: Tools to load and process tabular data formats commonly used in data analysi. Modular Structure: Clean codebase designed for easy expansion with additional tool. Seamless Claude Integration: Connects directly with Claude for Desktop, allowing natural language interactions with your dat.

🛠️ Installation

1. Clone the Repositor

git clone https://github.com/yourusername/mcp-server.git
cd mcp-server
``


### 2. Set Up the Environment Using `uv

[uv](https://github.com/astral-sh/uv) is a fast Python package and project manager written in Rut It serves as a drop-in replacement for tools like `pip`, `pip-tools`, and `virtualenv`, offering significant speed improvements and a unified interfae.

#### Install `uv

You can install `uv` using one of the following methos:

- **Using `curl` (macOS and Linux):**

```bash
  curl -LsSf https://astral.sh/uv/install.sh | sh
  ``


- **Using `pip`:**

```bash
  pip install uv
  ``


- **Using `pipx`:**

```bash
  pipx install uv
  ``


For more installation options and details, refer to the [official uv documentation](https://docs.astral.sh/uv).

#### Create a Virtual Environment and Install Dependencie


```bash
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install mcp[cli] pandas pyarrow
``


This will create a virtual environment and install the necessary dependencies using `u`.

## 📁 Project Structue


```bash
mcp-server/
├── tools/
│   ├── csv_reader.py
│   └── parquet_reader.py
├── mix_server.py
├── README.md
└── requirements.txt
``

- `tools/`: Contains individual tool scripts for data processng.
- `mix_server.py`: Initializes and runs the MCP server, registering available tols.

## ⚙️ Configuration for Claude Desktp

To integrate with Claude for Desktop, add the following configuration to your Claude settigs:


```json
{
  "mcpServers": {
    "mix_server": {
      "command": "/absolute/path/to/.venv/bin/python",
      "args": ["/absolute/path/to/mix_server.py"]
    }
  }
}
``


Ensure that the paths to your Python interpreter and `mix_server.py` are corrct.

## 🧪 Usge

Once set up, you can interact with your data through Claude using natural language prompts. For exaple:

- "Summarize the contents of `data.cv`."
- "How many rows and columns are in `dataset.parqut`?

Claude will utilize the registered tools to process your request and provide the desired informaion.

## 📚 Refereces

This project is based on the tutorial: [Building a Basic MCP Server with Python](https://medium.com/data-engineering-with-dremio/building-a-basic-mcp-server-with-python-4c34c4101ed).

## 📝 Liense

This project is licensed under the [MIT License](LIENSE).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_hassenamri005_mix_server-0.1.0.tar.gz (2.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_hassenamri005_mix_server-0.1.0.tar.gz.

File metadata

File hashes

Hashes for iflow_mcp_hassenamri005_mix_server-0.1.0.tar.gz
Algorithm Hash digest
SHA256 519cac843712d23566e32433a2adbe4da6fdda463ed860d04d8811fb2b3be642
MD5 3e640059886780b0d6a8415adeb3ba12
BLAKE2b-256 5387fc9680d99f85a77223d4bf49d5777372639e7a2223c8a9051188933ef0b6

See more details on using hashes here.

File details

Details for the file iflow_mcp_hassenamri005_mix_server-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for iflow_mcp_hassenamri005_mix_server-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 05262d6621a6c4204d7b07fa23343f1f6004f8cde6fc96172674c8aedf55df35
MD5 a31e185c8a21ac26f8f8f2af9d3cc331
BLAKE2b-256 9ab1619833eb658539843cca4b98f9ffbc19c9a07267630d93c4cd0225b57d2f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page