Discover Awesome MCP Servers

Extend your agent with 29,327 capabilities via MCP servers.

All29,327
Medium MCP Server

Medium MCP Server

A protocol server that enables programmatic interaction with Medium's content ecosystem, allowing for intelligent content retrieval and context-aware analysis.

MCP Google Calendar Server

MCP Google Calendar Server

Servidor de Calendario de Google MCP

MCP TaskManager

MCP TaskManager

Un servidor de Protocolo de Contexto de Modelo que permite a Claude Desktop gestionar y ejecutar tareas en un sistema basado en colas, soportando las fases de planificación, ejecución y finalización.

jcrawl4ai-mcp-server

jcrawl4ai-mcp-server

jcrawl4ai-mcp-server

x402-discovery

x402-discovery

Discovers and queries x402-payable APIs at runtime — enables autonomous agents to find, evaluate, and pay for services via USDC micropayments on Base without API keys or subscriptions.

GoScry

GoScry

GoScry es una aplicación de servidor escrita en Go que actúa como puente entre un sistema de control (como un LLM o un script) y un navegador web.

rendezvous-mcp

rendezvous-mcp

Fair meeting point discovery using real travel-time isochrones, not naive midpoints. Finds venues equally accessible to all participants with fairness scoring.

Sponge MCP Server

Sponge MCP Server

Provides a Model Context Protocol interface to the Sponge wallet API for managing digital assets and transaction histories. It enables users to securely check balances, retrieve addresses, and perform transfers using DAuth-style credential exchange.

Run Command MCP Server

Run Command MCP Server

Provides tools for executing shell commands both synchronously and asynchronously with real-time output streaming and process management capabilities. It enables users to start background tasks, monitor progress, and manage long-running processes via Stdio or HTTP transports.

Outlook MCP Server

Outlook MCP Server

Enables AI-powered email management for Microsoft Outlook, allowing users to search, compose, organize, and batch forward emails using natural language commands with 100% local processing.

MCP Server Demo

MCP Server Demo

A WebSocket-based Model Control Protocol (MCP) server that processes model requests and provides responses. Supports chat and text completion actions with a standardized JSON protocol for AI model communication.

BatchIt

BatchIt

Un servidor agregador simple que permite agrupar múltiples llamadas a herramientas MCP en una sola solicitud, reduciendo el uso de tokens y la sobrecarga de red para agentes de IA.

MCP Config

MCP Config

Una herramienta CLI para gestionar las configuraciones de servidores MCP.

mcp-pandoc-ts: A Document Conversion MCP Server (TypeScript/Host Service Version)

mcp-pandoc-ts: A Document Conversion MCP Server (TypeScript/Host Service Version)

Okay, here's a breakdown of how you could achieve an MCP (Microservice Control Protocol) server setup to control Pandoc on your host machine from a Docker environment, along with considerations and potential code snippets (in Python, as it's commonly used for microservices). **Concept:** The core idea is to create a small server (the MCP server) running on your host machine. This server will: 1. **Receive requests:** Listen for requests from your Docker container. These requests will specify the Pandoc conversion to perform (input file, output file, options, etc.). 2. **Execute Pandoc:** Run the Pandoc command on the host machine using the provided parameters. 3. **Return results:** Send the output (success/failure, any error messages) back to the Docker container. **Components:** * **Pandoc Host Service (MCP Server):** This is the Python server running on your host. It uses a framework like Flask or FastAPI to handle HTTP requests. * **Docker Container:** Your application running inside Docker. It will make HTTP requests to the Pandoc Host Service. * **Pandoc:** Must be installed on the *host* machine, not necessarily inside the Docker container. **Steps:** 1. **Pandoc Host Service (Python - Flask Example):** ```python from flask import Flask, request, jsonify import subprocess import os app = Flask(__name__) @app.route('/pandoc', methods=['POST']) def pandoc_convert(): data = request.get_json() input_file = data.get('input_file') output_file = data.get('output_file') options = data.get('options', []) # Default to empty list if no options if not input_file or not output_file: return jsonify({'error': 'Missing input_file or output_file'}), 400 # Construct the Pandoc command command = ['pandoc', input_file, '-o', output_file] + options try: result = subprocess.run(command, capture_output=True, text=True, check=True) return jsonify({'status': 'success', 'output': result.stdout}) except subprocess.CalledProcessError as e: return jsonify({'status': 'error', 'error': e.stderr, 'returncode': e.returncode}), 500 except FileNotFoundError: return jsonify({'status': 'error', 'error': 'Pandoc not found. Ensure it is installed on the host.'}), 500 except Exception as e: return jsonify({'status': 'error', 'error': str(e)}), 500 if __name__ == '__main__': app.run(debug=True, host='0.0.0.0', port=5000) # Listen on all interfaces ``` * **Explanation:** * Uses Flask to create a simple web server. * `/pandoc` endpoint accepts POST requests. * Expects JSON data with `input_file`, `output_file`, and optional `options`. * Constructs the Pandoc command using `subprocess.run`. `check=True` raises an exception if Pandoc returns a non-zero exit code (error). * Captures the standard output and standard error from Pandoc. * Returns a JSON response indicating success or failure, along with any output or error messages. * Error handling is included for common issues (missing files, Pandoc not found, etc.). * `host='0.0.0.0'` makes the server accessible from outside the host machine (important for Docker). * `port=5000` You can choose a different port if needed. 2. **Docker Container (Python Example):** ```python import requests import json def convert_with_pandoc(input_file, output_file, options=None): url = 'http://<host_ip>:5000/pandoc' # Replace <host_ip> with your host's IP address headers = {'Content-type': 'application/json'} data = { 'input_file': input_file, 'output_file': output_file, 'options': options or [] } try: response = requests.post(url, data=json.dumps(data), headers=headers) response.raise_for_status() # Raise HTTPError for bad responses (4xx or 5xx) result = response.json() if result['status'] == 'success': print("Pandoc conversion successful!") print("Output:", result['output']) return True else: print("Pandoc conversion failed:") print("Error:", result['error']) return False except requests.exceptions.RequestException as e: print(f"Error connecting to Pandoc service: {e}") return False if __name__ == '__main__': # Example usage: input_file = 'my_input.md' # Replace with your input file (must be accessible to the host) output_file = 'my_output.pdf' # Replace with your desired output file pandoc_options = ['--pdf-engine=xelatex', '--toc'] # Example Pandoc options # Create a dummy input file for testing with open(input_file, 'w') as f: f.write("# Hello, Pandoc from Docker!") success = convert_with_pandoc(input_file, output_file, pandoc_options) if success: print(f"Successfully converted {input_file} to {output_file}") else: print(f"Conversion failed.") ``` * **Explanation:** * Uses the `requests` library to make HTTP POST requests. * `url`: **Crucially, replace `<host_ip>` with the actual IP address of your host machine.** This is how the Docker container finds the Pandoc Host Service. If you are running Docker Desktop, this is often the IP address of your network interface. You can find it using `ipconfig` (Windows) or `ifconfig` (Linux/macOS) on your host. Alternatively, on some systems, `host.docker.internal` might work, but it's not universally reliable. * `data`: Constructs the JSON payload to send to the server. * Error handling: Catches `requests.exceptions.RequestException` for network errors. * `response.raise_for_status()`: Checks for HTTP errors (4xx, 5xx) and raises an exception if one occurs. 3. **Docker Setup (Dockerfile):** ```dockerfile FROM python:3.9-slim-buster WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . CMD ["python", "your_script.py"] # Replace your_script.py with the name of your Python file ``` * **Explanation:** * Uses a Python base image. * Sets the working directory to `/app`. * Copies `requirements.txt` (see below) and installs the dependencies. * Copies the rest of your application code. * Specifies the command to run when the container starts. 4. **`requirements.txt`:** ``` Flask requests ``` * Lists the Python packages your Docker container needs. **Important Considerations and Troubleshooting:** * **Host IP Address:** This is the most common point of failure. Make sure the IP address in the Docker container's `url` is correct and that the host machine is accessible from the container. Using `host.docker.internal` *might* work on some Docker setups, but it's not guaranteed. The most reliable approach is to find the actual IP address of your host's network interface. * **Firewall:** Ensure that your host machine's firewall is not blocking connections to the port you're using (e.g., port 5000). You may need to create a firewall rule to allow incoming connections on that port. * **File Paths:** The `input_file` and `output_file` paths in the JSON data are *relative to the host machine's file system*. The Docker container doesn't have direct access to files inside the container unless you use volume mounts (see below). Therefore, the files you want to convert must be accessible on the host machine's file system. * **Volume Mounts (Alternative to Shared File System):** If you want to work with files *inside* the Docker container, you can use Docker volume mounts. This allows you to share a directory between the host and the container. For example: ```bash docker run -v /path/on/host:/path/in/container ... ``` Then, in your Python code, you would use the paths *inside the container* (e.g., `/path/in/container/my_input.md`). However, you'd still need to ensure that the host service can access the files. A common pattern is to mount the same directory on both the host and the container. * **Security:** This setup is *not* inherently secure. Anyone who can access the Pandoc Host Service can potentially execute arbitrary Pandoc commands on your host machine. Consider adding authentication and authorization to the service if security is a concern. For example, you could use API keys or JWT tokens. * **Error Handling:** The example code includes basic error handling, but you should add more robust error handling for production environments. Log errors, handle different types of exceptions, and provide informative error messages to the user. * **Pandoc Installation:** Make absolutely sure Pandoc is installed and accessible on the host machine. The `PATH` environment variable must be configured correctly so that the `pandoc` command can be found. * **Asynchronous Processing (Optional):** For long-running Pandoc conversions, consider using asynchronous processing (e.g., with Celery or Redis Queue) to avoid blocking the Flask server. This will improve the responsiveness of your application. * **Alternative Frameworks:** While Flask is a good starting point, FastAPI is another excellent choice for building APIs in Python. It's known for its performance and automatic data validation. **Example Workflow:** 1. **Host Machine:** * Install Pandoc. * Create the Python script for the Pandoc Host Service (e.g., `pandoc_server.py`). * Run the Pandoc Host Service: `python pandoc_server.py` 2. **Docker Container:** * Create the Python script that makes requests to the Pandoc Host Service (e.g., `pandoc_client.py`). * Create the `Dockerfile` and `requirements.txt`. * Build the Docker image: `docker build -t my-pandoc-app .` * Run the Docker container: `docker run my-pandoc-app` (Remember to set up volume mounts if needed and ensure the host IP is correct in your client script). **Spanish Translation of Key Concepts:** * **MCP (Microservice Control Protocol):** Protocolo de Control de Microservicios * **Host Machine:** Máquina Anfitrión / Servidor Anfitrión * **Docker Container:** Contenedor Docker * **Pandoc Host Service:** Servicio Anfitrión de Pandoc / Servidor Anfitrión de Pandoc * **Endpoint:** Punto de Acceso / Punto Final * **Payload:** Carga Útil * **Volume Mount:** Montaje de Volumen * **Firewall:** Cortafuegos * **Asynchronous Processing:** Procesamiento Asíncrono This comprehensive explanation should give you a solid foundation for building your MCP-based Pandoc control system. Remember to adapt the code and configuration to your specific needs and environment. Good luck!

Fast MCP Servers

Fast MCP Servers

MCP Stdio Server (MySQL/MariaDB)

MCP Stdio Server (MySQL/MariaDB)

Mcp Autotest

Mcp Autotest

Utility for autotesting MCP servers

Riza MCP Server

Riza MCP Server

Un servidor MCP que envuelve la API del Intérprete de Código Riza y presenta los endpoints como herramientas individuales.

Browserbase MCP Server

Browserbase MCP Server

Enables cloud browser automation through Browserbase and Stagehand, allowing LLMs to interact with web pages, take screenshots, extract data, and perform automated actions with support for proxies, stealth mode, and parallel sessions.

Vigentic MCP

Vigentic MCP

A Model Context Protocol server that utilizes a headless Neovim instance as an IDE kernel for advanced code editing and navigation. It provides tools for LSP-powered diagnostics, buffer management, and structural edits using Tree-sitter.

memora

memora

Persistent memory with knowledge graph visualization, semantic/hybrid search, importance scoring, and cloud sync (S3/R2) for cross-session context management.

MCP Log Reader

MCP Log Reader

Un servidor MCP especializado que ayuda a analizar y depurar registros del Protocolo de Contexto de Modelos (Model Context Protocol) al proporcionar a Claude acceso directo a los archivos de registro en múltiples plataformas.

MCP Server POC

MCP Server POC

A proof-of-concept MCP server demonstrating various capabilities including mathematical calculations, URL fetching, system information retrieval, data processing, and file operations.

주식 데이터 MCP 서버

주식 데이터 MCP 서버

Opengraph io MCP

Opengraph io MCP

MCP server for the OpenGraph.io API -- extract OG metadata, capture screenshots, scrape pages, query sites with AI, and generate branded images with iterative refinement.

MySQL Database Server

MySQL Database Server

Permite que los LLM interactúen con bases de datos MySQL inspeccionando esquemas y ejecutando consultas seguras de solo lectura dentro de transacciones.

protocols-io-mcp-server

protocols-io-mcp-server

A Model Context Protocol (MCP) server that enables MCP clients like Claude Desktop to interact with protocols.io, a popular platform for sharing scientific protocols and methods.

gdb-cli

gdb-cli

A GDB debugging tool designed for AI Agents (Claude Code, etc.)

Example MCP Server with FastMCP

Example MCP Server with FastMCP

An educational example demonstrating how to build MCP servers in Python using FastMCP, showing how to expose tools, resources, and prompts to AI clients.

Piper TTS MCP Server

Piper TTS MCP Server

Integrates Piper TTS into the Model Context Protocol, allowing AI assistants to convert text to speech and play it through speakers with customizable voice settings and volume control.