Discover Awesome MCP Servers
Extend your agent with 26,604 capabilities via MCP servers.
- All26,604
- Developer Tools3,867
- Search1,714
- Research & Data1,557
- AI Integration Systems229
- Cloud Platforms219
- Data & App Analysis181
- Database Interaction177
- Remote Shell Execution165
- Browser Automation147
- Databases145
- Communication137
- AI Content Generation127
- OS Automation120
- Programming Docs Access109
- Content Fetching108
- Note Taking97
- File Systems96
- Version Control93
- Finance91
- Knowledge & Memory90
- Monitoring79
- Security71
- Image & Video Processing69
- Digital Note Management66
- AI Memory Systems62
- Advanced AI Reasoning59
- Git Management Tools58
- Cloud Storage51
- Entertainment & Media43
- Virtualization42
- Location Services35
- Web Automation & Stealth32
- Media Content Processing32
- Calendar Management26
- Ecommerce & Retail18
- Speech Processing18
- Customer Data Platforms16
- Travel & Transportation14
- Education & Learning Tools13
- Home Automation & IoT13
- Web Search Integration12
- Health & Wellness10
- Customer Support10
- Marketing9
- Games & Gamification8
- Google Cloud Integrations7
- Art & Culture4
- Language Translation3
- Legal & Compliance2
desk-mcp
A desktop automation MCP server that enables AI agents to interact with Linux environments through screenshots, window inspection, and input simulation. It provides tools for mouse control, keyboard input, and screen capture using xdotool and XDG Desktop Portals.
doit-mcp-server
Here are a few ways to translate "MCP server for doit (pydoit)" into Spanish, depending on the context: **Option 1 (Most Literal):** * **Servidor MCP para doit (pydoit)** This is a direct translation and is perfectly understandable. "MCP" would likely remain as "MCP" since it's an acronym. **Option 2 (Slightly More Descriptive):** * **Servidor MCP para el sistema doit (pydoit)** This adds "sistema" (system) to clarify that "doit" is a system or tool. **Option 3 (If "MCP" needs explanation):** * **Servidor de gestión de procesos múltiples (MCP) para doit (pydoit)** This expands "MCP" to "gestión de procesos múltiples" (multiple process management) and then includes the acronym in parentheses. Use this if your audience is unlikely to know what "MCP" stands for. **Which option is best depends on your audience:** * If your audience is familiar with the term "MCP" in the context of `doit`, then **Option 1** is the most concise and appropriate. * If you want to be slightly more explicit, **Option 2** is a good choice. * If your audience is unlikely to know what "MCP" means, then **Option 3** is the best option. Therefore, I recommend **Servidor MCP para doit (pydoit)** unless you have reason to believe your audience won't understand "MCP".
NetworkX Graph MCP Server
Enables creation and management of state/decision graphs using NetworkX, supporting directed graphs with conditional branches, edge ordering, path finding, and visualization through PNG exports or interactive web interface.
FluentLab Funding Assistant
Provides access to FluentLab's funding database, enabling users to search for funding opportunities and retrieve document checklists required for specific funding programme applications.
Pokémon VGC Damage Calculator MCP Server
An MCP-compliant server that enables AI agents to perform accurate Pokémon battle damage calculations using the Smogon calculator, supporting comprehensive input handling for Pokémon stats, moves, abilities, and field conditions.
MCP All-in-One Server
A versatile MCP server providing tools for arithmetic operations, n8n webhook integration, and access to a customer support playbook resource. It also includes specialized prompt templates for converting webinar transcripts into engaging blog posts.
ZiweiAI
紫微AI,是一个紫微斗数解盘AI应用。Ziwei AI is an AI application for Ziwei Doushu chart interpretation.紫微AIは、紫微斗数のチャート解読のためのAIアプリケーションです。
YouTube MCP Server
Enables YouTube content browsing, video searching, and metadata retrieval via the YouTube Data API v3. It also facilitates fetching video transcripts for summarization and analysis within MCP-compatible AI clients.
Access Context Manager API MCP Server
An MCP server that provides access to Google's Access Context Manager API, enabling management of service perimeters and access levels through natural language.
OneTech MCP Server
Enables AI assistants to extract and document Mendix Studio Pro modules by interrogating local .mpr files. Generates comprehensive JSON documentation of domain models, pages, microflows, and enumerations without sending data to the cloud.
Reddit MCP Server
Provides access to Reddit's API for retrieving posts, comments, user information, and search functionality. Supports multiple authentication methods and comprehensive Reddit data operations including subreddit browsing, post retrieval, and user profile access.
Godot MCP
Provides a comprehensive integration between LLMs and the Godot Engine, enabling AI assistants to intelligently manipulate project files, scripts, and the live editor. It supports advanced workflows including version-aware documentation querying, automated E2E game testing, and real-time visual context capture.
GitPilot MCP
A lightweight MCP server that enables AI assistants to manage local Git repositories by executing commands like status, add, and commit. It streamlines development workflows by providing repository context and diffs directly to the assistant.
go-mcp-server-mds
Aquí tienes una implementación en Go de un servidor del Protocolo de Contexto de Modelo (MCP) que sirve archivos Markdown con soporte para frontmatter desde un sistema de archivos: ```go package main import ( "encoding/json" "fmt" "io/ioutil" "log" "net/http" "os" "path/filepath" "strings" "github.com/gomarkdown/markdown" "gopkg.in/yaml.v2" ) // Configuración para el servidor MCP. type Config struct { Port int `yaml:"port"` // Puerto en el que escucha el servidor. ContentDir string `yaml:"content_dir"` // Directorio donde se encuentran los archivos Markdown. BaseURL string `yaml:"base_url"` // URL base para los endpoints del MCP. DefaultTitle string `yaml:"default_title"` // Título por defecto si no se encuentra en el frontmatter. } // Frontmatter extraído de los archivos Markdown. type Frontmatter struct { Title string `yaml:"title"` Description string `yaml:"description"` Tags []string `yaml:"tags"` // Agrega otros campos que necesites. } // Contexto del modelo que se devuelve como respuesta del MCP. type ModelContext struct { Title string `json:"title"` Description string `json:"description"` Content string `json:"content"` // Contenido HTML renderizado. Tags []string `json:"tags"` // Agrega otros campos que necesites. } // loadConfig carga la configuración desde un archivo YAML. func loadConfig(filename string) (Config, error) { var config Config yamlFile, err := ioutil.ReadFile(filename) if err != nil { return config, fmt.Errorf("error leyendo el archivo de configuración: %w", err) } err = yaml.Unmarshal(yamlFile, &config) if err != nil { return config, fmt.Errorf("error deserializando el archivo YAML: %w", err) } return config, nil } // parseMarkdownFile lee un archivo Markdown, extrae el frontmatter y convierte el contenido a HTML. func parseMarkdownFile(filename string, defaultConfig Config) (ModelContext, error) { content, err := ioutil.ReadFile(filename) if err != nil { return ModelContext{}, fmt.Errorf("error leyendo el archivo Markdown: %w", err) } // Separar frontmatter del contenido. parts := strings.SplitN(string(content), "---", 3) var frontmatter Frontmatter markdownContent := string(content) // Por defecto, usa todo el contenido. if len(parts) >= 3 { err = yaml.Unmarshal([]byte(parts[1]), &frontmatter) if err != nil { log.Printf("Advertencia: error deserializando el frontmatter en %s: %v", filename, err) // Continúa sin el frontmatter. } markdownContent = parts[2] } // Convertir Markdown a HTML. htmlContent := markdown.ToHTML([]byte(markdownContent), nil, nil) // Crear el contexto del modelo. modelContext := ModelContext{ Title: frontmatter.Title, Description: frontmatter.Description, Content: string(htmlContent), Tags: frontmatter.Tags, } // Usar valores por defecto si no están en el frontmatter. if modelContext.Title == "" { modelContext.Title = defaultConfig.DefaultTitle } return modelContext, nil } // mcpHandler maneja las solicitudes al endpoint del MCP. func mcpHandler(config Config) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { // Obtener el nombre del archivo desde la URL. filename := r.URL.Path[len(config.BaseURL):] // Elimina la URL base. filename = filepath.Join(config.ContentDir, filename) + ".md" // Agrega la extensión .md. // Verificar si el archivo existe. if _, err := os.Stat(filename); os.IsNotExist(err) { http.Error(w, "Archivo no encontrado", http.StatusNotFound) return } // Parsear el archivo Markdown. modelContext, err := parseMarkdownFile(filename, config) if err != nil { log.Printf("Error parseando el archivo Markdown %s: %v", filename, err) http.Error(w, "Error interno del servidor", http.StatusInternalServerError) return } // Convertir el contexto del modelo a JSON. w.Header().Set("Content-Type", "application/json") err = json.NewEncoder(w).Encode(modelContext) if err != nil { log.Printf("Error serializando a JSON: %v", err) http.Error(w, "Error interno del servidor", http.StatusInternalServerError) return } } } func main() { // Cargar la configuración. config, err := loadConfig("config.yaml") if err != nil { log.Fatalf("Error cargando la configuración: %v", err) } // Crear el manejador del MCP. mcpHandlerFunc := mcpHandler(config) // Registrar el manejador en la ruta especificada en la configuración. http.HandleFunc(config.BaseURL, mcpHandlerFunc) // Iniciar el servidor. addr := fmt.Sprintf(":%d", config.Port) log.Printf("Servidor MCP escuchando en %s", addr) log.Fatal(http.ListenAndServe(addr, nil)) } ``` **Explicación del código:** 1. **Estructuras de Datos:** * `Config`: Define la estructura para la configuración del servidor, incluyendo el puerto, el directorio de contenido, la URL base y un título por defecto. * `Frontmatter`: Representa los metadatos extraídos del frontmatter YAML en los archivos Markdown. * `ModelContext`: La estructura de datos que se devuelve como respuesta del servidor MCP. Contiene el título, la descripción, el contenido HTML renderizado y las etiquetas. 2. **`loadConfig(filename string) (Config, error)`:** * Carga la configuración desde un archivo YAML. * Utiliza la librería `gopkg.in/yaml.v2` para deserializar el archivo YAML en la estructura `Config`. * Maneja errores al leer el archivo o al deserializar el YAML. 3. **`parseMarkdownFile(filename string, defaultConfig Config) (ModelContext, error)`:** * Lee el archivo Markdown especificado. * Divide el contenido del archivo en tres partes usando `strings.SplitN(string(content), "---", 3)`. Esto asume que el frontmatter está delimitado por `---` al principio y al final. * Intenta deserializar la segunda parte (el frontmatter) en la estructura `Frontmatter` usando `yaml.Unmarshal`. * Convierte el contenido Markdown a HTML usando la librería `github.com/gomarkdown/markdown`. * Crea una instancia de `ModelContext` con los datos extraídos del frontmatter y el contenido HTML. * Si el título no está presente en el frontmatter, utiliza el título por defecto de la configuración. * Maneja errores al leer el archivo o al deserializar el frontmatter. 4. **`mcpHandler(config Config) http.HandlerFunc`:** * Esta función devuelve un `http.HandlerFunc` que maneja las solicitudes al endpoint del MCP. * Extrae el nombre del archivo de la URL de la solicitud. * Construye la ruta completa al archivo Markdown combinando el directorio de contenido de la configuración y el nombre del archivo. * Verifica si el archivo existe usando `os.Stat`. * Llama a `parseMarkdownFile` para parsear el archivo Markdown y obtener el `ModelContext`. * Convierte el `ModelContext` a JSON usando `json.NewEncoder`. * Establece el encabezado `Content-Type` a `application/json`. * Escribe la respuesta JSON al cliente. * Maneja errores si el archivo no existe, si hay un error al parsear el archivo Markdown o si hay un error al serializar a JSON. 5. **`main()`:** * Carga la configuración usando `loadConfig`. * Crea el manejador del MCP usando `mcpHandler`. * Registra el manejador en la ruta especificada en la configuración usando `http.HandleFunc`. * Inicia el servidor HTTP usando `http.ListenAndServe`. **Cómo usarlo:** 1. **Instala las dependencias:** ```bash go get gopkg.in/yaml.v2 go get github.com/gomarkdown/markdown ``` 2. **Crea un archivo `config.yaml`:** ```yaml port: 8080 content_dir: content base_url: /mcp/ default_title: "Título por Defecto" ``` * `port`: El puerto en el que el servidor escuchará. * `content_dir`: El directorio donde se almacenan tus archivos Markdown. * `base_url`: La URL base para el endpoint del MCP. Por ejemplo, si es `/mcp/`, entonces las solicitudes a `/mcp/mi-archivo` servirán el archivo `content/mi-archivo.md`. * `default_title`: El título que se usará si el frontmatter no contiene un título. 3. **Crea un directorio `content` y agrega archivos Markdown con frontmatter:** Ejemplo: `content/mi-articulo.md` ```markdown --- title: "Mi Artículo Genial" description: "Una descripción de mi artículo." tags: [go, markdown, mcp] --- # Este es el título del artículo Este es el contenido del artículo. ``` 4. **Ejecuta el servidor:** ```bash go run main.go ``` 5. **Accede al endpoint del MCP:** Abre tu navegador y ve a `http://localhost:8080/mcp/mi-articulo` (o la URL que corresponda a tu configuración y nombre de archivo). Deberías ver una respuesta JSON con el título, la descripción, el contenido HTML y las etiquetas del archivo `mi-articulo.md`. **Puntos importantes:** * **Manejo de Errores:** El código incluye manejo de errores para la lectura de archivos, el parseo de YAML y la serialización de JSON. Es importante manejar los errores adecuadamente para que el servidor sea robusto. * **Seguridad:** Este código es un ejemplo básico y no incluye medidas de seguridad. En un entorno de producción, deberías considerar medidas de seguridad como la validación de la entrada del usuario, la protección contra ataques de inyección y la autenticación/autorización. * **Rutas:** La lógica para construir las rutas de los archivos es simple. Podrías necesitar ajustarla para que se adapte a tus necesidades específicas. * **Frontmatter:** El código asume que el frontmatter está delimitado por `---`. Puedes modificarlo si usas un delimitador diferente. * **Librerías:** Asegúrate de tener instaladas las librerías `gopkg.in/yaml.v2` y `github.com/gomarkdown/markdown`. * **Configuración:** Es una buena práctica cargar la configuración desde un archivo externo para que puedas modificar el comportamiento del servidor sin tener que recompilar el código. * **Logging:** El código usa `log.Printf` para registrar mensajes. Considera usar una librería de logging más avanzada para un mejor manejo de los logs. Este ejemplo proporciona una base sólida para construir un servidor MCP que sirve archivos Markdown con soporte para frontmatter. Puedes personalizarlo y extenderlo para que se adapte a tus necesidades específicas.
MCP Mediator
Una implementación basada en Java del mediador del Protocolo de Contexto del Modelo (MCP), que proporciona una integración perfecta entre clientes y servidores MCP.
Yahoo Finance MCP Server
Provides real-time stock quotes, historical price data, financial news, and multi-stock comparisons using Yahoo Finance data. Enables users to access comprehensive financial market information through natural language queries.
Gong MCP Server
Un servidor de Protocolo de Contexto de Modelo que permite a Claude acceder a la API de Gong para recuperar grabaciones y transcripciones de llamadas a través de una interfaz estandarizada.
BLOT Nado MCP Server
Enables perpetuals trading on the Nado DEX via the Ink chain, featuring multi-wallet management and market data access. It supports automated strategies like pair trading and basis farming while earning DRIP rewards for all trades.
Time MCP Server
Provides current time information and timezone conversion capabilities using IANA timezone names and automatic system detection. It enables LLMs to fetch current times across different regions and convert specific times between timezones.
ZIP MCP Server
Provides tools for AI assistants to compress, decompress, and manage ZIP archives including metadata retrieval. It supports directory compression, password protection, and configurable extraction options.
s-GitHubTestRepo-HJA3
created from MCP server demo
Open Brain MCP Server
A personal semantic knowledge base that enables storing, searching, and retrieving memories and work history using natural language. It features vector-based search, tool discovery via a registry, and indexing of Cursor agent transcripts using Supabase or Postgres.
Fed Speech MCP
Retrieves, parses, and analyzes speeches and testimonies from Federal Reserve officers, enabling searches by speaker, topic, and keyword with automatic RSS feed discovery and intelligent relevance scoring.
Mcp_ui_phase1
Creando interfaz de usuario para servidores MCP.
mpd-mcp-server
Weather MCP Server
Enables AI assistants to retrieve real-time weather data and 5-day forecasts for any city using the OpenWeather API, supporting both metric and imperial units.
SEQ MCP Server
Enables LLMs to query and analyze logs from SEQ structured logging server with capabilities for searching events, retrieving event details, analyzing log patterns, and accessing saved searches.
Finance MCP Server
A Model Context Protocol server built with FastMCP that provides financial data tools for AI agents, enabling them to access and analyze stock market information from Yahoo Finance through natural language queries.
mcp-hub
A self-hosted remote MCP server that provides reusable prompts and development conventions across various AI tools. It features a modular architecture for organizing and namespacing custom prompts to streamline AI-assisted coding workflows.
Facebook Ads Management Control Panel
A Node.js Express server that integrates with Facebook Marketing API to provide a platform for managing ad campaigns, analyzing performance, and receiving optimization recommendations.