Discover Awesome MCP Servers

Extend your agent with 84,516 capabilities via MCP servers.

All84,516
My MCP

My MCP

TO DO microsoft

MCP TS Quickstart

MCP TS Quickstart

Here's a build-less TypeScript quickstart for an MCP (Minecraft Protocol) server implementation, focusing on simplicity and ease of setup. This approach is suitable for small projects, prototyping, or learning the basics. Keep in mind that for larger, production-ready servers, a build process (using `tsc` and a bundler like esbuild or webpack) is highly recommended for performance and maintainability. **1. Project Setup** Create a new directory for your project: ```bash mkdir mcp-server-quickstart cd mcp-server-quickstart ``` **2. `package.json` (for dependencies and scripts)** Create a `package.json` file: ```bash npm init -y ``` Then, edit `package.json` to add the necessary dependencies and a start script: ```json { "name": "mcp-server-quickstart", "version": "1.0.0", "description": "A quickstart Minecraft Protocol server in TypeScript (build-less)", "main": "index.js", "scripts": { "start": "node --loader ts-node/esm src/index.ts", "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": ["minecraft", "server", "typescript", "mcp"], "author": "You", "license": "MIT", "dependencies": { "minecraft-protocol": "^1.50.0" }, "devDependencies": { "@types/node": "^20.0.0", "ts-node": "^10.0.0", "typescript": "^5.0.0" }, "type": "module" } ``` **Explanation:** * **`dependencies`**: * `minecraft-protocol`: The core library for handling Minecraft protocol communication. Adjust the version as needed. * **`devDependencies`**: * `@types/node`: TypeScript type definitions for Node.js. * `ts-node`: Allows you to execute TypeScript files directly without compiling them to JavaScript first. Crucial for this build-less approach. * `typescript`: The TypeScript compiler. We still need it for type checking, even if we're not explicitly compiling. * **`scripts`**: * `start`: This is the key. It uses `ts-node/esm` to execute your `src/index.ts` file directly. The `--loader ts-node/esm` flag tells Node.js to use `ts-node` as a module loader, enabling TypeScript execution. * **`type`: "module"`**: This is *essential* for using ES modules (import/export) in your TypeScript code. Without this, you'll have to use CommonJS (`require`) which is less modern. **3. Install Dependencies** ```bash npm install ``` **4. Create the Source File (`src/index.ts`)** Create a directory named `src`: ```bash mkdir src ``` Then, create a file named `src/index.ts` with the following content: ```typescript import { createServer } from 'minecraft-protocol'; const server = createServer({ 'online-mode': false, // Set to true for authenticating with Mojang servers host: '0.0.0.0', // Listen on all interfaces port: 25565, // Default Minecraft port version: '1.19.4', // Minecraft version to emulate maxPlayers: 10, motd: '§aMy Awesome TypeScript Server\n§bRunning build-less!' }); server.on('login', (client) => { console.log(`${client.username} connected`); client.on('end', () => { console.log(`${client.username} disconnected`); }); client.on('error', (err) => { console.error(`Client ${client.username} error:`, err); }); // Send a chat message to the client client.write('chat', { message: JSON.stringify({ translate: 'chat.type.announcement', with: [ 'Server', 'Welcome to the server!' ] }), position: 0, // Chat box sender: '0' }); }); server.on('listening', () => { console.log(`Server listening on port ${server.socketServer.address().port}`); }); server.on('error', (err) => { console.error('Server error:', err); }); ``` **Explanation:** * **`import { createServer } from 'minecraft-protocol';`**: Imports the necessary function from the `minecraft-protocol` library. * **`createServer(...)`**: Creates the Minecraft server instance. The options object configures the server: * `online-mode`: Whether to authenticate players with Mojang. Set to `false` for testing or LAN servers. **Important: Setting this to `false` makes your server vulnerable to impersonation.** * `host`: The IP address to listen on. `0.0.0.0` means listen on all interfaces. * `port`: The port to listen on (default Minecraft port is 25565). * `version`: The Minecraft version the server will emulate. This is crucial for compatibility with clients. Make sure it matches the version you want to support. Check the `minecraft-protocol` documentation for supported versions. * `maxPlayers`: The maximum number of players allowed on the server. * `motd`: The message of the day displayed in the Minecraft client's server list. Use Minecraft color codes (e.g., `§a` for green, `§b` for aqua). * **`server.on('login', (client) => { ... });`**: This is the event handler that's called when a client successfully logs in. The `client` object represents the connected player. * `client.on('end', ...)`: Handles client disconnects. * `client.on('error', ...)`: Handles client errors. * `client.write('chat', ...)`: Sends a chat message to the client. The message format is a JSON string that conforms to Minecraft's chat message format. * **`server.on('listening', ...)`**: Called when the server starts listening for connections. * **`server.on('error', ...)`**: Handles server-level errors. **5. Run the Server** ```bash npm start ``` This will execute your `src/index.ts` file using `ts-node/esm`. You should see output in your console indicating that the server is running. **6. Connect with a Minecraft Client** Start your Minecraft client and connect to `localhost:25565`. Make sure the client version matches the `version` specified in your `src/index.ts` file. If `online-mode` is `false`, you can use any username. **Important Considerations and Improvements:** * **Error Handling:** The example provides basic error handling, but you should implement more robust error handling in a real-world application. * **Configuration:** Hardcoding server settings in the code is not ideal. Use environment variables or a configuration file to make the server more configurable. * **Asynchronous Operations:** Minecraft protocol operations are often asynchronous. Use `async/await` to handle asynchronous operations cleanly. * **Protocol Version:** The `version` option in `createServer` is critical. Make sure it matches the Minecraft version you want to support. Refer to the `minecraft-protocol` documentation for a list of supported versions. * **Security:** If you set `online-mode` to `false`, your server is vulnerable to impersonation. Only do this for testing or LAN servers. For public servers, always enable `online-mode`. * **Build Process (Recommended for Production):** While this build-less approach is convenient for quick starts, it's not recommended for production servers. A build process using `tsc` and a bundler (like esbuild or webpack) will: * Improve performance by compiling TypeScript to optimized JavaScript. * Bundle your code into a single file, making deployment easier. * Allow you to use more advanced TypeScript features and libraries. **Example with a Build Process (Brief Overview):** 1. **Install Build Tools:** ```bash npm install -D typescript esbuild ``` 2. **`tsconfig.json`:** ```json { "compilerOptions": { "target": "esnext", "module": "esnext", "moduleResolution": "node", "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "strict": true, "skipLibCheck": true, "outDir": "dist" // Output directory }, "include": ["src/**/*"] } ``` 3. **`build` script in `package.json`:** ```json "scripts": { "build": "tsc && node dist/index.js", "start": "npm run build" } ``` 4. **Run `npm run build`:** This will compile your TypeScript code to JavaScript in the `dist` directory and then run the resulting JavaScript file. This more complex setup is highly recommended for any serious Minecraft server project. It provides better performance, maintainability, and scalability. The build-less approach is primarily for learning and experimentation. **Portuguese Translation of Key Concepts:** * **Build-less:** Sem compilação (literalmente "without compilation") or "sem processo de construção". * **TypeScript:** TypeScript (the same name is used in Portuguese). * **MCP (Minecraft Protocol):** Protocolo Minecraft (the same name is often used, or you can say "protocolo de comunicação do Minecraft"). * **Server:** Servidor. * **Implementation:** Implementação. * **Dependencies:** Dependências. * **Development Dependencies:** Dependências de desenvolvimento. * **Script:** Script (the same name is used in Portuguese). * **Module:** Módulo. * **Compile:** Compilar. * **Authentication:** Autenticação. * **Vulnerable:** Vulnerável. * **Impersonation:** Impersonificação. * **Configuration:** Configuração. * **Environment Variables:** Variáveis de ambiente. * **Asynchronous:** Assíncrono. * **Optimized:** Otimizado. * **Bundler:** Empacotador (although "bundler" is often used directly). * **Deployment:** Implantação. * **Maintainability:** Manutenibilidade. * **Scalability:** Escalabilidade. This comprehensive guide should get you started with a build-less TypeScript Minecraft server. Remember to consult the `minecraft-protocol` documentation for more advanced features and protocol details. Good luck!

nomad-mcp

nomad-mcp

Exposes a HashiCorp Nomad cluster as MCP tools for AI agents, enabling read-only inspection of jobs, allocations, nodes, and deployments, with optional write operations like stopping jobs, scaling task groups, restarting allocations, and registering jobs.

서울시 교통 데이터 MCP 서버

서울시 교통 데이터 MCP 서버

서울시 교통 데이터 MCP 서버 - 실시간 교통 정보, 대중교통, 따릉이 등의 데이터를 제공하는 MCP 서버

CloakBrowser MCP Server

CloakBrowser MCP Server

A stealth browser automation MCP server that wraps CloakBrowser's patched Chromium to bypass bot detection, providing 22 tools for web navigation, interaction, and session management.

GPT Image Playground MCP

GPT Image Playground MCP

Enables agents to generate images through the GPT Image Playground via a browser extension, supporting task submission, status tracking, and downloading generated images with reference image support.

youtube-mcp

youtube-mcp

MCP server for YouTube Data API v3 enabling video search, channel lookup, trending content, comments, and playlist management.

mcp-marine

mcp-marine

Provides access to marine weather data from Open-Meteo's free API through natural language queries via Pipeworx MCP gateway.

Mapify MCP Server

Mapify MCP Server

Enables AI assistants to generate interactive mind maps from text, YouTube videos, and web content using Mapify's API.

Telegram MCP

Telegram MCP

Provides read-only access to Telegram chats, allowing AI agents to list chats, read messages, and search within chats via local MCP.

git-log-mcp

git-log-mcp

Enables querying git commit history to analyze when and why code changes happened, providing authorship context and diffs for specific modules.

notebooklm-mcp-multiprofile

notebooklm-mcp-multiprofile

Enables AI agents to manage Google NotebookLM notebooks, sources, and generate podcasts/videos through the MCP protocol, with support for multiple Google accounts.

TimeVerse Code Reader

TimeVerse Code Reader

A read-only MCP server for code reading with intelligent caching, line-range selection, and language detection, enabling AI assistants to efficiently and safely explore file systems.

SP Database MCP Server

SP Database MCP Server

A Model Context Protocol server that provides real-time database schema information to AI assistants, supporting both low-code system schema queries and traditional database metadata queries.

MCP Finder Server

MCP Finder Server

dispatch-mcp

dispatch-mcp

MCP server for tier-based dispatch delegation via OmniRoute, enabling message dispatching to various AI model tiers and health monitoring.

WalletTriage MCP

WalletTriage MCP

Real-time exploit-exposure check for EVM wallets with x402 USDC payments, no signup needed.

intervals-icu-mcp

intervals-icu-mcp

MCP server that connects AI agents to Intervals.icu, enabling access to training data such as activities, wellness metrics, calendar events, gear, power curves, and custom items. Includes a running coach AI template for automated post-session analysis.

Forward MCP

Forward MCP

Enables agents to purchase verified growth outcomes such as qualified leads, sales meetings, and SEO content, with payment only for accepted results.

Shanhai MCP Server

Shanhai MCP Server

An out-of-the-box multi-tenant MCP server that lets MCP clients access knowledge retrieval, task dispatch, deliverable management, and multi-agent consultation services via SSE or stdio.

FreeTaxUSA MCP Server

FreeTaxUSA MCP Server

Enables AI agents to file taxes through FreeTaxUSA by automating a browser, allowing form filling, navigation, and refund checks via natural language.

Evolution API MCP Server

Evolution API MCP Server

Exposes the Evolution API v2 (WhatsApp) as 121 tools for MCP clients, enabling management of instances, messages, chats, groups, profiles, labels, webhooks, and integrations.

Domain Check MCP Server

Domain Check MCP Server

Um servidor de Protocolo de Contexto de Modelo (MCP) para verificar a disponibilidade de domínios usando os endpoints da IONOS.

pm4py-mcp

pm4py-mcp

An MCP server that wraps PM4Py to bring research-grade process mining (event log analysis, discovery, conformance, OCEL 2.0) to Claude and other MCP agents, fully locally.

MediaCrawler MCP Server

MediaCrawler MCP Server

Enables AI assistants to crawl and extract data from Chinese social media platforms like Bilibili, Xiaohongshu, and Douyin. Provides search, content detail retrieval, and creator information tools with persistent browser sessions and QR code login support.

simpleinout-mcp

simpleinout-mcp

MCP server for the Simple In/Out APIv4, providing tools for check-in/out statuses, user and group management, and access to beacons, geofences, networks, announcements, and roles.

Remote MCP Server on Cloudflare

Remote MCP Server on Cloudflare

fiware-orion-mcp

fiware-orion-mcp

MCP server for FIWARE Orion Context Broker enabling LLMs to manage NGSI-v2 context entities like IoT devices, sensors, and vehicles.

screenshot-mcp

screenshot-mcp

Enables AI agents to capture screenshots of windows (e.g., WeChat developer tools) and save them locally, allowing the agent to read the image directly and close the code-change-to-review loop without OSS or network.

MCP English Tutor

MCP English Tutor

A professional 1-on-1 English tutoring server that enables AI assistants to provide oral practice, grammar correction, and vocabulary recommendations. It features specialized tools for generating conversation topics, tracking progress, and creating immersive role-play scenarios.