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
6.1K

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

A
Acemcp
Acemcp is an MCP server for codebase indexing and semantic search, supporting automatic incremental indexing, multi-encoding file processing, .gitignore integration, and a Web management interface, helping developers quickly search for and understand code context.
Python
8.7K
5 points
B
Blueprint MCP
Blueprint MCP is a chart generation tool based on the Arcade ecosystem. It uses technologies such as Nano Banana Pro to automatically generate visual charts such as architecture diagrams and flowcharts by analyzing codebases and system architectures, helping developers understand complex systems.
Python
6.9K
4 points
M
MCP Agent Mail
MCP Agent Mail is a mail - based coordination layer designed for AI programming agents, providing identity management, message sending and receiving, file reservation, and search functions, supporting asynchronous collaboration and conflict avoidance among multiple agents.
Python
8.4K
5 points
M
MCP
The Microsoft official MCP server provides search and access functions for the latest Microsoft technical documentation for AI assistants
11.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
10.6K
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
8.9K
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
11.6K
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
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
17.5K
4.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
19.3K
4.3 points
D
Duckduckgo MCP Server
Certified
The DuckDuckGo Search MCP Server provides web search and content scraping services for LLMs such as Claude.
Python
54.2K
4.3 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
28.3K
5 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#
24.0K
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
50.8K
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
18.1K
4.5 points
C
Context7
Context7 MCP is a service that provides real-time, version-specific documentation and code examples for AI programming assistants. It is directly integrated into prompts through the Model Context Protocol to solve the problem of LLMs using outdated information.
TypeScript
75.8K
4.7 points
AIBase
Zhiqi Future, Your AI Solution Think Tank
© 2025AIBase