MCP Server logo

MCP Server

by cabrit0

The MCP Server generates Master Content Plans (MCPs) based on topics by aggregating resources from the web and organizing them into structured learning paths. It provides a standardized JSON structure for consumption by client applications.

View on GitHub

Last updated: N/A

What is MCP Server?

The MCP Server is a tool that generates structured learning paths for any topic by aggregating resources from the web. It uses web search and scraping techniques to find relevant content and organizes it into a logical sequence with a customizable number of nodes.

How to use MCP Server?

To use the MCP Server, you can either run it locally or access the production server. Locally, start the server using the provided script or uvicorn, and then access the API at http://localhost:8000. The production server is available at https://reunemacacada.onrender.com. Generate an MCP by making a GET request to /generate_mcp?topic=your_topic. Detailed documentation is available in the docs folder.

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

  • Caching system for faster responses

  • Standardized JSON output

  • TF-IDF based resource relevance filtering

  • Strategic quiz distribution

  • YouTube integration

  • Asynchronous task system with real-time progress feedback

  • Adaptive scraping system

  • Puppeteer instance pool

Use cases of MCP Server

  • Creating educational content for online courses

  • Generating learning paths for employee training

  • Developing personalized learning experiences

  • Researching and organizing information on a specific topic

FAQ from MCP Server

How do I specify the topic for the MCP?

Use the topic parameter in the /generate_mcp endpoint, e.g., /generate_mcp?topic=python.

Can I customize the number of resources in the MCP?

Yes, use the max_resources parameter to set the maximum number of resources to include, e.g., /generate_mcp?topic=python&max_resources=20.

How do I specify the language for the resources?

Use the language parameter, e.g., /generate_mcp?topic=python&language=en for English.

How do I check the status of an asynchronous task?

Use the /status/{task_id} endpoint, replacing {task_id} with the ID of the task.

How do I clear the cache?

Use the POST /clear_cache endpoint. You can also specify a pattern to clear specific cache entries, e.g., POST /clear_cache?pattern=mcp:*.