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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iflow_mcp_hassenamri005_mix_server-0.1.1.tar.gz.
File metadata
- Download URL: iflow_mcp_hassenamri005_mix_server-0.1.1.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fbcbd6a4d291f37385a17237827d6a6ef5a8af5b1d76a962bc39d8641eb482b3
|
|
| MD5 |
07e634eca9d1c27ed25fcd5b97aa1288
|
|
| BLAKE2b-256 |
76cd6b1cdf58b0c91db451a7ec6879097cce0c518575abf1caeb03a42eaa1412
|
File details
Details for the file iflow_mcp_hassenamri005_mix_server-0.1.1-py3-none-any.whl.
File metadata
- Download URL: iflow_mcp_hassenamri005_mix_server-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66124e6f2f225c463197fce013d08c09c96d44b0fc3c28df14298aab8bb39798
|
|
| MD5 |
66e0fcf3e80468e1f32d9949246681f8
|
|
| BLAKE2b-256 |
57e310c0993b106827bc9e4b47396650f3cbe66643c4d43cb93845eb5ed8ba77
|