MCPy is a high-performance Minecraft server engine based on Python and Cython. It integrates scientific computing libraries and advanced optimization techniques, aiming to provide excellent performance and scalability. The project is currently in the development stage and includes core modules such as the server engine, world generation, network processing, entity system, and data persistence.
2 points
5.4K

Installation

Copy the following command to your Client for configuration
Note: Your key is sensitive information, do not share it with anyone.

🚀 MCPy: High-Performance Minecraft Server Engine

MCPy is a next - generation, ultra - optimized Minecraft server engine. It is powered by Python, Cython, and advanced scientific computing libraries. It aims to deliver exceptional performance and flexibility, making Minecraft server development accessible and future - proof.

License: MIT Python 3.9+ Cython

⚠️ Important Note

MCPy is under active development and is not yet feature - complete. The codebase contains known errors and is unstable. We welcome your bug reports and contributions to help us reach our goals faster!

🚀 Quick Start

To quickly start using MCPy, you can follow the installation steps and running commands provided below.

✨ Features

  • Cython - Accelerated Core: An event - driven server engine approaching C - level performance.
  • Scientific Computing Backbone: Integrates NumPy, SciPy, and Polars for high - efficiency operations.
  • Zero - Overhead Networking: Asynchronous, non - blocking, protocol - optimized networking.
  • Sophisticated Entity System: Efficient, extensible entity management with advanced AI support.
  • Robust Persistence Layer: Powered by PostgreSQL and SQLAlchemy ORM for reliable data storage.
  • Comprehensive Benchmarking: Built - in performance analytics and profiling tools.
  • Extensible Plugin Framework: Easily add server modifications.
  • Real - Time Monitoring: Prometheus & Grafana integration for live metrics.

📦 Installation

Prerequisites

Property Details
Python 3.9+ (3.11+ recommended)
C++ Compiler Modern C++ compiler (VS 2019+ / GCC 9+)
Database PostgreSQL 13+ (for production)
Memory Minimum 8 GB RAM (16 GB recommended)

Quick Setup

git clone https://github.com/magi8101/mcpy.git
cd mcpy
# Windows
setup.bat
# Linux/macOS
chmod +x setup.sh
./setup.sh

Manual Installation

git clone https://github.com/magi8101/mcpy.git
cd mcpy
python -m venv .venv
# Windows:
.venv\Scripts\activate
# Linux/macOS:
source .venv/bin/activate
pip install -r _requirements.txt
pip install -e ".[dev]"
pip install -e ".[ai]"  # Optional: Enable AI features
python check_dependencies.py
python setup.py build_ext --inplace

💻 Usage Examples

Basic Usage

# Using setup scripts
# Windows:
setup.bat run
# Linux/macOS:
./setup.sh run

# Directly from the command line
python -m mcpy.server
python -m mcpy.server --config custom_config.toml --world my_world
python -m mcpy.server --performance-mode --max-players 100
python -m mcpy.server --debug --log-level debug

Advanced Usage

Here are some advanced usage examples with command - line options:

Option Description
--config PATH Path to TOML config file
--world PATH World directory
--port NUMBER Network port (default: 25565)
--max-players NUMBER Max players (default: 20)
--view-distance NUMBER Chunk view distance (default: 10)
--performance-mode Extra performance optimizations
--debug Enable debug mode
--log-level LEVEL Set log level (default: info)
--backup Enable automatic backups

📚 Documentation

Architecture Overview

MCPy is modular, with five high - performance core components:

  1. server_core.pyx

    • Event - driven request handling
    • Adaptive, high - precision tick system
    • Dynamic worker thread pool management
    • Real - time performance profiling
  2. world_engine.pyx

    • Procedural terrain generation with multi - octave noise and advanced biomes
    • Multi - threaded chunk generation & memory - efficient terrain storage
  3. network_core.pyx

    • Zero - copy packet serialization and protocol - level compression
    • Robust connection pooling & DDoS mitigation
  4. entity_system.pyx

    • Spatial hash - based entity tracking and multi - threaded physics
    • Modular AI behavior trees
  5. persistence

    • SQLAlchemy ORM for PostgreSQL/SQLite
    • Efficient chunk serialization and transactional world state

Performance Goals

Metric Target Value
Scalability 20 TPS with 100+ concurrent players
Memory Usage <2 GB for 10,000 chunks
Latency <50 ms per player action
Reliability 100% test coverage for core modules
Throughput 10,000+ entity updates per tick

Database Configuration

SQLite (Default)

[database]
type = "sqlite"
path = "world/mcpy.db"
journal_mode = "WAL"
synchronous = "NORMAL"

PostgreSQL (Production)

[database]
type = "postgresql"
host = "localhost"
port = 5432
dbname = "mcpy"
user = "postgres"
password = "your_password"
pool_size = 10
max_overflow = 20
echo = false

Persistence Features

  • Transactional World Saving
with session.begin():
    for chunk in dirty_chunks:
        session.add(ChunkModel.from_chunk(chunk))
  • Efficient Chunk Serialization
chunk_data = np.savez_compressed(io_buffer,
                                blocks=chunk.blocks,
                                heightmap=chunk.heightmap,
                                biomes=chunk.biomes)
  • Player Data Management
player_model = PlayerModel(
    uuid=player.uuid,
    username=player.username,
    position=json.dumps([player.x, player.y, player.z]),
    inventory=pickle.dumps(player.inventory, protocol=5),
    stats=json.dumps(player.stats)
)
  • Intelligent Auto - saving: Only modified chunks/entities are saved
  • Automated Backups: Configurable intervals & retention

Development & Testing

pytest                                # Run full test suite
pytest tests/test_entity_system.py     # Entity system tests
python -m benchmarks.benchmark        # Benchmarks
python -m mcpy.profiling.profile_module world_engine  # Profile module
pytest --cov=mcpy --cov-report=html   # Test coverage report

Performance Tuning Examples

Entity System

entity_spatial_hash = {(int(e.x/16), int(e.z/16)): [] for e in entities}
for entity in entities:
    entity_spatial_hash[(int(entity.x/16), int(entity.z/16))].append(entity)

World Engine

with ThreadPoolExecutor(max_workers=os.cpu_count()) as executor:
    futures = [executor.submit(generate_chunk, x, z) for x, z in chunk_coords]
    chunks = [f.result() for f in futures]

Network Optimization

cdef char* buffer = <char*>malloc(packet_size)
memcpy(buffer, &packet_header, sizeof(packet_header))
memcpy(buffer + sizeof(packet_header), packet_data, packet_data_size)

Advanced Features

Plugin System

from mcpy.plugins import Plugin, event

class TeleportPlugin(Plugin):
    @event("player.command")
    def on_command(self, player, command, args):
        if command == "tp" and len(args) >= 1:
            target = self.server.get_player_by_name(args[0])
            if target:
                player.teleport(target.x, target.y, target.z)
                return True
        return False

Real - Time Monitoring

[monitoring]
enabled = true
prometheus_port = 9090
metrics = ["tps", "memory_usage", "players_online", "chunks_loaded"]

AI Entity Behaviors

class ZombieAI(MobAI):
    def setup_behaviors(self):
        self.behaviors = BehaviorTree(
            Selector([
                Sequence([
                    CheckPlayerNearby(radius=16),
                    PathfindToPlayer(),
                    AttackPlayer()
                ]),
                Sequence([
                    Wait(random.randint(20, 100)),
                    MoveToRandomPosition(radius=10)
                ])
            ])
        )

Roadmap

Short - Term

  • [ ] Entity collision system
  • [ ] Crafting & inventory management
  • [ ] Basic combat mechanics
  • [ ] World generation optimization

Medium - Term

  • [ ] Multi - world support & portals
  • [ ] Custom block behaviors
  • [ ] Enhanced mob AI
  • [ ] In - game scripting API

Long - Term

  • [ ] Distributed server architecture
  • [ ] Machine learning - driven mob AI
  • [ ] Real - time ray - traced lighting
  • [ ] Custom physics engine

🔧 Technical Details

Cython & Performance

  • Static typing (cdef) and aggressive compiler directives
  • Direct NumPy buffer access and pointer arithmetic
  • Multi - threaded parallelism via thread pools

Entity System

  • Hierarchical, component - based design
  • O(1) spatial partitioning via custom memory pools
  • Adaptive Level - of - Detail (LOD) entity management

World Generation

  • Multi - octave Perlin/Simplex noise
  • Voronoi - based biome transitions
  • Erosion, cave, and structure algorithms
  • 10x chunk compression for storage efficiency

🤝 Contributing

We welcome your contributions! Please see our Contributing Guide to get started:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing - feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to your branch (git push origin feature/amazing - feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.

Alternatives

M
MCP
The Microsoft official MCP server provides search and access functions for the latest Microsoft technical documentation for AI assistants
8.9K
5 points
A
Aderyn
Aderyn is an open - source Solidity smart contract static analysis tool written in Rust, which helps developers and security researchers discover vulnerabilities in Solidity code. It supports Foundry and Hardhat projects, can generate reports in multiple formats, and provides a VSCode extension.
Rust
5.9K
5 points
D
Devtools Debugger MCP
The Node.js Debugger MCP server provides complete debugging capabilities based on the Chrome DevTools protocol, including breakpoint setting, stepping execution, variable inspection, and expression evaluation.
TypeScript
5.4K
4 points
S
Scrapling
Scrapling is an adaptive web scraping library that can automatically learn website changes and re - locate elements. It supports multiple scraping methods and AI integration, providing high - performance parsing and a developer - friendly experience.
Python
8.9K
5 points
M
Mcpjungle
MCPJungle is a self-hosted MCP gateway used to centrally manage and proxy multiple MCP servers, providing a unified tool access interface for AI agents.
Go
0
4.5 points
C
Cipher
Cipher is an open-source memory layer framework designed for programming AI agents. It integrates with various IDEs and AI coding assistants through the MCP protocol, providing core functions such as automatic memory generation, team memory sharing, and dual-system memory management.
TypeScript
0
5 points
N
Nexus
Nexus is an AI tool aggregation gateway that supports connecting multiple MCP servers and LLM providers, providing tool search, execution, and model routing functions through a unified endpoint, and supporting security authentication and rate limiting.
Rust
0
4 points
S
Shadcn Ui MCP Server
An MCP server that provides shadcn/ui component integration for AI workflows, supporting React, Svelte, and Vue frameworks. It includes functions for accessing component source code, examples, and metadata.
TypeScript
12.2K
5 points
G
Gitlab MCP Server
Certified
The GitLab MCP server is a project based on the Model Context Protocol that provides a comprehensive toolset for interacting with GitLab accounts, including code review, merge request management, CI/CD configuration, and other functions.
TypeScript
16.6K
4.3 points
N
Notion Api MCP
Certified
A Python-based MCP Server that provides advanced to-do list management and content organization functions through the Notion API, enabling seamless integration between AI models and Notion.
Python
14.8K
4.5 points
M
Markdownify MCP
Markdownify is a multi-functional file conversion service that supports converting multiple formats such as PDFs, images, audio, and web page content into Markdown format.
TypeScript
24.6K
5 points
D
Duckduckgo MCP Server
Certified
The DuckDuckGo Search MCP Server provides web search and content scraping services for LLMs such as Claude.
Python
44.0K
4.3 points
U
Unity
Certified
UnityMCP is a Unity editor plugin that implements the Model Context Protocol (MCP), providing seamless integration between Unity and AI assistants, including real - time state monitoring, remote command execution, and log functions.
C#
19.2K
5 points
F
Figma Context MCP
Framelink Figma MCP Server is a server that provides access to Figma design data for AI programming tools (such as Cursor). By simplifying the Figma API response, it helps AI more accurately achieve one - click conversion from design to code.
TypeScript
44.5K
4.5 points
G
Gmail MCP Server
A Gmail automatic authentication MCP server designed for Claude Desktop, supporting Gmail management through natural language interaction, including complete functions such as sending emails, label management, and batch operations.
TypeScript
14.8K
4.5 points
M
Minimax MCP Server
The MiniMax Model Context Protocol (MCP) is an official server that supports interaction with powerful text-to-speech, video/image generation APIs, and is suitable for various client tools such as Claude Desktop and Cursor.
Python
30.3K
4.8 points
AIBase
Zhiqi Future, Your AI Solution Think Tank
© 2025AIBase