# AGENTS.md

## Описание проекта: LazyBear MCP

### Назначение
.NET 10 сервер Model Context Protocol (MCP) для интеграции торговых AI-инструментов.

### Структура проекта
```
LazyBearWorks/
├── LazyBear.MCP/
│   ├── Program.cs              # Главный файл с хостингом MCP сервера
│   ├── Pages/                  # Razor Pages (UI)
│   ├── Services/
│   │   └── TradingTools.cs     # Реализация инструментов MCP
│   ├── appsettings.json        # Конфигурация
│   └── LazyBear.MCP.csproj    # Проектный файл
├── AGENTS.md                   # Этот файл, правила для агентов
└── README.md                   # Документация для пользователей
```

### Основные концепты

**Хостинг (Hosting):**
- ASP.NET Core веб-приложение (.NET 10.0)
- HTTP transport для удалённой MCP коммуникации
- Авто-обнаружение `[McpServerToolType]` и `[McpServerResourceType]`

**Технологический стек:**
- **Runtime:** .NET 10.0
- **Framework:** ASP.NET Core
- **SDK:** ModelContextProtocol.AspNetCore 1.2.0
- **AI:** Microsoft.Extensions.AI

**Особенности MCP:**
- **Инструменты (Tools):** Статические классы с атрибутами `[McpServerTool]`
- **Ресурсы (Resources):** Шаблоны ресурсов с атрибутами `[McpServerResource]`
- **Промпты (Prompts):** Параметризованные промпты (в разработке)

### Запуск

**Запустить сервер:**
```bash
dotnet run --project LazyBear.MCP
```

**Собрать проект:**
```bash
dotnet build
```

### Пакеты
- `ModelContextProtocol` - основной SDK
- `ModelContextProtocol.AspNetCore` - интеграция с ASP.NET Core
- `Microsoft.Extensions.AI` - абстракции AI

---

## Memory Log (MUST)

PREFIX: `lazybear/`

| entityType     | scope                    | key example                   |
|----------------|--------------------------|-------------------------------|
| `architecture` | структура, хостинг, SDK  | `lazybear/arch/mcp-transport` |
| `mcp_tool`     | инструменты MCP          | `lazybear/tool/get-price`     |
| `decision`     | решения, ADR             | `lazybear/decision/transport` |
| `bug`          | ошибки, баги             | `lazybear/bug/auth-fail`      |
| `config`       | конфигурация             | `lazybear/config/appsettings` |
| `task_log`     | прогресс задач           | `lazybear/task/refactor-tools`|

REF: [AGENT.common.md](AGENT.common.md) → Memory Log

---

## Правила для машин (MACHINE-FIRST)

### Обязательные правила (MUST)

**Перед модификацией:**
1. Прочитать существующий код
2. Сохранять текущий стиль и паттерны
3. Минимизировать изменения
4. Не добавлять секреты в код

**Перед коммитом:**
1. Сборка `dotnet build` должна проходить локально
2. Изменения не должны ломать MCP протокол
3. Код в Git только после проверки сборки
4. Комментарии, документация и коммиты — только на русском

---

## Модель выполнения (MUST)

**Приоритеты инструкции:**
1. Инструкции пользователя
2. AGENTS.md (этот файл)
3. Упомянутые общие правила
4. Существующий стиль кода
5. Лучшие практики

**Переиспользуемые правила:**
- [AGENT.common.md](AGENT.common.md) - общие правила
- [AGENT.interaction.md](AGENT.interaction.md) - правила взаимодействия

### Поддержание правил (MUST)
- см. [AGENT.common.md](AGENT.common.md) → Rules Maintenance
