feat: add SSE server with agent presence system

- Add SSE transport server for remote MCP connections
- Implement API key authentication
- Add agent presence system (register_agent, list_agents)
- Add list_services tool to discover local services
- Refactor messaging for dynamic agent names

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Claude (Lupul Augmentat)
2026-01-27 07:27:29 +01:00
parent 24e871ea01
commit 250420e9e2
6 changed files with 529 additions and 57 deletions

View File

@@ -4,7 +4,7 @@ import { FileWriteTool } from './builtin/FileWriteTool';
import { FileListTool } from './builtin/FileListTool';
import { SystemCommandTool } from './builtin/SystemCommandTool';
import { HttpRequestTool } from './builtin/HttpRequestTool';
import { SendMessageTool, ReceiveMessagesTool } from './builtin/messaging';
import { RegisterAgentTool, ListAgentsTool, ListServicesTool, SendMessageTool, ReceiveMessagesTool } from './builtin/messaging';
import { NatsClient } from '../nats/NatsClient';
export * from './base/ToolHandler';
@@ -21,7 +21,10 @@ export function createBuiltinTools(natsClient: NatsClient): Map<string, ToolHand
tools.set('system_command', new SystemCommandTool());
tools.set('http_request', new HttpRequestTool());
// Messaging tools (require NATS client)
// Agent communication tools (require NATS client)
tools.set('register_agent', new RegisterAgentTool(natsClient));
tools.set('list_agents', new ListAgentsTool(natsClient));
tools.set('list_services', new ListServicesTool(natsClient));
tools.set('send_message', new SendMessageTool(natsClient));
tools.set('receive_messages', new ReceiveMessagesTool(natsClient));