MCP Server logo

MCP Server

by MCP-Mirror

The MCP Server generates Master Content Plans (MCPs) based on topics. It aggregates resources from the web and organizes them into structured learning paths.

View on GitHub

Last updated: N/A

What is MCP Server?

The MCP Server is a tool that automatically creates structured learning paths for any given topic. It utilizes web scraping and search to gather relevant resources and organizes them into a logical sequence, providing a standardized JSON output for client applications.

How to use MCP Server?

To use the server, you can either run it locally or access the production URL. You can generate MCPs by making GET requests to the /generate_mcp endpoint, specifying the topic and other optional parameters like the number of nodes, language, and category. Asynchronous MCP generation is also supported via the /generate_mcp_async endpoint.

Key features of MCP Server

  • Generate learning paths for any topic

  • Find relevant resources using web search and scraping

  • Organize resources into a logical sequence

  • Support for multiple languages (focus on Portuguese)

  • TF-IDF based resource relevance filtering

  • Strategic quiz distribution

  • YouTube integration

  • Asynchronous task system with real-time progress feedback

  • Enhanced caching system

  • Optimized web scraping techniques

  • Adaptive scraping system

  • Puppeteer instance pool

Use cases of MCP Server

  • Creating personalized learning experiences

  • Generating educational content for specific topics

  • Building educational applications

  • Automating content curation

  • Providing structured learning paths for employees or students

FAQ from MCP Server

How do I specify the topic for the MCP?

You specify the topic using the topic parameter in the /generate_mcp endpoint, e.g., /generate_mcp?topic=python.

Can I generate MCPs in different languages?

Yes, you can specify the language using the language parameter, e.g., /generate_mcp?topic=python&language=en for English.

How can I customize the structure of the learning path?

You can customize the number of nodes, minimum/maximum width, and minimum/maximum height of the tree using the num_nodes, min_width, max_width, min_height, and max_height parameters.

What is the purpose of the caching system?

The caching system improves response times for repeated queries by storing and retrieving previously generated MCPs.

How do I check the status of an asynchronous task?

You can check the status of an asynchronous task using the /status/{task_id} endpoint, where {task_id} is the ID returned when you initiated the asynchronous task.