Cover image
Try Now
2025-02-24

模型上下文协议(MCP)服务器,用于与图像生成和Web刮擦功能集成。

3 years

Works with Finder

1

Github Watches

0

Github Forks

1

Github Stars

MCP Server for Windsurf/Roocode

This is a Model Context Protocol (MCP) server that provides image generation and web scraping capabilities for Windsurf.

Features

  • Image Generation: Generate images using the Flux Pro model
  • Web Scraping: Extract content from webpages using ScrapeGraph

Getting Started

  1. Clone and set up the project:

    git clone https://github.com/bananabit-dev/mcp.git
    cd mcp
    python -m venv .venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    pip install -r requirements.txt
    
  2. Set up environment variables:

    cp .env.example .env
    

    Then edit .env to add your API keys:

    AIMLAPI_KEY=your_flux_pro_api_key
    SGAI_API_KEY=your_scrapegraph_api_key
    

MCP Server Configuration

  1. Add this configuration to ~/.codeium/windsurf/mcp_config.json:
{
  "mcpServers": {
    "bananabit-mcp": {
      "command": "/absolute/path/to/your/.venv/bin/python",
      "args": ["-m", "app.mcp_server"],
      "cwd": "/absolute/path/to/mcp",
      "env": {
        "PYTHONPATH": "/absolute/path/to/mcp",
        "AIMLAPI_KEY": "${env:AIMLAPI_KEY}",
        "SGAI_API_KEY": "${env:SGAI_API_KEY}"
      }
    }
  }
}
  1. In Windsurf, click the hammer icon and "Refresh" to load the MCP server.

Example Usage

Image Generation

Let's create a cozy kawaii living room! Here's an example dialogue with Windsurf:

User: Generate a image of a cozy warm living room in kawaii and anime style.

Assistant: I'll help you generate a cozy warm living room image in kawaii and anime style!

[Generated image saved as cozy_kawaii_living_room.png]

Cozy Kawaii Living Room

User: Try again with an even more cozy and kawaii living room.

Assistant: I'll enhance the kawaii and cozy elements even more in this new version!

[Generated image saved as super_cozy_kawaii_living_room.png]

Super Cozy Kawaii Living Room

The MCP server will generate unique images each time, but they will follow the style and elements specified in the prompts. Try creating your own cozy spaces or other creative images!

Web Scraping

The MCP server provides powerful web scraping capabilities through the ScrapeGraph API. Here are the main features:

  1. Content Extraction

    # Extract main content from a webpage
    result = await extract_webpage_content(
        url="https://example.com"
    )
    
  2. Markdown Conversion

    # Convert webpage to clean markdown
    result = await markdownify_webpage(
        url="https://example.com",
        clean_level="medium"  # Options: light, medium, aggressive
    )
    
  3. Smart Scraping

    # Extract specific information using AI
    result = await scrape_webpage(
        url="https://example.com"
    )
    

Features

  • AI-Powered Extraction: Intelligently identifies and extracts main content
  • Clean Output: Removes ads, navigation, and other clutter
  • Format Options: Get content in raw HTML, markdown, or structured data
  • Error Handling: Graceful fallbacks for failed extractions
  • Customization: Control cleaning level and output format

Example Use Cases

  1. Documentation Generation

    # Create local documentation from online sources
    content = await markdownify_webpage(
        url="https://docs.example.com/guide",
        clean_level="medium"
    )
    with open(".docs/guide.md", "w") as f:
        f.write(content)
    
  2. Content Analysis

    # Extract and analyze webpage sentiment
    content = await extract_webpage_content(
        url="https://example.com/article"
    )
    sentiment = await analyze_text_sentiment(
        text=content["text"]
    )
    
  3. Data Collection

    # Extract structured data
    data = await scrape_webpage(
        url="https://example.com/products"
    )
    # Process extracted data
    for item in data["structured_data"]:
        process_item(item)
    

Best Practices

  1. Rate Limiting

    • Respect website rate limits
    • Add delays between requests
    • Use caching when possible
  2. Error Handling

    try:
        content = await extract_webpage_content(url)
    except Exception as e:
        # Fall back to simpler extraction
        content = await markdownify_webpage(url)
    
  3. Content Cleaning

    • Start with "medium" clean_level
    • Use "aggressive" for very noisy pages
    • Use "light" when preserving format is important
  4. Output Processing

    • Validate extracted content
    • Handle empty or partial results
    • Process structured data appropriately

License

MIT

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Bora Yalcin
  • Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Callycode Limited
  • A geek-themed horoscope generator blending Bitcoin prices, tech jargon, and astrological whimsy.

  • Alexandru Strujac
  • Efficient thumbnail creator for YouTube videos

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Khalid kalib
  • Write professional emails

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • Beniyam Berhanu
  • Therapist adept at identifying core issues and offering practical advice with images.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • apappascs
  • 发现市场上最全面,最新的MCP服务器集合。该存储库充当集中式枢纽,提供了广泛的开源和专有MCP服务器目录,并提供功能,文档链接和贡献者。

  • ShrimpingIt
  • MCP系列GPIO Expander的基于Micropython I2C的操作,源自ADAFRUIT_MCP230XX

  • OffchainLabs
  • 进行以太坊的实施

  • huahuayu
  • 统一的API网关,用于将多个Etherscan样区块链Explorer API与对AI助手的模型上下文协议(MCP)支持。

  • deemkeen
  • 用电源组合控制您的MBOT2:MQTT+MCP+LLM

    Reviews

    2 (1)
    Avatar
    user_p7FoORMt
    2025-04-16

    mcp has thoroughly impressed me with its seamless integration and robust functionality. As a dedicated user, I appreciate the thoughtfully designed features and the efficient user experience. Well-maintained by bananabit-dev, mcp stands as a testament to excellent software craftsmanship. Highly recommended for anyone seeking a reliable and user-friendly tool! For more details, visit the official GitHub repository: https://github.com/bananabit-dev/mcp.