Personal Assistant MCP Server
by LinkaG
README.md
# Personal Assistant MCP Server 🤖
Демонстрационный MCP (Model Context Protocol) сервер, который показывает все возможности протокола через практические инструменты персонального помощника.
## 🚀 Возможности
### 📋 Tools (Инструменты)
- **add_task** - Добавление новых задач с приоритетами
- **get_tasks** - Просмотр списка задач с фильтрацией
- **complete_task** - Отметка задач как выполненных
- **calculate** - Калькулятор с сохранением истории
- **generate_password** - Генератор безопасных паролей
- **text_stats** - Анализ текста (статистика слов, символов и т.д.)
### 📦 Resources (Ресурсы)
- **tasks://list** - JSON список всех задач
- **calculator://history** - История всех вычислений
### 💡 Prompts (Промпты)
- **task_summary** - Умная сводка по задачам для ИИ
- **productivity_tips** - Советы по продуктивности с разными фокусами
## 🛠️ Установка и запуск
### 1. Установка зависимостей
```bash
pip install -r requirements.txt
```
### 2. Варианты запуска
#### FastMCP сервер (рекомендуется)
```bash
python personal_assistant.py
```
#### Стандартный MCP сервер
```bash
python standard_mcp_server.py
```
#### Демонстрационные тесты
```bash
python demo_test.py
```
#### Тестирование MCP протокола
```bash
python test_mcp_direct.py
```
#### Интеграция с OpenRouter
```bash
# Создайте файл .env на основе env_example.txt
python openrouter_client.py
```
## 📋 Примеры использования
### Управление задачами
```python
# Добавить задачу
add_task("Написать отчет", "Подготовить квартальный отчет", "high")
# Посмотреть задачи
get_tasks("pending") # только невыполненные
get_tasks("all") # все задачи
# Завершить задачу
complete_task(1)
```
### Калькулятор
```python
calculate("2 + 2 * 3")
calculate("(10 + 5) / 3")
```
### Генератор паролей
```python
generate_password(16, True) # длинный пароль с символами
generate_password(8, False) # короткий без символов
```
### Анализ текста
```python
text_stats("Это пример текста для анализа. Текст содержит разные слова.")
```
## 🔧 Архитектура
### Варианты серверов
- **personal_assistant.py** - FastMCP сервер (упрощенная реализация)
- **standard_mcp_server.py** - Полноценный MCP сервер по стандарту
- **openrouter_client.py** - Клиент для интеграции с OpenRouter API
### Тестирование
- **demo_test.py** - Демонстрация всех функций с примерами
- **test_mcp_direct.py** - Прямое тестирование MCP протокола
### Хранение данных
- Использует хранение в памяти (для демонстрации)
- В реальном проекте можно заменить на базу данных
### Безопасность
- Калькулятор использует безопасное вычисление выражений
- Валидация входных данных для всех инструментов
### Типизация
- Полная типизация с использованием typing
- Документированные функции с описанием параметров
## 🌟 Особенности реализации
1. **Красивый вывод** - использование эмодзи и форматирование
2. **Обработка ошибок** - валидация входных данных
3. **История операций** - сохранение результатов вычислений
4. **Фильтрация данных** - различные способы просмотра задач
5. **Умные промпты** - контекстные подсказки для ИИ
## 🔄 Интеграция с ИИ
Этот MCP сервер может интегрироваться с любыми ИИ помощниками, поддерживающими MCP протокол:
- Claude Desktop
- ChatGPT с MCP плагинами
- Другие MCP-совместимые приложения
## 📝 Структура проекта
```
example/
├── personal_assistant.py # Основной MCP сервер (FastMCP)
├── standard_mcp_server.py # Стандартный MCP сервер
├── openrouter_client.py # Клиент для OpenRouter API
├── demo_test.py # Демонстрационные тесты функций
├── test_mcp_direct.py # Прямые тесты MCP протокола
├── requirements.txt # Зависимости Python
├── README.md # Документация
├── env_example.txt # Пример переменных окружения
└── .gitignore # Git ignore файл
```
## 🎯 Цель проекта
Демонстрация всех возможностей MCP протокола:
- ✅ Tools - выполнение действий
- ✅ Resources - доступ к данным
- ✅ Prompts - контекстные подсказки
## 🤝 Развитие проекта
Этот проект можно расширить:
- Добавить персистентное хранение (SQLite, PostgreSQL)
- Интегрировать внешние API (погода, новости)
- Добавить веб-интерфейс
- Реализовать систему пользователей
- Добавить больше инструментов анализа This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues