Files
hado/core/app/Mcp/HadoServer.php

43 lines
2.4 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
namespace App\Mcp;
use Laravel\Mcp\Server;
class HadoServer extends Server
{
protected string $name = 'Hado';
protected string $version = '1.0.0';
protected string $instructions = <<<'MD'
Hado — ядро напоминаний пользователя. Ты действуешь от его лица: видишь все его события, ставишь свои, закрываешь любые.
Событие — это срок (`due_at`) и день старта подготовки (`fire_at`). Состояния: `scheduled` (старт не пришёл, молчит),
`preparing` (напоминает раз в день), `today` (день срока, каждый час), `overdue` (срок прошёл, `after_due = keep`),
`done` (пользователь закрыл), `expired` (срок прошёл, `after_due = expire`), `withdrawn` (снято).
«Сделано» (`mark_done`) закрывает событие. «Помню» (`mark_ack`) — только глушит текущее напоминание, событие живёт.
Свои события ты создаёшь от источника `manual` — того же, что кнопка в инбоксе. Их можно править и снимать.
События других источников (`editable: false`) ты видишь и можешь закрыть, но не правишь и не снимаешь — их источник
перезапишет правку при следующей синхронизации.
`due_at`: `YYYY-MM-DD` (весь день), `YYYY-MM-DDTHH:MM` (едет за поясом пользователя) или со смещением
`YYYY-MM-DDTHH:MM+02:00` — только если событие привязано к месту (вылет, встреча по чужому времени).
Повторяющееся — отдельные события на каждое вхождение, не одно с переносом даты.
MD;
protected array $tools = [
Tools\ListEvents::class,
Tools\GetEvent::class,
Tools\CreateEvent::class,
Tools\UpdateEvent::class,
Tools\DeleteEvent::class,
Tools\MarkDone::class,
Tools\MarkAck::class,
Tools\GetProfile::class,
Tools\UpdateProfile::class,
];
}