Mentioned as a potential data source for academic research queries and content gathering.
Produces Canva template specifications, design guides, and color palettes for digital design projects.
Mentioned as a potential web search provider for research and content gathering operations.
Generates optimized Etsy product listings with tags, descriptions, and SEO optimization.
Mentioned as a potential web search provider through Google Custom Search API for research operations.
Creates product listings for Gumroad including pricing strategies and marketing copy.
Mentioned as a potential data source for academic and medical research queries.
Generates YouTube content assets including video scripts, thumbnail templates, descriptions, and SEO tags based on specified topics and styles.
Research & Content Gathering App
A powerful, full-featured research and content gathering application with live parameter adjustment capabilities. Built with Python and FastMCP, this app provides an intuitive web interface for conducting research, gathering content, and building structured outputs.
Features
Core Capabilities
Full Research Engine: Advanced web scraping and content gathering
Live Parameter Adjustment: Modify research parameters in real-time while tasks are running
Content Analysis: Automatic relevance scoring, summarization, and topic extraction
Content Building: Generate articles, reports, summaries, and presentations from research
Real-time Progress Tracking: Monitor research progress with live updates
Multiple Output Formats: Export as Markdown, HTML, JSON, or plain text
Configuration Management: Save and load research configurations
Multi-Platform Asset Generation
Generate professional assets for multiple platforms:
YouTube: Video scripts, thumbnail templates, descriptions, SEO tags
Gumroad: Product listings, pricing strategies, marketing copy
Etsy: Optimized product listings, tags, descriptions, SEO
Websites: Landing pages, blog posts, SEO elements
Game Development: Design documents, mechanics, story structures
Canva: Template specifications, design guides, color palettes
Multi-Platform Packages: Generate complete asset sets for product launches
Web Interface Features
Beautiful, responsive UI with gradient design
Real-time parameter sliders (depth, max results, relevance threshold, detail level)
Interactive tabs for Results, Statistics, Logs, and Content Builder
Live progress bar and status indicators
Activity logging with timestamps
Statistics dashboard with quality metrics
MCP Tools (23+ Available)
Research Tools:
start_research - Start research with customizable parameters
get_research_status - Check current task status and progress
pause_research - Pause running research tasks
resume_research - Resume paused tasks
stop_research - Stop current research
update_parameters - Live parameter updates while running
get_results - Retrieve results in various formats
export_results - Export to files
build_content - Generate structured content (articles, reports, etc.)
analyze_results - Get detailed analysis and insights
get_statistics - View session statistics
search_results - Search within collected results
save_configuration - Save research settings
load_configuration - Load saved settings
Asset Generation Tools: 15. generate_youtube_assets - Create video scripts, thumbnails, descriptions 16. generate_gumroad_listing - Generate product listings for Gumroad 17. generate_etsy_listing - Create optimized Etsy product listings 18. generate_web_assets - Build landing pages and blog templates 19. generate_game_assets - Create game design documents 20. generate_canva_specs - Generate Canva template specifications 21. list_platforms - Show all supported platforms 22. generate_multi_platform_package - Create complete asset packages
Prompts: 23. research_prompt - Generate research prompts 24. content_prompt - Generate content creation prompts
Installation
Prerequisites
Python 3.13+
uv package manager
Setup
Clone the repository:
Install Python version and dependencies:
Usage
Starting the Server
Run the server on port 3000:
The server will start and display:
Using the Web Interface
Open your browser to
http://127.0.0.1:3000/static/index.htmlEnter your research topic in the query field
Adjust parameters using the live sliders:
Depth Level (1-10): How deep to research
Max Results (5-100): Maximum number of results
Relevance Threshold (0.0-1.0): Minimum quality score
Content Detail (1-10): Amount of content to extract
Select source type and output format
Click "Start Research" to begin
Adjust parameters in real-time while research runs
Use Pause/Resume/Stop controls as needed
View results in the Results tab
Check Statistics for insights
Build content from research in the Content Builder tab
Using MCP Tools
You can also interact with the server programmatically through MCP tools:
Generating Assets for Different Platforms
YouTube Content Creation:
Gumroad Product Launch:
Etsy Shop:
Website Development:
Game Development:
Testing with MCP Inspector
Install Node.js (^22.7.5)
Run the inspector:
Open
http://localhost:6274Configure:
Transport Type: Streamable HTTP
URL: http://127.0.0.1:3000/mcp
Project Structure
Research Parameters
Query Options
query: Research topic (required)
source_type: all, academic, news, technical, social
depth: Research depth level (1-10)
max_results: Maximum results to gather (5-100)
relevance_threshold: Minimum quality score (0.0-1.0)
detail_level: Content extraction detail (1-10)
output_format: markdown, html, json, text
summary_length: brief, moderate, detailed
Content Building Options
Build different types of content from research:
Article: Structured article with introduction and conclusions
Report: Formal research report with executive summary
Summary: Brief executive summary of findings
Presentation: Slide-formatted content
Tone Options
Professional
Academic
Casual
Technical
Statistics & Analytics
The app tracks comprehensive statistics:
Total queries performed
Total results gathered
Average relevance score
Processing time
Sources analyzed
Error count
Quality score (composite metric)
Topic distribution
Source type distribution
Live Parameter Adjustment
One of the key features is the ability to adjust parameters while research is running:
Start a research task
Move sliders in the sidebar
Parameters update automatically
Research adapts to new settings in real-time
This allows you to:
Increase depth if initial results are shallow
Raise/lower relevance threshold to filter results
Adjust max results to gather more or less data
Change detail level for more/less content
Export & Sharing
Export research results in multiple formats:
Markdown: Perfect for documentation
HTML: Ready for web publishing
JSON: For programmatic processing
Text: Simple plain text format
Save configurations for reuse:
Development
Adding Custom Search Providers
Edit research_engine.py to add real search integrations:
Extending Content Builders
Add new content types in research_engine.py:
Then register in main.py:
Custom Analysis Tools
Add specialized analysis in the research engine:
Architecture
Research Engine
Asynchronous research execution
Parallel content fetching
Real-time parameter updates
Pause/resume capability
Progress tracking
Content Processing
Web search and URL discovery
Content fetching (with timeout handling)
HTML parsing and text extraction
Relevance scoring
Summarization
Topic analysis
Quality metrics
MCP Integration
FastMCP server with streamable HTTP transport
15+ tools for comprehensive research control
Resource serving for web interface
Prompt templates for research and content generation
Performance
The app is designed for efficiency:
Asynchronous I/O for parallel processing
Smart throttling to avoid rate limits
Configurable timeouts
Progress tracking without blocking
Memory-efficient result storage
Limitations & Future Enhancements
Current limitations:
Web search uses placeholder (requires API integration)
Basic text extraction (can be enhanced with ML models)
Simple relevance scoring (can use embeddings/semantic search)
Planned enhancements:
Integration with real search APIs
Advanced NLP for better summarization
Semantic similarity scoring
Citation network analysis
Multi-language support
Database storage for large result sets
WebSocket for true real-time updates
Collaborative research sessions
Troubleshooting
Port already in use
Dependencies issues
Web interface not loading
Check that static/index.html exists
Ensure server is running on port 3000
Try accessing http://127.0.0.1:3000 directly
License
This project is open source and available under the MIT License.
Contributing
Contributions are welcome! Please:
Fork the repository
Create a feature branch
Add tests for new features
Submit a pull request
Support
For issues, questions, or suggestions:
Open an issue on GitHub
Check existing documentation
Review MCP documentation at https://modelcontextprotocol.io
Credits
Built with:
FastMCP - MCP server framework
aiohttp - Async HTTP client
BeautifulSoup - HTML parsing
Python Markdown - Markdown processing
Happy Researching! 🔬📚✨