coldchain-mcp
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., "@coldchain-mcp Did my shipment at sample_data.csv breach the 2-8°C range?"
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.
Cold-Chain MCP Server
Analyze cold-chain sensor data with AI agents. Connect your temperature/humidity logger to Claude, Cursor, or any MCP client and ask in plain language: "did this shipment breach the cold chain?", "find the anomalies in this log", "split this file into separate journeys."
🔒 Privacy: all analysis runs locally. Your data never leaves your machine. No external APIs, no cloud. Suitable for compliance-sensitive environments.
What is this? (start here if you're new to MCP)
MCP (Model Context Protocol) is a standard way to give an AI assistant access to external tools. This project is an MCP server — a small program that runs on your computer and gives an AI agent four specialized tools for analyzing sensor time-series data.
The idea: instead of pasting thousands of temperature readings into a chat and hoping the AI does the math right, the AI calls these tools, which compute the answer deterministically (same input, same result, every time). You ask a question in plain language; the agent runs the right tool and gives you a structured report.
Related MCP server: PiQrypt MCP Server
Why use it
Language models are unreliable at statistics over large numeric series. They confuse a one-off sensor glitch with a real breach, lose track of timestamps, and produce different answers on re-runs. This server hands the agent deterministic, repeatable tools that get it right every time.
Tools
Tool | What it does |
| Summary statistics: min / max / mean / median / standard deviation, time range and duration. |
| Detects threshold breaches (e.g. 2-8 degrees C) with minimum duration and hysteresis — separates a real breach from a momentary spike. |
| Flags outliers (global z-score, or deviation from a rolling mean). |
| Splits a continuous log into separate journeys based on time gaps (START/STOP). |
Key distinction: a breach is not an anomaly
A sensor spiking to 40 degrees C for a single sample is an anomaly (a sensor glitch) — not a breach of the cold chain. A door left open, pushing the temperature to 12 degrees C for 20 minutes, is a breach, even though every individual reading looks plausible. This server distinguishes the two cases — exactly what a compliance audit requires.
Installation
The easiest way is with pip:
pip install coldchain-mcpThis installs the server and a command called coldchain-mcp. It's now ready to connect to any MCP client.
Alternative: from source
If you want to modify the server locally:
git clone https://github.com/matuzale/coldchain-mcp
cd coldchain-mcp
pip install -e .Connecting to Claude Desktop
An MCP client (like Claude Desktop) needs to know how to start your server. You tell it through a small configuration file. Open Claude Desktop, go to Settings -> Developer -> Edit Config, and add a cold-chain entry.
If you installed with pip (recommended), the config is short — you just name the command:
{
"mcpServers": {
"cold-chain": {
"command": "coldchain-mcp"
}
}
}This works because pip install created a coldchain-mcp command that already knows where the code lives — so you don't have to point at any file.
If you're running from source instead, point at the script directly:
{
"mcpServers": {
"cold-chain": {
"command": "python",
"args": ["/full/path/to/coldchain-mcp/server.py"]
}
}
}Windows note: if the short
"command": "coldchain-mcp"form doesn't start the server, the install directory may not be on your system PATH. Either add Python'sScriptsfolder to PATH, or use the full path tocoldchain-mcp.exeas the command.
After editing, fully restart Claude Desktop (quit from the system tray, not just the window). The tools appear automatically.
Data format
CSV with a header, or JSON. Column names are configurable via the ts_field and value_field parameters, and the parser recognizes common aliases (temp, temperature, time, value).
timestamp,value
2026-07-20T08:00:00,5.1
2026-07-20T08:05:00,4.9JSON is also accepted:
[
{"timestamp": "2026-07-20T08:00:00", "value": 5.1},
{"timestamp": "2026-07-20T08:05:00", "value": 4.9}
]Example (talking to the agent)
"Load sample_data.csv and check whether the shipment breached the 2-8 degrees C range. A breach only counts after 10 minutes."
The agent calls detect_threshold_breaches(min_temp=2, max_temp=8, min_duration_minutes=10) and returns a structured report of any breaches, with start time, end time, duration, and peak value.
Roadmap
PDF report export
MKT (Mean Kinetic Temperature) — pharmaceutical standard
Humidity support and temperature/humidity correlation
Multi-zone detectors for a single shipment
License
MIT — see LICENSE. You're free to use, modify, and distribute this, including commercially, as long as the copyright notice is retained.
Available Tools
4 toolsdetect_anomaliesA
Wykrywa anomalie w szeregu czasowym (punkty odstające od normy).
Model językowy słabo liczy odchylenia statystyczne na tysiącach punktów — użyj tego narzędzia, by uzyskać deterministyczny, powtarzalny wynik.
Args: data: dane CSV lub JSON. method: "zscore" (globalny z-score) lub "rolling" (odchylenie od średniej kroczącej). sensitivity: próg w liczbie odchyleń standardowych (domyślnie 3.0). window: rozmiar okna dla metody "rolling" (liczba próbek). 0 = auto (~5% danych). ts_field, value_field: nazwy kolumn.
Returns: JSON z listą anomalii (czas, wartość, odchylenie) i podsumowaniem.
Inputs: data (required), method, window, ts_field, +2 more. Returns: result
detect_threshold_breachesA
Wykrywa przekroczenia progów temperatury (naruszenia łańcucha chłodniczego).
Kluczowe dla compliance: krótkie, chwilowe skoki często NIE liczą się jako naruszenie — dopiero przekroczenie utrzymane przez min_duration_minutes. Histereza zapobiega fałszywym wielokrotnym alarmom przy wahaniach wokół progu.
Args:
data: dane CSV lub JSON.
min_temp: dolny próg (np. 2.0 dla produktów 2-8°C). None = brak dolnego progu.
max_temp: górny próg (np. 8.0). None = brak górnego progu.
min_duration_minutes: minimalny czas trwania przekroczenia, by liczyło się jako naruszenie.
hysteresis: margines histerezy; przekroczenie kończy się dopiero gdy wartość
wróci o hysteresis poniżej/powyżej progu.
ts_field, value_field: nazwy kolumn.
Returns: JSON z listą naruszeń (typ, początek, koniec, czas trwania, wartość szczytowa) oraz podsumowaniem.
Inputs: data (required), max_temp, min_temp, ts_field, +3 more. Returns: result
segment_journeyA
Dzieli ciągły log na osobne "przejazdy" (journeys) na podstawie przerw czasowych.
Logger transportowy często rejestruje wiele przejazdów w jednym pliku. Przerwa dłuższa niż gap_minutes oznacza granicę między przejazdami.
Args: data: dane CSV lub JSON. gap_minutes: przerwa czasowa (w minutach) traktowana jako granica przejazdu. ts_field, value_field: nazwy kolumn.
Returns: JSON z listą segmentów (numer, start, koniec, czas trwania, liczba próbek, min/max/średnia temperatura w segmencie).
Inputs: data (required), ts_field, gap_minutes, value_field. Returns: result
summary_statsA
Zwraca statystyki podsumowujące dla szeregu czasowego z czujnika.
Użyj tego narzędzia zamiast samodzielnego liczenia statystyk na surowych danych — jest szybsze i deterministyczne dla dużych plików.
Args: data: dane CSV (z nagłówkiem) lub JSON (lista {timestamp, value}). ts_field: nazwa kolumny/pola czasu (domyślnie "timestamp"). value_field: nazwa kolumny/pola wartości (domyślnie "value").
Returns: JSON ze statystykami: liczba odczytów, min, max, średnia, mediana, odchylenie standardowe, zakres czasowy, czas trwania.
Inputs: data (required), ts_field, value_field. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Each tool targets a distinct operation: summary_stats computes aggregate measures, detect_threshold_breaches finds compliance violations, detect_anomalies finds statistical outliers, and segment_journey splits logs into trips. The purposes are clearly differentiated by domain function, though summary_stats and detect_anomalies both operate on raw series and could theoretically be confused—but their outputs are clearly different.
All tools use snake_case and follow a consistent verb_first pattern: summary_stats (slightly verb-less), detect_threshold_breaches, detect_anomalies, segment_journey. The naming is coherent and predictable, with only 'summary_stats' deviating slightly from the verb-object convention used by the others.
Four tools is a reasonable, focused scope for a cold-chain analytics server. Each tool addresses a distinct, valuable analysis task and none feels like filler. The count is on the lean side but entirely appropriate for the narrow domain.
The set covers core cold-chain analysis workflows: summary stats, threshold breach detection (key for compliance), anomaly detection, and journey segmentation. However, there are notable gaps—no tool for loading/filtering raw data, no visualization/serialization of results, and no export or alerting tools. For a cold-chain MCP server, CRUD-style operations aren't expected, but a data-cleaning or filtering tool would be a natural addition.
Maintenance
Related MCP Connectors
Signed, publicly logged records of what your AI agent did, with proofs anyone can check offline.
Sovereign E2E cloud storage for AI agents. Zero-knowledge, RGPD-compliant.
Biotech rNPV/PoS engine for AI agents. Signed exports, evidence register, asset landscape.
x402 LLM proxy + data-enriched analysis (17 sources) + TimesFM predictive IoT intelligence.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA local, agentic AI pipeline that analyzes tabular data, detects anomalies, and generates interpretive summaries using local LLMs orchestrated via the Model Context Protocol.-
- AlicenseAqualityDmaintenanceEnables AI agents to sign decisions with post-quantum cryptographic proofs and maintain secure audit trails for compliance. It provides tools for stamping events, verifying chain integrity, and exporting audit data across industries like finance and healthcare.473 npmMIT
- AlicenseNot gradedqualityDmaintenanceProvides tamper-proof audit logging for AI agents using SHA-256 hash chains, integrity verification, and compliance reporting for the EU AI Act.25 PyPI1MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to seal, open, verify, and ingest verifiable agri-traceability data by description, with credentials and private keys kept out of the model's flow.16 npmMIT