EduFlow AI Assistant
A reference multi-agent student support assistant with an MCP server to a knowledge base and Bitrix24, over Telegram and MAX
Medium risk
We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.
Why this level
- The MCP tools read real deal and contact data from Bitrix24 by phone number
- The main service stores student conversations and handles payment status
Install
Manual install
git clone https://github.com/alexeymasalykin/ai-assistant-eduflow.git
python -m venv .venv
pip install -r requirements.txtNext, copy deployment/.env.example to .env, create the database and run alembic upgrade head.
This is third-party code. Review the repository files before installing.
What it does
The project is a reference implementation of a student support assistant for a fictional EduFlow learning platform: messages from Telegram and MAX Messenger via the Wappi service go through an orchestrator that classifies the query and routes it to one of several agents (canned answers, course info and Bitrix24 deal status, technical support via RAG over a knowledge base, or escalation to a live instructor). The LLM backend is either OpenAI or YandexGPT behind a shared abstraction. Separately from the main FastAPI web service, the project runs an MCP server with three tools: knowledge base search, fetching a Bitrix24 deal by ID, and finding deals by phone number, reachable over stdio for Claude Code and Cursor or over the network via Docker.
Who it is for. For developers building a similar multi-agent support assistant on Bitrix24 and Telegram/MAX who want a working, tested reference.
Good fit when
- You want a reference architecture for a multi-agent support bot with an orchestrator and query classifier
- You want an example MCP server exposing RAG search and Bitrix24 deal data to a development agent
- You want an example of Telegram and MAX multichannel routing through one webhook by profile_id
Not a fit when
- You need a turnkey product, not a reference build: the project is written for a fictional EduFlow platform
- You have no OpenAI or YandexGPT, Wappi and Bitrix24 webhook keys to configure
- You only want the MCP server without the rest of the web service, orchestrator and database
Example request
Search the EduFlow knowledge base for how to reset a password and show the deal status for this student's phone numberLimitations
This is a reference build for a specific fictional EduFlow case, not a generic product; the MCP server needs adapting to your own CRM and knowledge base. It needs PostgreSQL 15+, OpenAI or YandexGPT keys, a Wappi token for Telegram and MAX, and a Bitrix24 webhook. Full deployment targets Docker Compose with nginx and needs a server of your own.
How to disable. Stop the stack with docker compose down and remove the eduflow block from .mcp.json if you only used the MCP server.
MCP
- Transport
- stdio, sse
- Authentication
- not required
| Environment variables | |
|---|---|
| OPENAI_API_KEY secret | OpenAI key, if the LLM provider is not YandexGPT |
| YANDEX_API_KEY secret | YandexGPT key, if the LLM provider is not OpenAI |
| BITRIX24_WEBHOOK_URL required, secret | Bitrix24 webhook for reading deals and contacts |
| WAPPI_API_TOKEN secret | Wappi token for Telegram and MAX, needed only by the main service, not the MCP server |
Security check
- The MCP tools read real deal and contact data from Bitrix24 by phone number
- The main service stores student conversations and handles payment status
README in short
The Russian README details the multi-agent architecture with a mermaid diagram, a component table, and requirements: Python 3.11+, PostgreSQL 15+, Docker, and OpenAI, YandexGPT, Wappi and Bitrix24 keys. A dedicated MCP Server section shows stdio and Docker launches, three tools, and a search_knowledge_base example call. It states 170 tests and 84% coverage, plus a parallel LangChain pipeline implementation.
FAQ
Can I use just the MCP server without the rest of the bot?
Technically yes, mcp_server runs as a separate process, but it still relies on a configured ChromaDB and Bitrix24 webhook.
What share of queries gets escalated to an instructor?
Per the architecture diagram in the README, about 30 percent of queries are routed by the classifier to a live instructor.
Related
Open-source personal AI assistant on your own machine: answers in Telegram, Slack, Discord and WhatsApp, extended with skills and plugins
A self-improving agent from Nous Research with a TUI, messaging gateway, cron jobs and skills it writes itself
An open source coding agent for the terminal and desktop with build and plan modes
Open prompt library with a Claude Code plugin, MCP server and CLI: search, fetch and improve prompts and skills from an agent