MCP Mix Server
The MCP Mix Server provides tools to summarize CSV and Parquet files by reporting their dimensions (number of rows and columns). Simply provide a filename as input to get a string describing the file's structure.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Mix Server summarize the sales data in quarterly_report.csv"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Server/Client Example
The server is a modified implementation following tutorial from Medium by Alex Merced.
The custom client is an implementation from Anthropic quickstart tutorial Build an MCP Client.
MCP Server
Navigate to your project directory, run these commands in the terminal.
source .venv/bin/activate
uv --directory . run mcp_server/main.pyNOTE: There are no outputs from the terminal - it's normal.
MCP Client
Claude Desktop
On MacOS or Linx, add the following entry to ~/Library/Application Support/Claude/claude_desktop_config.json
For Windows, add the following entry to %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"mcp-mix-server": {
"command": "uv",
"args": [
"--directory",
"{ABSOLUTE_PATH}/mcp-mix-server",
"run",
"mcp_server/main.py"
]
}
}
}Verify server registery
Click on "Searches and tools" option.
Click on "mcp-mix-server", you should see the listed tools
Test with the following queries:
“Summarize the CSV file named sample.csv.”
“How many rows are in sample.parquet?”
Related MCP server: Excel MCP Server
Custom MCP client
Alternatively, use a custom client in mcp_client/ implemented following the Anthropic quickstart tutorial Build an MCP Client.
Create a .env file in the root folder and put your Athropic API access key in there. To obtain the API access key, login your Anthropic account and following instructions.
ANTHROPIC_API_KEY=<your_api_access_key>You can always use your own reasoning model. But this repo is very basic to demonstrate how MCP Server/Client works so we stick with Claude.
When starting the client, it will automatically start the server in stdio transport mode. This means the client access the server locally, not remotely, which uses SSE transport mode. There is no need run the server script separately.
To run the custom client:
uv run mcp_client/client.py mcp_server/main.pyTest with the following queries:
“Summarize the CSV file named sample.csv.”
“How many rows are in sample.parquet?”
or type "quit" to exit
Available Tools
2 toolssummarize_csv_fileA
Summarise a CVS file by reporting its number of rows and columns.
Args: filename (str): Name of the CSV file in the /data directory.
Returns: str: A string describing the file's dimensions.
Inputs: filename (required). Returns: result
summarize_parquet_fileA
Summarise a Parquet file by reporting its number of rows and columns.
Args: filename (str): Name of the Parquet file in the /data directory.
Returns: str: A string describing the file's dimensions.
Inputs: filename (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one handles CSV files and the other handles Parquet files. There is no overlap or ambiguity in their functionality, as each is specialized for a different file format.
Both tools follow a consistent verb_noun pattern with 'summarize' as the verb and the file type as the noun (csv_file, parquet_file). The naming is perfectly uniform and predictable across the set.
With only 2 tools, the server feels thin for a 'Mix Server' that implies broader data processing capabilities. The scope is limited to summarizing two specific file formats, which may not justify the server's name or provide comprehensive coverage for data analysis tasks.
The tool surface is severely incomplete for data processing. It only offers summarization for CSV and Parquet files, lacking essential operations like reading, writing, filtering, transforming, or handling other common formats (e.g., JSON, Excel). This will likely cause agent failures in broader workflows.
Related MCP Connectors
Query, join, profile, clean and convert CSV/JSON/Parquet with server-side DuckDB over MCP.
Text-to-SQL MCP server: read-only queries on PostgreSQL, MySQL and SQL Server with your real schema
Query your warehouse or a CSV with Claude/ChatGPT over MCP, governed by table-level ACL + audit.
Related MCP Servers
- FlicenseCqualityDmaintenanceA powerful MCP (Model Control Protocol) server that provides tools for manipulating and analyzing Parquet files. This server is designed to work with Claude Desktop and offers four main functionalities:22-
- AlicenseBqualityDmaintenanceAn MCP server that provides comprehensive Excel file operations, data analysis, and visualization capabilities for working with various spreadsheet formats like XLSX, CSV, and JSON.844 PyPI95MIT
- AlicenseAqualityCmaintenanceAn open-source MCP server that connects to various data sources (SQL databases, CSV, Parquet files), allowing AI models to execute SQL queries and generate data visualizations for analytics and business intelligence.1276MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that provides comprehensive PDF processing capabilities including text extraction, image extraction, table detection, annotation extraction, metadata retrieval, page rendering, and document structure analysis.-