Skip to main content
Glama
eaglelandsonce

MCP Research Server

šŸ” Company Research Agent with MCP + OpenAI + Gradio

An intelligent company research and competitive analysis tool that combines the power of Model Context Protocol (MCP), OpenAI GPT-4, and Gradio to deliver comprehensive business intelligence.

🌟 Features

  • Automated Company Research: Search for company information using MCP tools

  • Competitor Analysis: Automatically identify and analyze competitors

  • Business Model Analysis: Understand company operations and revenue streams

  • Market Keywords Extraction: Extract relevant keywords describing the competitive landscape

  • AI-Powered Insights: OpenAI synthesizes research into actionable executive summaries

  • Interactive UI: Beautiful Gradio interface for easy interaction

Related MCP server: competitor_analyzer-mcp-server

šŸ—ļø Architecture

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  Gradio UI      │
│  (Frontend)     │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
         │
         ā–¼
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”      ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  OpenAI GPT-4   │◄────►│  MCP Server      │
│  (AI Analysis)  │      │  (Research Tools)│
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜      ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
                                   │
                         ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
                         │  Research Tools:  │
                         │  • Company Info   │
                         │  • Competitors    │
                         │  • Business Model │
                         │  • Keywords       │
                         ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜

šŸ“‹ Components

1. MCP Research Server (mcp_research_server.py)

FastMCP server providing research tools:

  • search_company_info() - Search for basic company information

  • find_competitors() - Find competitor companies

  • analyze_company_business() - Analyze business model and activities

  • extract_market_keywords() - Extract market and industry keywords

  • generate_competitive_report() - Generate full competitive analysis

2. Gradio Application (gradio_app.py)

Interactive web interface that:

  • Accepts company name and OpenAI API key as inputs

  • Orchestrates MCP tool calls for data gathering

  • Uses OpenAI to generate intelligent summaries

  • Displays results in an organized, user-friendly format

šŸš€ Quick Start

Prerequisites

Installation

  1. Clone or download this repository

  2. Run the setup script:

    chmod +x setup.sh
    ./setup.sh
  3. Configure your API key:

    cp .env.example .env
    # Edit .env and add your OpenAI API key

Manual Installation

If you prefer manual setup:

# Create virtual environment
python3 -m venv venv
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

šŸ’» Usage

Start the Application

# Activate virtual environment (if not already active)
source venv/bin/activate

# Run the Gradio app
python gradio_app.py

The application will start on http://localhost:7860

Using the Interface

  1. Enter a company name (e.g., "Apple", "Tesla", "Netflix")

  2. Enter your OpenAI API key (required for AI analysis)

  3. Click "Research Company" to start the analysis

  4. View results:

    • Executive Summary (AI-generated)

    • Full Report (expand accordion)

    • Market Keywords (expand accordion)

Example Companies to Try

  • Technology: Apple, Microsoft, Google, Amazon, Meta

  • Automotive: Tesla, Ford, General Motors

  • Entertainment: Netflix, Disney

  • Consumer Goods: Nike, Coca-Cola, Starbucks

šŸ“¦ Dependencies

  • fastmcp - Model Context Protocol server framework

  • gradio - Web UI framework

  • openai - OpenAI API client

  • requests - HTTP library for web requests

  • beautifulsoup4 - HTML parsing (for future web scraping)

  • python-dotenv - Environment variable management

šŸ”§ How It Works

  1. User Input: User enters company name in Gradio interface

  2. MCP Tools: Application calls MCP research tools to gather data:

    • Company information from Wikipedia API

    • Competitor identification from database

    • Business model analysis

    • Market keyword extraction

  3. AI Synthesis: OpenAI GPT-4 processes all research data and generates:

    • Executive summary

    • Key insights

    • Market positioning analysis

  4. Results Display: Formatted report shown in Gradio UI

šŸŽÆ Use Cases

  • Competitive Intelligence: Understand your competitors quickly

  • Market Research: Identify market trends and keywords

  • Investment Analysis: Research companies for investment decisions

  • Business Strategy: Inform strategic planning with competitive data

  • Sales Enablement: Prepare for sales conversations with prospect research

šŸ” Security Notes

  • Never commit your .env file or expose your OpenAI API key

  • Use environment variables for sensitive information

  • The .env.example file is provided as a template

šŸ› ļø Customization

Adding More Companies

Edit mcp_research_server.py and add entries to the data dictionaries:

  • competitors_db (line ~70)

  • business_data (line ~100)

  • industry_keywords (line ~140)

Using Real APIs

For production use, replace the sample data with real API calls:

  • Business data APIs (Crunchbase, PitchBook)

  • Financial APIs (Alpha Vantage, Yahoo Finance)

  • News APIs (NewsAPI, Google News)

  • Web scraping (requests + BeautifulSoup)

Changing OpenAI Model

In gradio_app.py, modify the model parameter:

model="gpt-4o-mini"  # Change to "gpt-4o", "gpt-4-turbo", etc.

šŸ“Š Project Structure

mcp2_test/
ā”œā”€ā”€ README.md                    # This file
ā”œā”€ā”€ requirements.txt             # Python dependencies
ā”œā”€ā”€ .env.example                 # Environment variables template
ā”œā”€ā”€ setup.sh                     # Setup script
ā”œā”€ā”€ mcp_research_server.py       # MCP server with research tools
└── gradio_app.py               # Gradio web application

šŸ› Troubleshooting

"Module not found" errors

pip install -r requirements.txt

"Invalid API key" error

  • Check your OpenAI API key in the input field

  • Ensure you have credits in your OpenAI account

  • Verify the key starts with sk-

Port already in use

Change the port in gradio_app.py:

demo.launch(server_port=7861)  # Use different port

šŸš€ Future Enhancements

  • Real-time web scraping for live data

  • Integration with business intelligence APIs

  • Export reports to PDF/CSV

  • Historical trend analysis

  • Multi-company comparison view

  • Financial metrics integration

  • News sentiment analysis

  • Custom report templates

šŸ“ License

This project is provided as-is for educational and research purposes.

šŸ¤ Contributing

Contributions welcome! Feel free to:

  • Add more MCP tools

  • Improve the UI/UX

  • Integrate additional APIs

  • Enhance the AI prompts

  • Add export functionality

šŸ’” Learn More


Built with ā¤ļø using FastMCP, OpenAI, and Gradio

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Provides real-time business event intelligence and AI-scored sales leads to help users track funding rounds, acquisitions, and executive hires. It enables AI agents to generate strategic market briefs and manage company watchlists for predictive business insights.
    7
    59 npm
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to perform real-time business intelligence tasks including competitive analysis, website scoring, review analysis, and market research.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides 17 research tools for comprehensive company intelligence, covering aspects like overview, products, financials, and competitors. Supports both natural language answers and structured JSON output for automation.
    18
    MIT