A C# framework for building multi-agent systems with LLM integration, tool delegation, workflow orchestration, and MCP (Model Context Protocol) support.
AgentDevKit.Adk defines 6 tools with mixed quality. Naming is generic (DelegationTool, FunctionTool, McpTool, SensitiveTool) and lacks action verbs, they describe wrapper patterns rather than user-facing actions. Descriptions are present but minimal (10-50 chars), providing little context for LLM selection. Schemas are partially visible: DelegationTool and FunctionTool show explicit JSON schemas; McpTool delegates to MCP client schemas; FileReadTool and DeleteDatabaseTool lack visible schema definitions in the provided code. Parameter descriptions are sparse, most params lack detail on format, constraints, or dependencies. Error handling is basic (try-catch with generic messages). No evidence of pagination, output field documentation, or recovery guidance. The toolkit is a meta-framework for composing agents and tools, not a domain-specific tool suite, which limits applicability of standard tool patterns.
Wraps an IAgent as an ITool, enabling delegation (Manager -> Worker).
Deletes a database (sensitive operation).
Reads files from the filesystem.
Generic typed function tool that wraps a lambda function with JSON serialization of arguments and results.
Wraps an MCP (Model Context Protocol) tool client, enabling delegation to remote MCP servers.
Wraps an inner ITool to mark it as sensitive, enabling approval workflows and guardrails.
FileReadTool and DeleteDatabaseTool lack visible input schemas in source code.
Tool names are generic wrapper names (DelegationTool, FunctionTool, McpTool, SensitiveTool) rather than action verbs (get_, create_, delete_, send_). LLMs cannot infer intent from names alone.
Descriptions are minimal (10-50 chars) and lack context on WHEN to use each tool or WHAT it returns. Baseline for A+ tools is 194 chars average.
Parameter descriptions are absent or trivial. 'prompt' in DelegationTool lacks format/length constraints. 'city' in FunctionTool is hardcoded in schema but not explained. No descriptions for sessionId, arguments, etc.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 33 | <=2025-11-25 | v2 |
Error handling is generic. DelegationTool and McpTool return JSON error objects with no recovery guidance. LLMs cannot determine if errors are retryable, user-fixable, or fatal.