Skip to main content
Glama

Indian Movies MCP Agent

by sudhish
  • Apple
mcp_presentation.html25.2 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>MCP & Indian Movies Server Presentation</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: #333; overflow-x: hidden; } .presentation { max-width: 1200px; margin: 0 auto; padding: 20px; } .slide { background: white; border-radius: 20px; margin: 40px 0; padding: 40px; box-shadow: 0 20px 40px rgba(0,0,0,0.1); opacity: 0; transform: translateY(50px); animation: slideIn 0.8s ease-out forwards; position: relative; overflow: hidden; } .slide::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 6px; background: linear-gradient(90deg, #ff6b6b, #4ecdc4, #45b7d1, #96ceb4); } @keyframes slideIn { to { opacity: 1; transform: translateY(0); } } .slide h1 { color: #2c3e50; font-size: 2.5em; margin-bottom: 20px; text-align: center; position: relative; } .slide h2 { color: #34495e; font-size: 2em; margin-bottom: 25px; border-bottom: 3px solid #3498db; padding-bottom: 10px; } .slide h3 { color: #2980b9; font-size: 1.4em; margin: 20px 0 15px 0; } .slide p, .slide li { font-size: 1.1em; line-height: 1.6; margin-bottom: 15px; color: #555; } .slide ul, .slide ol { margin-left: 30px; margin-bottom: 20px; } .architecture-diagram { background: #f8f9fa; border: 2px solid #e9ecef; border-radius: 15px; padding: 30px; margin: 30px 0; text-align: center; } .component-box { display: inline-block; background: linear-gradient(135deg, #74b9ff, #0984e3); color: white; padding: 15px 25px; margin: 10px; border-radius: 10px; font-weight: bold; box-shadow: 0 5px 15px rgba(116, 185, 255, 0.3); } .arrow { font-size: 2em; color: #e17055; margin: 0 20px; } .code-block { background: #2d3748; color: #e2e8f0; padding: 20px; border-radius: 10px; margin: 20px 0; font-family: 'Courier New', monospace; overflow-x: auto; position: relative; } .code-block::before { content: 'Code'; position: absolute; top: 10px; right: 15px; background: #4a5568; color: #e2e8f0; padding: 5px 10px; border-radius: 5px; font-size: 0.8em; } .highlight { background: linear-gradient(120deg, #a8e6cf 0%, #dcedc1 100%); padding: 20px; border-left: 5px solid #27ae60; border-radius: 0 10px 10px 0; margin: 20px 0; } .flow-step { background: white; border: 2px solid #3498db; border-radius: 10px; padding: 20px; margin: 15px 0; position: relative; box-shadow: 0 5px 15px rgba(52, 152, 219, 0.2); } .flow-step::before { content: counter(step-counter); counter-increment: step-counter; position: absolute; left: -15px; top: 15px; background: #3498db; color: white; width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: bold; } .flow-container { counter-reset: step-counter; } .usecase-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin: 30px 0; } .usecase-card { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 25px; border-radius: 15px; box-shadow: 0 10px 20px rgba(0,0,0,0.1); transform: translateY(0); transition: transform 0.3s ease; } .usecase-card:hover { transform: translateY(-5px); } .usecase-card h4 { font-size: 1.3em; margin-bottom: 15px; color: #fff; } .integration-visual { display: flex; justify-content: space-around; align-items: center; flex-wrap: wrap; margin: 30px 0; padding: 20px; background: #f8f9fa; border-radius: 15px; } .tech-stack { display: flex; flex-wrap: wrap; gap: 15px; margin: 20px 0; } .tech-item { background: #e74c3c; color: white; padding: 10px 20px; border-radius: 25px; font-weight: bold; box-shadow: 0 3px 10px rgba(231, 76, 60, 0.3); } .slide-number { position: absolute; top: 15px; right: 20px; background: #34495e; color: white; padding: 5px 15px; border-radius: 20px; font-size: 0.9em; } @media (max-width: 768px) { .slide { padding: 20px; margin: 20px 0; } .slide h1 { font-size: 2em; } .integration-visual { flex-direction: column; } .component-box { display: block; margin: 10px 0; } } </style> </head> <body> <div class="presentation"> <!-- Title Slide --> <div class="slide"> <div class="slide-number">1</div> <h1>🎬 Model Context Protocol (MCP)</h1> <h1>& Indian Movies Server</h1> <div style="text-align: center; margin: 40px 0;"> <div style="font-size: 1.5em; color: #7f8c8d; margin-bottom: 20px;"> Connecting Claude Desktop with External Data Sources </div> <div style="font-size: 1.2em; color: #95a5a6;"> A Complete Guide to MCP Architecture and Implementation </div> </div> </div> <!-- What is MCP --> <div class="slide"> <div class="slide-number">2</div> <h2>🤔 What is Model Context Protocol (MCP)?</h2> <div class="highlight"> <strong>MCP is a standardized protocol that enables AI assistants like Claude to securely connect to external data sources and tools in real-time.</strong> </div> <h3>Key Benefits:</h3> <ul> <li><strong>Real-time Data Access:</strong> Connect Claude to live databases, APIs, and file systems</li> <li><strong>Standardized Interface:</strong> One protocol for all external integrations</li> <li><strong>Security:</strong> Controlled access with proper authentication</li> <li><strong>Extensibility:</strong> Easy to add new data sources and capabilities</li> <li><strong>Bi-directional:</strong> Claude can both read from and write to external systems</li> </ul> <div class="tech-stack"> <div class="tech-item">JSON-RPC 2.0</div> <div class="tech-item">WebSocket/stdio</div> <div class="tech-item">TypeScript/JavaScript</div> <div class="tech-item">Node.js</div> </div> </div> <!-- MCP Architecture --> <div class="slide"> <div class="slide-number">3</div> <h2>🏗️ MCP Architecture Overview</h2> <div class="architecture-diagram"> <div style="margin-bottom: 30px;"> <div class="component-box">Claude Desktop</div> <span class="arrow">↔</span> <div class="component-box">MCP Client</div> <span class="arrow">↔</span> <div class="component-box">MCP Server</div> <span class="arrow">↔</span> <div class="component-box">Data Source</div> </div> <div style="font-size: 1.1em; color: #666;"> <strong>Communication Flow:</strong> Claude Desktop ↔ JSON-RPC 2.0 ↔ Your MCP Server ↔ External APIs/Databases </div> </div> <h3>Core Components:</h3> <ul> <li><strong>MCP Client:</strong> Built into Claude Desktop, manages connections to servers</li> <li><strong>MCP Server:</strong> Your custom application (like Indian Movies server)</li> <li><strong>Transport Layer:</strong> stdio, WebSocket, or HTTP for communication</li> <li><strong>Protocol Layer:</strong> JSON-RPC 2.0 for message formatting</li> </ul> </div> <!-- Protocol Details --> <div class="slide"> <div class="slide-number">4</div> <h2>📡 How the MCP Protocol Works</h2> <div class="flow-container"> <div class="flow-step"> <h3>Initialization Handshake</h3> <p>Claude Desktop connects to your MCP server and exchanges capability information</p> <div class="code-block"> {"method": "initialize", "params": { "protocolVersion": "2025-06-18", "capabilities": {}, "clientInfo": {"name": "claude-ai", "version": "0.1.0"} }}</div> </div> <div class="flow-step"> <h3>Tool Discovery</h3> <p>Claude requests available tools from your server</p> <div class="code-block"> {"method": "tools/list"} // Server responds with available tools: {"tools": [{"name": "search_movies", "description": "..."}]}</div> </div> <div class="flow-step"> <h3>Tool Execution</h3> <p>Claude calls your tools with user queries</p> <div class="code-block"> {"method": "tools/call", "params": { "name": "search_movies", "arguments": {"query": "Bollywood action movies"} }}</div> </div> <div class="flow-step"> <h3>Response & Integration</h3> <p>Your server returns data that Claude integrates into the conversation</p> </div> </div> </div> <!-- Indian Movies Server --> <div class="slide"> <div class="slide-number">5</div> <h2>🎭 Your Indian Movies MCP Server</h2> <h3>Project Overview:</h3> <p>A specialized MCP server that provides Claude with access to comprehensive Indian cinema data, including Bollywood, Tollywood, Kollywood, and regional films.</p> <div class="integration-visual"> <div class="component-box">User Query</div> <span class="arrow">→</span> <div class="component-box">Claude Desktop</div> <span class="arrow">→</span> <div class="component-box">Indian Movies Server</div> <span class="arrow">→</span> <div class="component-box">Movie Database</div> </div> <h3>Key Features:</h3> <ul> <li><strong>Movie Search:</strong> By title, actor, director, genre, language</li> <li><strong>Detailed Information:</strong> Cast, crew, plot, ratings, reviews</li> <li><strong>Multi-language Support:</strong> Hindi, Telugu, Tamil, Malayalam, etc.</li> <li><strong>Recommendations:</strong> Based on preferences and viewing history</li> <li><strong>Real-time Data:</strong> Latest releases, box office numbers, ratings</li> </ul> <div class="code-block"> // Example tool definition { "name": "search_movies", "description": "Search for Indian movies", "inputSchema": { "type": "object", "properties": { "query": {"type": "string"}, "language": {"type": "string"}, "genre": {"type": "string"} } } }</div> </div> <!-- Claude Desktop Integration --> <div class="slide"> <div class="slide-number">6</div> <h2>🖥️ Claude Desktop Integration</h2> <h3>Configuration Process:</h3> <div class="flow-container"> <div class="flow-step"> <h3>MCP Server Configuration</h3> <p>Add your server to Claude Desktop's configuration file</p> <div class="code-block"> { "mcpServers": { "indian-movies": { "command": "node", "args": ["/path/to/indian-movies-mcp/index.js"] } } }</div> </div> <div class="flow-step"> <h3>Automatic Discovery</h3> <p>Claude Desktop automatically detects and connects to your server on startup</p> </div> <div class="flow-step"> <h3>Seamless Integration</h3> <p>Users can now ask Claude about Indian movies naturally in conversation</p> <div style="background: #f0f8ff; padding: 15px; border-radius: 8px; margin-top: 10px;"> <em>"Hey Claude, can you recommend some recent Telugu action movies with high ratings?"</em> </div> </div> </div> </div> <!-- Use Cases --> <div class="slide"> <div class="slide-number">7</div> <h2>🚀 MCP Use Cases & Applications</h2> <div class="usecase-grid"> <div class="usecase-card"> <h4>🎬 Entertainment & Media</h4> <p>Movie databases, streaming recommendations, music libraries, TV show information, celebrity data</p> </div> <div class="usecase-card"> <h4>💼 Business Intelligence</h4> <p>CRM systems, sales data, customer analytics, financial reports, market research</p> </div> <div class="usecase-card"> <h4>🏥 Healthcare</h4> <p>Patient records, medical databases, drug information, research papers, clinical guidelines</p> </div> <div class="usecase-card"> <h4>🎓 Education</h4> <p>Learning management systems, course catalogs, student records, academic papers, research databases</p> </div> <div class="usecase-card"> <h4>🛒 E-commerce</h4> <p>Product catalogs, inventory management, customer reviews, pricing data, order tracking</p> </div> <div class="usecase-card"> <h4>🏠 Smart Home/IoT</h4> <p>Device control, sensor data, automation systems, energy monitoring, security systems</p> </div> </div> </div> <!-- Technical Implementation --> <div class="slide"> <div class="slide-number">8</div> <h2>⚙️ Technical Implementation Details</h2> <h3>Server Structure:</h3> <div class="code-block"> import { Server } from '@modelcontextprotocol/sdk/server/index.js'; const server = new Server({ name: 'indian-movies', version: '0.1.0' }, { capabilities: { tools: {} } }); // Tool registration server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: [...] }; }); // Tool execution server.setRequestHandler(CallToolRequestSchema, async (request) => { const { name, arguments: args } = request.params; return await handleTool(name, args); });</div> <h3>Communication Protocols:</h3> <ul> <li><strong>stdio:</strong> Standard input/output (most common)</li> <li><strong>WebSocket:</strong> For real-time, persistent connections</li> <li><strong>HTTP:</strong> For stateless, request-response interactions</li> </ul> <h3>Security Considerations:</h3> <ul> <li>Input validation and sanitization</li> <li>Rate limiting and resource management</li> <li>Authentication and authorization</li> <li>Error handling and logging</li> </ul> </div> <!-- Benefits & Future --> <div class="slide"> <div class="slide-number">9</div> <h2>🌟 Benefits & Future Possibilities</h2> <div class="highlight"> <h3>Current Benefits:</h3> <ul> <li><strong>Enhanced Capabilities:</strong> Claude can access real-time, domain-specific data</li> <li><strong>Personalization:</strong> Tailored responses based on user's data and preferences</li> <li><strong>Automation:</strong> Direct integration with business systems and workflows</li> <li><strong>Scalability:</strong> Easy to add new data sources and capabilities</li> </ul> </div> <h3>Future Possibilities:</h3> <ul> <li><strong>Multi-modal Integration:</strong> Images, audio, video processing</li> <li><strong>Real-time Collaboration:</strong> Multiple users, shared contexts</li> <li><strong>AI-to-AI Communication:</strong> MCP servers talking to each other</li> <li><strong>Enterprise Integration:</strong> Deep ERP, CRM, and workflow integration</li> <li><strong>IoT & Edge Computing:</strong> Direct device communication</li> </ul> <h3>Your Indian Movies Server Impact:</h3> <p>Provides Claude with deep knowledge of Indian cinema, enabling rich cultural conversations, personalized recommendations, and comprehensive film analysis that wouldn't be possible with static training data alone.</p> </div> <!-- Getting Started --> <div class="slide"> <div class="slide-number">10</div> <h2>🚀 Getting Started with MCP</h2> <h3>Development Workflow:</h3> <div class="flow-container"> <div class="flow-step"> <h3>Plan Your Server</h3> <p>Define what data/tools you want to expose to Claude</p> </div> <div class="flow-step"> <h3>Set Up Development Environment</h3> <div class="code-block"> npm install @modelcontextprotocol/sdk # Create your server structure # Implement tools and handlers</div> </div> <div class="flow-step"> <h3>Configure Claude Desktop</h3> <p>Add your server to the MCP configuration</p> </div> <div class="flow-step"> <h3>Test & Iterate</h3> <p>Test your tools through Claude Desktop conversations</p> </div> <div class="flow-step"> <h3>Deploy & Scale</h3> <p>Deploy to production and add more capabilities</p> </div> </div> <div class="highlight"> <h3>Best Practices:</h3> <ul> <li>Start simple with one or two tools</li> <li>Implement proper error handling and logging</li> <li>Use clear, descriptive tool names and descriptions</li> <li>Validate all inputs and sanitize outputs</li> <li>Monitor performance and resource usage</li> </ul> </div> </div> <!-- Conclusion --> <div class="slide"> <div class="slide-number">11</div> <h1>🎯 Conclusion</h1> <div style="text-align: center; margin: 40px 0;"> <h3 style="color: #2c3e50; margin-bottom: 30px;">MCP transforms Claude from a static AI into a dynamic, connected assistant</h3> </div> <div class="integration-visual"> <div style="background: #e74c3c; color: white; padding: 20px; border-radius: 15px; max-width: 300px;"> <h4>Your Indian Movies Server</h4> <p>Demonstrates the power of domain-specific MCP integration</p> </div> <div style="background: #27ae60; color: white; padding: 20px; border-radius: 15px; max-width: 300px;"> <h4>Real-world Impact</h4> <p>Enables rich, contextual conversations about Indian cinema</p> </div> <div style="background: #3498db; color: white; padding: 20px; border-radius: 15px; max-width: 300px;"> <h4>Future Ready</h4> <p>Foundation for more advanced AI-powered applications</p> </div> </div> <div class="highlight"> <h3>Key Takeaways:</h3> <ul> <li>MCP enables seamless integration between Claude and external data sources</li> <li>Your Indian Movies server showcases domain expertise enhancement</li> <li>The protocol is extensible, secure, and production-ready</li> <li>This is just the beginning of AI-native application development</li> </ul> </div> <div style="text-align: center; margin-top: 40px; font-size: 1.3em; color: #7f8c8d;"> <strong>Ready to build the future of AI-powered applications? 🚀</strong> </div> </div> </div> <script> // Add some interactive elements document.addEventListener('DOMContentLoaded', function() { // Animate slides on scroll const slides = document.querySelectorAll('.slide'); function animateSlides() { slides.forEach((slide, index) => { const rect = slide.getBoundingClientRect(); const isVisible = rect.top < window.innerHeight && rect.bottom > 0; if (isVisible) { slide.style.animationDelay = `${index * 0.1}s`; slide.classList.add('visible'); } }); } // Smooth scrolling for better UX document.body.style.scrollBehavior = 'smooth'; // Initial animation animateSlides(); // Animate on scroll window.addEventListener('scroll', animateSlides); // Add hover effects to cards const cards = document.querySelectorAll('.usecase-card, .component-box, .tech-item'); cards.forEach(card => { card.addEventListener('mouseenter', function() { this.style.transform = 'scale(1.05)'; this.style.transition = 'transform 0.3s ease'; }); card.addEventListener('mouseleave', function() { this.style.transform = 'scale(1)'; }); }); }); </script> </body> </html>

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sudhish/indian-movies-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server