minespy is a tool that runs minecraft bots to collect and log chat messages and player activity into elasticsearch. it also provides a fastapi-based http api to query users, servers, messages, and activity data.
- minecraft bots that automatically join servers and log chat
- elasticsearch storage for messages, activity, and user stats
- fastapi http api to explore data
- python 3.9+
- node.js (for mineflayer bots)
- elasticsearch 8.x
clone the repo and install dependencies:
git clone https://github.com/dorocha/minespy.git
cd minespy
pip install -r requirements.txt
install node dependencies:
npm install mineflayer
start the bots defined in main.py
:
python3 main.py
launch the api server with uvicorn:
uvicorn api.api:app --reload --port 5000
then open http://localhost:5000/docs to see available endpoints.
- configure servers to monitor inside
main.py
- elasticsearch must be running on
http://localhost:9200