analyze_docs
Analyze documentation for tasks like finding gaps, generating outlines, or checking consistency to prepare results for agent handoffs.
Instructions
Analyze documentation for specific tasks (foundation for agent handoffs)
Args:
task: Analysis task (e.g., "find_gaps", "generate_outline", "check_consistency")
docs: Optional list of specific documents to analyze
output_format: Output format (summary, detailed, structured)
Returns:
Analysis results ready for agent handoff
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | ||
| docs | No | ||
| output_format | No | summary |
Implementation Reference
- src/main.py:433-487 (handler)The complete implementation of the analyze_docs tool, including the @mcp.tool() decorator for registration, type-hinted parameters serving as input schema, docstring, validation logic, document gathering via list_docs(), and structured output for agent handoffs.@mcp.tool() def analyze_docs( task: str, docs: Optional[List[str]] = None, output_format: str = 'summary' ) -> Dict[str, Any]: """ Analyze documentation for specific tasks (foundation for agent handoffs) Args: task: Analysis task (e.g., "find_gaps", "generate_outline", "check_consistency") docs: Optional list of specific documents to analyze output_format: Output format (summary, detailed, structured) Returns: Analysis results ready for agent handoff """ available_tasks = [ 'find_gaps', 'generate_outline', 'check_consistency', 'extract_examples', 'identify_prerequisites', 'suggest_improvements', ] if task not in available_tasks: return { 'error': f'Unknown task. Available tasks: {", ".join(available_tasks)}', 'available_tasks': available_tasks, } # Gather documents to analyze if not docs: all_docs = list_docs() docs = [doc['path'] for doc in all_docs] # This is where different analysis agents would be invoked # Structure the response for easy handoff to specialized agents return { 'task': task, 'documents_analyzed': len(docs), 'output_format': output_format, 'results': { 'summary': f"Analysis task '{task}' ready for processing", 'documents': docs, 'next_steps': [ 'Connect specialized agent for this task', 'Process documents according to task requirements', 'Return structured results', ], }, 'agent_handoff_ready': True, 'suggested_model': 'gpt-4' if task in ['find_gaps', 'check_consistency'] else 'claude-3-5-sonnet', }
- src/main.py:49-49 (registration)The analyze_docs tool is listed in the MCP server instructions as an available tool with its description.- analyze_docs(task): Analyze documentation for specific tasks
- src/main.py:539-539 (registration)The analyze_docs tool is listed among available tools in the test mode print statement.'Tools available: list_docs, search_docs, ask_docs, index_docs, analyze_docs'