| # KGraph-MCP MVP Tasks - Complete Extraction from full_plan.md | |
| # Format: MVP|Sprint|Name|Objective | |
| # This file contains ALL tasks from the comprehensive 5-MVP plan | |
| # MVP 1: KG-Powered Tool Suggester (Day 1-2) | |
| 1|1|KG_Structure|Create in-memory Knowledge Graph structure for storing MCP Tool metadata and embeddings | |
| 1|1|Tool_Data_Loading|Load initial MCP Tools from JSON into the in-memory KG with structured and vector storage | |
| 1|1|Embedder_Service|Implement embedding generation service using LLM APIs for tool descriptions | |
| 1|1|Semantic_Search|Implement cosine similarity search for finding relevant tools based on query embeddings | |
| 1|1|Simple_Planner|Create SimplePlannerAgent that embeds queries and searches for relevant tools | |
| 1|1|Basic_Gradio_UI|Build basic Gradio interface with query input and tool suggestions display | |
| # MVP 2: KG Suggests Actionable Tool with Prompt Template (Day 2-3) | |
| 2|1|Prompt_Ontology|Define MCPPrompt dataclass and extend KG to store prompt templates | |
| 2|1|Prompt_Data_Loading|Load initial prompts from JSON and link them to tools in the KG | |
| 2|1|Enhanced_Planner|Enhance planner to select both tools and associated prompts based on query | |
| 2|1|UI_Prompt_Display|Update Gradio UI to display selected prompt templates with placeholders | |
| 2|1|PlannedStep_Structure|Create PlannedStep dataclass to represent tool+prompt selections | |
| # MVP 3: Interactive Prompt Filling & Simulated Execution (Day 3-4) | |
| # Sprint 1: Dynamic UI Generation | |
| 3|1|Dynamic_Input_Fields|Implement dynamic Gradio input field generation based on prompt variables | |
| 3|1|Input_Collection|Create mechanism to collect user inputs from dynamic fields | |
| 3|1|UI_State_Management|Implement UI state transitions for planning and execution phases | |
| # Sprint 2: User Input Collection & Executor Foundation | |
| 3|2|Input_Validation|Add input validation for dynamic fields based on prompt requirements | |
| 3|2|Stub_Executor|Create StubExecutorAgent with basic simulate_execution method | |
| 3|2|Execute_Button|Add Execute Plan button and wire it to input collection | |
| 3|2|Handler_Integration|Implement handle_execute_plan handler in app.py | |
| # Sprint 3: Integrate Executor & Display Simulated Results | |
| 3|3|Tool_Specific_Mocks|Enhance StubExecutorAgent to return tool-specific mock responses based on tool_id | |
| 3|3|Executor_Integration|Integrate StubExecutorAgent into app.py workflow and global service initialization | |
| 3|3|Result_Display|Format and display simulated execution results in UI with proper Markdown | |
| # Sprint 4: Refine Simulated Outputs & UI Polish | |
| 3|4|Input_Aware_Mocks|Make mock responses sensitive to user inputs with context-aware outputs | |
| 3|4|Error_Simulation|Add simulated error states for edge cases and input validation failures | |
| 3|4|UI_Polish|Improve execution result display with better formatting and status indicators | |
| 3|4|Button_Feedback|Add execute button state management and loading indicators | |
| # Sprint 5: MVP3 Finalization & Documentation | |
| 3|5|E2E_Testing|Comprehensive end-to-end regression testing of MVP1-3 features integration | |
| 3|5|Documentation_Update|Update all project READMEs and documentation for MVP3 functionality | |
| 3|5|Code_Cleanup|Final code review, cleanup, and deployment preparation for MVP3 | |
| 3|5|Quality_Assurance|Run all quality checks, CI validation, and performance testing | |
| # MVP 4: Real MCP Tool Execution via Gradio Server (Day 4-5) | |
| # Sprint 1: First Track 1 MCP Server (Summarizer) | |
| 4|1|Summarizer_Project_Init|Create new separate project directory for MCP Summarizer Tool | |
| 4|1|Summarizer_Environment|Set up Python environment, dependencies, and project structure | |
| 4|1|Summarizer_Logic|Implement text summarization using Hugging Face Inference API | |
| 4|1|Summarizer_Gradio_MCP|Create Gradio UI and expose as MCP server with /mcp endpoint | |
| 4|1|Summarizer_Testing|Unit test summarization logic with mocked API calls | |
| 4|1|Summarizer_Deploy|Deploy Summarizer to Hugging Face Space with documentation | |
| # Sprint 2: Second Track 1 MCP Server (Sentiment Analyzer) | |
| 4|2|Sentiment_Project_Init|Create new separate project directory for MCP Sentiment Analyzer Tool | |
| 4|2|Sentiment_Environment|Set up Python environment, dependencies, and project structure | |
| 4|2|Sentiment_Logic|Implement sentiment analysis using Hugging Face Inference API | |
| 4|2|Sentiment_Gradio_MCP|Create Gradio UI and expose as MCP server with /mcp endpoint | |
| 4|2|Sentiment_Testing|Unit test sentiment analysis logic with mocked API calls | |
| 4|2|Sentiment_Deploy|Deploy Sentiment Analyzer to Hugging Face Space with documentation | |
| # Sprint 3: Update Main KG & Executor for Real MCP Calls | |
| 4|3|MCPTool_Ontology_Update|Add execution_type field to MCPTool dataclass to distinguish live vs simulated | |
| 4|3|Tools_JSON_Update|Update initial_tools.json with live MCP server URLs and execution types | |
| 4|3|McpExecutorAgent_Create|Refactor StubExecutorAgent to McpExecutorAgent for real HTTP calls | |
| 4|3|HTTP_Client_Logic|Implement HTTP POST requests to live MCP servers with proper payload construction | |
| 4|3|Error_Handling_Network|Add robust error handling for network failures, timeouts, and parsing errors | |
| 4|3|App_Integration_Update|Update app.py to use McpExecutorAgent instead of StubExecutorAgent | |
| # Sprint 4: End-to-End Testing with Live MCP Tools & UI Polish | |
| 4|4|Live_Integration_Testing|Test complete flow from query to real MCP execution with both tools | |
| 4|4|UI_Live_Indicators|Differentiate live vs simulated results in UI with visual indicators | |
| 4|4|Error_Display_Enhancement|Improve display of live MCP call errors with user-friendly messaging | |
| 4|4|Performance_Optimization|Optimize performance for real tool execution and error recovery | |
| # Sprint 5: Final Documentation, Videos & Submission Prep | |
| 4|5|Track1_Documentation_Complete|Update all READMEs for Track 1 tools and main project MVP4 integration | |
| 4|5|Demo_Videos_Recording|Record demo videos for main Track 3 demo and individual Track 1 tools | |
| 4|5|HF_Spaces_Finalization|Finalize all Hugging Face Spaces with proper secrets, tags, and metadata | |
| 4|5|Submission_Artifacts_Prep|Prepare all hackathon submission artifacts and final CI validation | |
| # MVP 5: KG-Informed Model Preferences for Sampling (Day 5-6) | |
| # Sprint 1: Enhance KG Ontology & Data for Model Preferences | |
| 5|1|MCPPrompt_Sampling_Fields|Add sampling preference fields to MCPPrompt dataclass (model hints, priorities) | |
| 5|1|Sampling_Data_Population|Update initial_prompts.json with diverse sampling preference examples | |
| 5|1|KG_Loading_Enhancement|Update InMemoryKG to load new sampling preference fields correctly | |
| 5|1|Ontology_Testing|Test MCPPrompt instantiation and KG loading with new sampling fields | |
| # Sprint 2: Planner/Agent Logic to Construct Conceptual Sampling Request | |
| 5|2|Sampling_Request_Construction|Add method to SimplePlannerAgent for constructing MCP sampling/createMessage params | |
| 5|2|Model_Preferences_Dynamic|Populate modelPreferences dynamically from KG data (hints, priorities) | |
| 5|2|Sampling_Parameters_Logic|Implement logic for systemPrompt, includeContext, temperature, maxTokens | |
| 5|2|Sampling_Agent_Testing|Unit test sampling request construction with various PlannedStep configurations | |
| # Sprint 3: Gradio UI for Triggering and Displaying Conceptual Sampling Request | |
| 5|3|Sampling_UI_Components|Add UI elements for sampling request (button, JSON display, accordion) | |
| 5|3|Sampling_Request_Handler|Implement handle_construct_sampling_request Gradio handler | |
| 5|3|Sampling_Button_Integration|Wire construct sampling button to backend handler with proper outputs | |
| 5|3|Sampling_UI_Testing|Test sampling request generation and display in UI | |
| # Sprint 4: (Optional Stretch) Simulate LLM Call for Sampling Refinement | |
| 5|4|LLM_Refinement_Method|Add LLM call logic for sampling refinement suggestions | |
| 5|4|Chat_Completion_Service|Extend EmbeddingService with get_chat_completion for meta-prompting | |
| 5|4|Refinement_UI_Display|Update UI to display LLM-generated sampling refinement suggestions | |
| 5|4|LLM_Integration_Testing|Test LLM refinement call with mocked responses | |
| # Sprint 5: Final Testing, Documentation Update & Innovation Showcase | |
| 5|5|Sampling_Features_Testing|Manual E2E testing of conceptual sampling features | |
| 5|5|Innovation_Documentation|Update READMEs to highlight innovative MCP usage for judging criteria | |
| 5|5|Final_Submission_Complete|Final code review, cleanup, video updates, and hackathon submission prep | |
| 5|5|MVP5_Quality_Assurance|All checks pass, CI green, and project ready for final evaluation |