PodCrawlerMCP
An MCP (Model Context Protocol) server for podcast discovery through web crawling. PodCrawlerMCP enables AI assistants to find podcast episodes on specific topics by crawling the web for RSS feeds.
Features
- πΈοΈ Crawls podcast directories to discover RSS feeds
- ποΈ Parses RSS feeds to extract episode data
- π Filters episodes by topic or domain
- π Exposes functionality through MCP tools
- π€ Seamlessly integrates with AI assistants like Claude
Installation
pip install podcrawler-mcp
Or with Poetry:
poetry add podcrawler-mcp
Quick Start
Run the server directly:
python -m podcrawler.server
Or in your Python code:
from podcrawler import PodCrawlerServer
server = PodCrawlerServer()
server.run()
Integrating with Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"podcrawler": {
"command": "python",
"args": ["-m", "podcrawler.server"]
}
}
}
Available Tools
discover_podcasts
Discovers podcasts on a specific topic.
Parameters:
topic
(string): The topic to search for (e.g., "technology", "history")max_results
(integer, optional): Maximum number of results to return (default: 10)
Example Usage:
What are some science podcasts about black holes?
Project Structure
podcrawler-mcp/
βββ podcrawler/ # Main package
β βββ __init__.py # Package initialization
β βββ server.py # MCP server implementation
β βββ tools/ # MCP tools
β β βββ __init__.py
β β βββ discovery.py # Podcast discovery tool
β βββ crawler/ # Web crawling components
β β βββ __init__.py
β β βββ spider.py # Web crawler implementation
β β βββ parser.py # RSS feed parser
β βββ utils/ # Utility functions
β βββ __init__.py
β βββ filtering.py # Topic filtering utilities
β βββ formatting.py # Output formatting utilities
βββ tests/ # Tests
β βββ __init__.py
β βββ test_server.py # Server tests
βββ examples/ # Usage examples
β βββ basic_discovery.py # Basic discovery example
βββ pyproject.toml # Project configuration
βββ README.md # Project documentation
βββ LICENSE # MIT License
βββ CONTRIBUTING.md # Contribution guidelines
Development
-
Clone the repository
git clone https://github.com/infinitimeless/podcrawler-mcp.git cd podcrawler-mcp
-
Install dependencies using Poetry
poetry install
-
Run tests
poetry run pytest
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for details.
License
This project is licensed under the MIT License - see the LICENSE file for details.