Product MCP Telegram Bot
README.md
# Product MCP + Telegram Bot
## Структура
```
MCP/
├── mcp_server/
│ ├── server.py
│ ├── db.py
│ ├── tools.py
│ ├── requirements.txt
│ └── env.example.txt
└── telegram_bot/
├── bot.py
├── config.py
├── mcp_client.py
├── requirements.txt
└── env.example.txt
```
## 1) Установка зависимостей
### Вариант 1: Использование скрипта установки (рекомендуется)
Для Windows (CMD):
```bash
setup_env.bat
```
Для Windows (PowerShell):
```bash
powershell -ExecutionPolicy Bypass -File setup_env.ps1
```
Для Linux/macOS:
```bash
chmod +x setup_env.sh
./setup_env.sh
```
### Вариант 2: Ручная установка с виртуальным окружением
Создайте и активируйте виртуальное окружение, затем установите зависимости:
#### Windows:
```bash
# Создание виртуального окружения
python -m venv venv
# Активация (CMD)
venv\Scripts\activate.bat
# Активация (PowerShell)
.\venv\Scripts\Activate.ps1
# Установка зависимостей
pip install --upgrade pip
pip install -r requirements.txt
```
#### Linux/macOS:
```bash
# Создание виртуального окружения
python3 -m venv venv
# Активация
source venv/bin/activate
# Установка зависимостей
pip install --upgrade pip
pip install -r requirements.txt
```
### Вариант 3: Без виртуального окружения (не рекомендуется)
В двух разных терминалах (или по очереди):
```bash
cd mcp_server
pip install -r requirements.txt
```
```bash
cd telegram_bot
pip install -r requirements.txt
```
## 2) Настройка переменных окружения
Из-за настроек проекта файлы `.env` не коммитятся — создай их локально по примерам:
- `mcp_server/env.example.txt` → создай `mcp_server/.env`
- `telegram_bot/env.example.txt` → создай `telegram_bot/.env`
Минимально нужно:
- **Telegram**: `TELEGRAM_API_TOKEN`
- **OpenAI**: `OPENAI_API_KEY`
- **MCP URL для бота**: `MCP_SERVER_URL` (по умолчанию `http://127.0.0.1:8000`)
## 3) Запуск MCP сервера
```bash
cd mcp_server
python server.py
```
Проверка:
- `GET http://127.0.0.1:8000/health`
- `GET http://127.0.0.1:8000/tools`
- `POST http://127.0.0.1:8000/call`
## 4) Запуск Telegram бота
```bash
cd telegram_bot
python bot.py
```
## Примеры запросов в Telegram
- "покажи все товары"
- "найди чай"
- "добавь товар яблоки категория фрукты цена 120"
- "посчитай (2+2)*3"
## Активация виртуального окружения
После первоначальной настройки, для повторной активации виртуального окружения:
### Windows:
```bash
activate_env.bat
```
### Windows (PowerShell):
```bash
powershell -ExecutionPolicy Bypass -File activate_env.ps1
```
### Linux/macOS:
```bash
chmod +x activate_env.sh # Make script executable (one-time)
./activate_env.sh
```
Или вручную:
- Windows CMD: `venv\Scripts\activate.bat`
- Windows PowerShell: `.\venv\Scripts\Activate.ps1`
- Linux/macOS: `source venv/bin/activate`
## Если venv не активируется (частая причина на PowerShell)
В PowerShell может быть запрещён запуск скриптов. Выполни один раз:
```bash
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
```
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues