Skip to content

Sukikui/PlayerCoordsAPI

Repository files navigation

PlayerCoordsAPI

A lightweight Fabric mod that exposes your Minecraft player coordinates via a local HTTP API.

Modrinth Modrinth

📋 Overview

PlayerCoordsAPI provides real-time access to your Minecraft player coordinates through a simple HTTP endpoint. This enables external applications to track your position without needing to read Minecraft's memory or capture the screen.

✨ Features

  • Lightweight HTTP server running only on localhost providing your coordinates
  • Client-side only - no server-side components needed
  • Works in singleplayer and multiplayer
  • Mod menu integration allowing you to enable/disable the API, change its port, and configure requests with or without an Origin header

🚀 Installation

  1. Install Fabric Loader
  2. Download the latest playercoordsapi-x.x.x+mcx.x.x.jar from the releases page
  3. Place the jar in your .minecraft/mods folder
  4. Launch Minecraft with the Fabric profile

⚙️ Configuration

The API is read-only and only accepts loopback connections such as 127.0.0.1 and ::1. From Mod Menu, you can configure:

  • Whether the API is enabled
  • Which port it listens on (default: 25565)
  • How requests without a CORS Origin header are handled
  • How requests with a CORS Origin header are handled

Requests with an Origin can be handled in three different modes:

  • Allow all
  • Local origins
  • Whitelist

In Whitelist mode, you can configure each allowed origin with a scheme, host/IP, and optional port.

🔌 API Usage

Endpoint Method Description
/api/coords GET, OPTIONS Returns the player's current coordinates and world infos

Response Fields

Field Type Description
x number East-West
y number Height
z number North-South
yaw number Horizontal rotation (degrees)
pitch number Vertical rotation (degrees)
world string Minecraft world registry ID
biome string Minecraft biome registry ID
uuid string Player UUID
username string Player username

Error Responses

Status Message
403 Access denied / Origin not allowed
404 Player not in world
405 Method not allowed

Response Format Example

{
  "x": 123.45,
  "y": 64.00,
  "z": -789.12,
  "yaw": 180.00,
  "pitch": 12.50,
  "world": "minecraft:overworld",
  "biome": "minecraft:plains",
  "uuid": "550e8400-e29b-41d4-a716-446655440000",
  "username": "PlayerName"
}

🛠️ Examples

Replace 25565 with your configured port if you changed it in the Mod Menu.

cURL

curl http://localhost:25565/api/coords

Python

import requests

response = requests.get("http://localhost:25565/api/coords")
data = response.json()
print(f"Player {data['username']} (UUID: {data['uuid']}) at X: {data['x']}, Y: {data['y']}, Z: {data['z']}")

JavaScript

fetch("http://localhost:25565/api/coords")
    .then(response => response.json())
    .then(data => console.log(`Player ${data.username} (UUID: ${data.uuid}) at X: ${data.x}, Y: ${data.y}, Z: ${data.z}`));

Crafted by Sukikui

About

Lightweight Fabric mod exposing locally MC player coords through HTTP API

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages