ilia 4b9ffb5ddf docs: Update architecture and add new documentation for LLM and MCP
- Enhanced `ARCHITECTURE.md` with details on LLM models for work (Llama 3.1 70B Q4) and family agents (Phi-3 Mini 3.8B Q4).
- Introduced new documents:
  - `ASR_EVALUATION.md` for ASR engine evaluation and selection.
  - `HARDWARE.md` outlining hardware requirements and purchase plans.
  - `IMPLEMENTATION_GUIDE.md` for Milestone 2 implementation steps.
  - `LLM_CAPACITY.md` assessing VRAM and context window limits.
  - `LLM_MODEL_SURVEY.md` surveying open-weight LLM models.
  - `LLM_USAGE_AND_COSTS.md` detailing LLM usage and operational costs.
  - `MCP_ARCHITECTURE.md` describing the Model Context Protocol architecture.
  - `MCP_IMPLEMENTATION_SUMMARY.md` summarizing MCP implementation status.

These updates provide comprehensive guidance for the next phases of development and ensure clarity in project documentation.
2026-01-05 23:44:16 -05:00

46 lines
905 B
Python

"""
Base tool interface.
"""
from abc import ABC, abstractmethod
from typing import Any, Dict
class BaseTool(ABC):
"""Base class for MCP tools."""
@property
@abstractmethod
def name(self) -> str:
"""Tool name."""
pass
@property
@abstractmethod
def description(self) -> str:
"""Tool description."""
pass
@abstractmethod
def get_schema(self) -> Dict[str, Any]:
"""
Get tool schema for tools/list response.
Returns:
Dict with name, description, and inputSchema
"""
pass
@abstractmethod
def execute(self, arguments: Dict[str, Any]) -> Any:
"""
Execute the tool with given arguments.
Args:
arguments: Tool arguments
Returns:
Tool execution result
"""
pass