Discover Awesome MCP Servers
Extend your agent with 84,516 capabilities via MCP servers.
- All84,516
- 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
Switcher MCP Server
Enables discovery and control of Switcher KIS devices locally via MCP, including turning on/off and retrieving device state without cloud dependency.
cluster-tools MCP Server
Enables AI-driven COMSOL batch jobs on the Harvard FASRC cluster, allowing users to run COMSOL models, manage jobs, and fetch results directly through natural language.
google-mcp
Enables interaction with Google Docs, Sheets, and Drive through natural language, supporting file management, document editing, and spreadsheet operations via OAuth authentication.
TuringWell MCP Server
MCP server for TuringWell, the agent-native Q&A platform for executable, verifiable fixes.
Pinecone MCP Server
Integração com o Pinecone para capacidades de busca vetorial.
@navop/mcp
MCP stdio bridge to a running Navop desktop application, enabling AI agents to interact with Navop via MCP protocol.
RetellAI MCP Server
A Model Context Protocol server implementation that enables AI assistants to interact with RetellAI's voice services for managing calls, agents, phone numbers, and voice options.
fluyo-mcp
MCP server that creates, edits and exports architecture diagrams as .fluyo.json files, operating through tools like create_diagram, edit_diagram, and export_diagram directly from Claude.
GitLab + Jira MCP Server
Enables read-only access to GitLab and Jira data through MCP, allowing users to list projects, merge requests, issues, and search Jira tickets via natural language queries. Provides safe, structured access to project management data without write permissions.
Tribunal TRT11: Certidão Eletrônica de Ações Trabalhistas (CEAT)
MCP server for querying official TRT11 electronic labor lawsuit certificates (CEAT). It enables read-only consultations from an official source with pay-per-use prepaid credits.
office-mcp
An MCP server that lets Claude control Microsoft Word and Excel on macOS via AppleScript, providing 98 tools for document and spreadsheet automation.
mcp-arcgis-allegheny
Enables searching and querying of Allegheny County, Pennsylvania open geospatial data (parcels, addresses, zoning, public works) through ArcGIS Feature Services.
Create your first own server
Here's a simple MCP (Minecraft Coder Pack) server-side code snippet in Java to count the occurrences of the character "r" in a string: ```java import net.minecraft.server.MinecraftServer; import net.minecraft.util.text.TextComponentString; import net.minecraft.command.CommandBase; import net.minecraft.command.ICommandSender; import net.minecraft.command.CommandException; import net.minecraft.server.management.PlayerList; import net.minecraft.entity.player.EntityPlayerMP; import javax.annotation.Nonnull; import java.util.Collections; import java.util.List; public class CommandCountR extends CommandBase { @Override public String getName() { return "countr"; // The command name } @Override public String getUsage(ICommandSender sender) { return "/countr <text>"; // How to use the command } @Override public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException { if (args.length == 0) { sender.sendMessage(new TextComponentString("Usage: /countr <text>")); return; } // Combine the arguments into a single string StringBuilder sb = new StringBuilder(); for (String arg : args) { sb.append(arg).append(" "); } String text = sb.toString().trim(); // Remove trailing space int count = 0; for (int i = 0; i < text.length(); i++) { if (Character.toLowerCase(text.charAt(i)) == 'r') { // Case-insensitive count++; } } sender.sendMessage(new TextComponentString("The text contains " + count + " 'r' characters.")); } @Override public List<String> getTabCompletions(MinecraftServer server, ICommandSender sender, String[] args, net.minecraft.util.math.BlockPos targetPos) { return Collections.emptyList(); // No tab completion } @Override public boolean checkPermission(MinecraftServer server, ICommandSender sender) { return sender.canUseCommand(4, "countr"); // Permission level (4 is op) } } ``` **Explanation:** 1. **Imports:** Imports necessary Minecraft classes for commands, server management, and text handling. 2. **`CommandCountR` Class:** Extends `CommandBase`, which is the base class for Minecraft commands. 3. **`getName()`:** Returns the name of the command, which is "countr". This is what players will type in the chat. 4. **`getUsage()`:** Returns the usage string, telling players how to use the command: `/countr <text>`. 5. **`execute()`:** This is the core of the command. - It checks if any arguments were provided. If not, it sends the usage message. - It combines all the arguments into a single string `text`. This allows the player to enter multiple words. - It iterates through the `text` string, character by character. - `Character.toLowerCase(text.charAt(i)) == 'r'` converts the character to lowercase before comparing it to 'r'. This makes the count case-insensitive (it will count both 'r' and 'R'). - It increments the `count` variable each time an 'r' is found. - Finally, it sends a message back to the player with the total count. 6. **`getTabCompletions()`:** Provides tab completion suggestions. In this case, it returns an empty list, meaning there are no tab completions. 7. **`checkPermission()`:** Checks if the sender has permission to use the command. `sender.canUseCommand(4, "countr")` means that only players with operator (OP) status (permission level 4) can use the command. You can change the `4` to a lower number if you want more players to be able to use it. **How to Use This Code in Your MCP Project:** 1. **Create the Java File:** Create a new Java file named `CommandCountR.java` in your MCP source directory (usually `src/main/java`). Make sure the package declaration at the top of the file matches your mod's package structure. 2. **Register the Command:** You need to register this command with the Minecraft server. The best place to do this is in your main mod class (the class annotated with `@Mod`). Add the following code to your mod's `init` event (or a similar initialization method): ```java import net.minecraftforge.fml.common.event.FMLServerStartingEvent; @EventHandler public void serverLoad(FMLServerStartingEvent event) { event.registerServerCommand(new CommandCountR()); } ``` Make sure you have the necessary `@EventHandler` and `FMLServerStartingEvent` imports. 3. **Recompile and Run:** Recompile your MCP project and run the Minecraft server. 4. **Use the Command:** In the Minecraft server console or in-game (if you're an OP), type `/countr This is a test string with some r's`. The server will respond with "The text contains 4 'r' characters." **Important Considerations:** * **MCP Setup:** This code assumes you have a properly set up MCP development environment. * **Mod Loading:** Make sure your mod is being loaded correctly by Minecraft. Check the server logs for any errors. * **Permissions:** Adjust the permission level in `checkPermission()` as needed. * **Error Handling:** For a more robust command, you might want to add more error handling (e.g., handling exceptions if the input is invalid). * **Case Sensitivity:** The code is now case-insensitive. If you want it to be case-sensitive, remove the `Character.toLowerCase()` part. **Translation to Portuguese:** Here's the explanation and the messages translated to Portuguese: **Explicação:** 1. **Imports:** Importa as classes necessárias do Minecraft para comandos, gerenciamento do servidor e manipulação de texto. 2. **Classe `CommandCountR`:** Estende `CommandBase`, que é a classe base para comandos do Minecraft. 3. **`getName()`:** Retorna o nome do comando, que é "countr". Este é o que os jogadores digitarão no chat. 4. **`getUsage()`:** Retorna a string de uso, informando aos jogadores como usar o comando: `/countr <texto>`. 5. **`execute()`:** Este é o núcleo do comando. - Verifica se algum argumento foi fornecido. Caso contrário, envia a mensagem de uso. - Combina todos os argumentos em uma única string `texto`. Isso permite que o jogador insira várias palavras. - Itera através da string `texto`, caractere por caractere. - `Character.toLowerCase(text.charAt(i)) == 'r'` converte o caractere para minúsculo antes de compará-lo com 'r'. Isso torna a contagem insensível a maiúsculas e minúsculas (contará 'r' e 'R'). - Incrementa a variável `count` cada vez que um 'r' é encontrado. - Finalmente, envia uma mensagem de volta ao jogador com a contagem total. 6. **`getTabCompletions()`:** Fornece sugestões de preenchimento automático com tabulação. Neste caso, retorna uma lista vazia, o que significa que não há preenchimentos automáticos. 7. **`checkPermission()`:** Verifica se o remetente tem permissão para usar o comando. `sender.canUseCommand(4, "countr")` significa que apenas jogadores com status de operador (OP) (nível de permissão 4) podem usar o comando. Você pode alterar o `4` para um número menor se quiser que mais jogadores possam usá-lo. **Mensagens Traduzidas:** * "Usage: /countr <text>" -> "Uso: /countr <texto>" * "The text contains " + count + " 'r' characters." -> "O texto contém " + count + " caracteres 'r'." You would replace the English strings in the `execute()` method with these Portuguese translations. For example: ```java sender.sendMessage(new TextComponentString("Uso: /countr <texto>")); // ... sender.sendMessage(new TextComponentString("O texto contém " + count + " caracteres 'r'.")); ``` This will make the command's output appear in Portuguese.
fieldwork-mcp
Enables pest control business owners using Fieldwork to ask plain-English questions about customers, invoices, product usage, schedules, and technicians, returning clear answers from the Fieldwork API. Read-only access with no ability to modify jobs, customers, or payments.
sharepoint-mcp
Exposes SharePoint file operations to Microsoft Copilot Studio, allowing file publishing, listing, link generation, and deletion with secure authentication via Microsoft Graph.
SaSame Research + Guild MCP
Provides a remote MCP server with tools like guild_feed and join_guild for AI agents to interact with the Gold Rush Guild, an open activity feed. No installation or authentication required.
@cyanheads/treasury-fiscaldata-mcp-server
Query US Treasury national debt, interest rates, exchange rates, and fiscal datasets via MCP with STDIO or Streamable HTTP.
vscode-mcp-supergateway
A centralized MCP gateway that aggregates and routes requests from multiple IDE clients to backend services, while offloading context tasks to local LLM workers.
MCP Note-Taking Server
Enables structured note-taking with markdown support, dynamic tagging system, advanced search capabilities, and markdown export functionality through natural language conversations in Claude Desktop.
K-LifeGuard MCP Server
An intelligent emergency medical coordinator that provides symptom-based hospital recommendations, real-time ETA, and guardian alerts.
MCP Server for Google Analytics 4
Enables LLMs to interact with Google Analytics 4 data through the Google Analytics Data API, supporting standard reports, real-time data, and metadata retrieval.
pbi-webview2
Enables AI agents to interact with live Power BI Desktop report canvas via Chrome DevTools Protocol, performing actions like page navigation, clicking slicers, reading cards and matrices, and capturing baselines.
semantic-scholar-mcp
Access millions of academic papers from Semantic Scholar using the Model Context Protocol, with tools for paper search, author analysis, and research organization.
AI-Project-Planner-Agent
Enables AI project feasibility evaluation and solution planning through structured reasoning stages, using Gemini API and web search for up-to-date research.
GNOME Desktop MCP
GNOME desktop automation for AI agents. 30 tools via D-Bus: screenshots, window management, mouse/keyboard injection, clipboard, workspaces, and system notifications. Works on any GNOME 45–49 Linux desktop.
ai-multiagent-orchestrator-mcp
MCP server that coordinates multiple AI specialists (SQL database, document RAG, and web research) using LangGraph, routing each question to the relevant agents and synthesizing their responses into a single answer with honest confidence flags.
Yahoo Finance MCP Server
Integrates Yahoo Finance data with Claude to provide real-time and historical financial information, including stock prices, financial statements, and options data. It enables comprehensive market research and investment analysis through natural language interactions.
mcp-data-wa
Enables querying and exploring Washington State open data via the Socrata SoQL API, including dataset search, SoQL queries, and metadata retrieval, without requiring an API key.
Image Worker MCP
A lightweight MCP server for image processing and cloud uploads that automates resizing, converting, optimizing, and uploading images to services like AWS S3, Cloudflare R2, and Google Cloud Storage.
DAP Bellwether
MCP server that aggregates and serves regulatory changes from Canadian, US, UK, and EU financial regulators via read-only tools for search, recent changes, and coverage monitoring.