Skip to main content
Glama

In this project, you are going to make a chatbot to scrape LLM Inference Serving websites to research costs of serving various LLMs. You will do this by writing an MCP Server that hooks up to Firecrawl's API and saving the data in a SQLite Database. You should use the following websites to scrape:

  1. Make a venv with uv

  2. Sync venv with pyproject.toml (uv sync)

  3. Make an API Key on Anthropic and Firecrawl

  4. Complete the 2 tool calls in starter_server.py

  5. Change the server_config.json to point to your server file

  6. Complete any section in starter_client.py that has "#complete".

  7. Test using any methods taught in the course

  8. Use the following prompts in your chatbot but play around with all the LLM providers in the list above:

Available Tools

2 tools
extract_scraped_infoB

Extract information about a scraped website.

Args: identifier: The provider name, full URL, or domain to look for

Returns: Formatted JSON string with the scraped information

Inputs: identifier (required). Returns: result

scrape_websitesC

Scrape multiple websites using Firecrawl and store their content.

Args: websites: Dictionary of provider_name -> URL mappings formats: List of formats to scrape ['markdown', 'html'] (default: both) api_key: Firecrawl API key (if None, expects environment variable)

Returns: List of provider names for successfully scraped websites

Inputs: websites (required), api_key, formats. Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 2 tools

    Disambiguation5/5

    The two tools have clearly distinct purposes: one scrapes multiple websites and stores content, the other extracts specific information from a previously scraped website. No overlap in functionality.

    Naming Consistency5/5

    Both tool names follow a consistent verb_noun pattern using snake_case: scrape_websites and extract_scraped_info. The naming is predictable and clear.

    Tool Count4/5

    With only 2 tools, the server is minimal but adequately covers the core workflow of scraping and extracting. It could benefit from additional tools for management, but the count is not inappropriate for the stated purpose.

    Completeness3/5

    The server covers the primary operations of scraping and extraction, but lacks tools for listing, updating, or deleting scraped data, which could limit agent workflows. Some notable gaps exist.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Empowers LLMs to scrape web pages and generate sitemaps through the Firecrawl Simple API, with support for JavaScript rendering and configurable options.
      6 npm
      1
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables scraping LLM inference pricing from websites like Cloudrift, DeepInfra, Fireworks, and Groq, storing results in SQLite for cost comparison.
      -