Skip to main content
Glama
MadMando
by MadMando

Autonomous Analyst

๐Ÿง  Overview

Autonomous Analyst is a local, agentic AI pipeline that:

  • Analyzes tabular data

  • Detects anomalies with Mahalanobis distance

  • Uses a local LLM (llama3.2:1b via Ollama) to generate interpretive summaries

  • Logs results to ChromaDB for semantic recall

  • Is fully orchestrated via the Model Context Protocol (MCP)


โš™๏ธ Features

Component

Description

FastAPI Web UI

Friendly dashboard for synthetic or uploaded datasets

MCP Tool Orchestration

Each process step is exposed as a callable MCP tool

Anomaly Detection

Mahalanobis Distance-based outlier detection

Visual Output

Saved scatter plot of inliers vs. outliers

Local LLM Summarization

Insights generated using llama3.2:1b via Ollama

Vector Store Logging

Summaries are stored in ChromaDB for persistent memory

Agentic Planning Tool

A dedicated LLM tool (autonomous_plan) determines next steps based on dataset context

Agentic Flow

LLM + memory + tool use + automatic reasoning + context awareness


๐Ÿงช Tools Defined (via MCP)

Tool Name

Description

LLM Used

generate_data

Create synthetic tabular data (Gaussian + categorical)

โŒ

analyze_outliers

Label rows using Mahalanobis distance

โŒ

plot_results

Save a plot visualizing inliers vs outliers

โŒ

summarize_results

Interpret and explain outlier distribution using llama3.2:1b

โœ…

summarize_data_stats

Describe dataset trends using llama3.2:1b

โœ…

log_results_to_vector_store

Store summaries to ChromaDB for future reference

โŒ

search_logs

Retrieve relevant past sessions using vector search (optional LLM use)

โš ๏ธ

autonomous_plan

Run the full pipeline, use LLM to recommend next actions automatically

โœ…


๐Ÿค– Agentic Capabilities

  • Autonomy: LLM-guided execution path selection with autonomous_plan

  • Tool Use: Dynamically invokes registered MCP tools via LLM inference

  • Reasoning: Generates technical insights from dataset conditions and outlier analysis

  • Memory: Persists and recalls knowledge using ChromaDB vector search

  • LLM: Powered by Ollama with llama3.2:1b (temperature = 0.1, deterministic)


Related MCP server: MCP Prompt Enhancer

๐Ÿš€ Getting Started

1. Clone and Set Up

git clone https://github.com/MadMando/mcp-autonomous-analyst.git
cd mcp-autonomous-analyst
conda create -n mcp-agentic python=3.11 -y
conda activate mcp-agentic
pip install uv
uv pip install -r requirements.txt

2. Start the MCP Server

mcp run server.py --transport streamable-http

3. Start the Web Dashboard

uvicorn web:app --reload --port 8001

Then visit: http://localhost:8000


๐ŸŒ Dashboard Flow

  • Step 1: Upload your own dataset or click Generate Synthetic Data

  • Step 2: The system runs anomaly detection on feature_1 vs feature_2

  • Step 3: Visual plot of outliers is generated

  • Step 4: Summaries are created via LLM

  • Step 5: Results are optionally logged to vector store for recall


๐Ÿ“ Project Layout

๐Ÿ“ฆ autonomous-analyst/
โ”œโ”€โ”€ server.py                  # MCP server
โ”œโ”€โ”€ web.py                     # FastAPI + MCP client (frontend logic)
โ”œโ”€โ”€ tools/
โ”‚   โ”œโ”€โ”€ synthetic_data.py
โ”‚   โ”œโ”€โ”€ outlier_detection.py
โ”‚   โ”œโ”€โ”€ plotter.py
โ”‚   โ”œโ”€โ”€ summarizer.py
โ”‚   โ”œโ”€โ”€ vector_store.py
โ”œโ”€โ”€ static/                   # Saved plot
โ”œโ”€โ”€ data/                     # Uploaded or generated dataset
โ”œโ”€โ”€ requirements.txt
โ”œโ”€โ”€ .gitignore
โ””โ”€โ”€ README.md

๐Ÿ“š Tech Stack

  • MCP SDK: mcp

  • LLM Inference: Ollama running llama3.2:1b

  • UI Server: FastAPI + Uvicorn

  • Memory: ChromaDB vector database

  • Data: pandas, matplotlib, scikit-learn


โœ… .gitignore Additions

__pycache__/
*.pyc
*.pkl
.env
static/
data/

๐Ÿ™Œ Acknowledgements

This project wouldn't be possible without the incredible work of the open-source community. Special thanks to:

Tool / Library

Purpose

Repository

๐Ÿง  Model Context Protocol (MCP)

Agentic tool orchestration & execution

modelcontextprotocol/python-sdk

๐Ÿ’ฌ Ollama

Local LLM inference engine (llama3.2:1b)

ollama/ollama

๐Ÿ” ChromaDB

Vector database for logging and retrieval

chroma-core/chroma

๐ŸŒ FastAPI

Interactive, fast web interface

tiangolo/fastapi

โšก Uvicorn

ASGI server powering the FastAPI backend

encode/uvicorn

๐Ÿ’ก If you use this project, please consider starring or contributing to the upstream tools that make it possible.

This repo was created with the assistance of a local rag-llm using llama3.2:1b

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/MadMando/mcp-autonomous-analyst'

If you have feedback or need assistance with the MCP directory API, please join our Discord server