Sentiment Evolution Tracker is an enterprise-ready monitoring stack that runs as a Model Context Protocol (MCP) server. It combines local sentiment analytics, churn prediction, alerting, and reporting, and can operate standalone or alongside Claude Desktop as an intelligent assistant.
Traditional "use Claude once and move on" workflows do not keep historical context, trigger alerts, or generate portfolio-level insights. Sentiment Evolution Tracker solves that by providing:
A demo video (3-4 minutes) showing live sentiment analysis, risk detection, and MCP integration with Claude:
The video demonstrates:
Clone and install:
git clone https://github.com/RubenReyesss/mcp-nlp-analytics.git
cd mcp-nlp-server
pip install -r requirements.txt
python -m textblob.download_corpora
python -m nltk.downloader punkt averaged_perceptron_tagger
Populate demo data:
python init_db.py
python tools/populate_demo_data.py
View dashboard:
python tools/dashboard.py
Generate HTML report:
python tools/generate_report.py
# Opens data/reporte_clientes.html in your browser
Integrate with Claude Desktop:
config/claude_desktop_config.json with your actual pathpython src/mcp_server.pycd mcp-nlp-server
pip install -r requirements.txt
python -m textblob.download_corpora
python -m nltk.downloader punkt averaged_perceptron_tagger
python init_db.py β rebuilds the database from scratch (reset option)python tools\populate_demo_data.py β loads deterministic demo customerspython tools\dashboard.py β terminal dashboard (Ctrl+C to exit)python tools\generate_report.py β creates data/reporte_clientes.htmlpython src\mcp_server.py β launch the MCP server for Claude Desktop| Tool | Purpose |
|---|---|
analyze_sentiment_evolution |
Calculates sentiment trajectory for a set of messages |
detect_risk_signals |
Flags phrases that correlate with churn or dissatisfaction |
predict_next_action |
Forecasts CHURN / ESCALATION / RESOLUTION outcomes |
get_customer_history |
Retrieves full timeline, sentiment, and alerts for a customer |
get_high_risk_customers |
Returns customers whose churn risk is above a threshold |
get_database_statistics |
Portfolio-level KPIs (customers, alerts, sentiment mean) |
save_analysis |
Persists a custom analysis entry with full metadata |
customer_profiles β customer metadata, lifetime sentiment, churn risk, timestampsconversations β every analysis entry, trend, predicted action, confidencerisk_alerts β generated alerts with severity, notes, and resolution stateDatabase files live in data/sentiment_analysis.db; scripts automatically create the directory if needed.
config/claude_desktop_config.json registers the server:
{
"mcpServers": {
"sentiment-tracker": {
"command": "python",
"args": ["src/mcp_server.py"],
"cwd": "C:/Users/Ruben Reyes/Desktop/MCP_1stHF/mcp-nlp-server"
}
}
}
Restart Claude Desktop after editing the file. Once connected, the seven tools above appear automatically and can be invoked using natural language prompts.
docs/QUICK_START.md β five-minute functional checklistdocs/ARCHITECTURE.md β diagrams, module responsibilities, data flowdocs/HOW_TO_SAVE_ANALYSIS.md β practical guide for the save_analysis tooldocs/EXECUTIVE_SUMMARY.md β executive briefing for stakeholdersdocs/CHECKLIST_FINAL.md β submission readiness checklistsave_analysis workflow (tests/test_save_analysis.py)Run python tools\dashboard.py or open the generated HTML report to verify data before your demo, then start the MCP server and launch Claude Desktop to show the agentic workflow in real time.
| Role | Contributor | GitHub |
|---|---|---|
| Developer | RubenReyesss | @RubenReyesss |
This project is submitted to Track 1: Building MCPs (building-mcp-track-01).
It demonstrates a production-ready MCP server that extends Claude's capabilities with persistent analytics, risk prediction, and alertingβsolving the limitation that Claude lacks memory, database writes, and automated monitoring.
Announcement on LinkedIn:
Read the full post on LinkedIn
Featured in: MCP 1st Birthday Hackathon
Made with β€οΈ for the Anthropic MCP 1st Birthday Hackathon