Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PINE_HOSTNoOverride the host (TCP only)127.0.0.1
PINE_SLOTNoPINE slot — also the TCP port on Windows28011
PINE_TARGETNoEmulator name — used as the prefix in the Unix socket file path on Linux/macOS (<target>.sock.<slot>). Ignored on Windows (TCP only).pcsx2
PINE_SOCKET_PATHNoOverride the full Unix socket path on Linux/macOS, bypassing automatic resolution(auto)

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
pine_pingA

Verify the PINE connection by querying the emulator version. Returns the version string if reachable.

pine_get_infoA

Get the loaded game's title, serial (e.g. SLUS-21274), disc CRC, game version, and emulator status.

pine_get_statusA

Get the current emulator state: 'running', 'paused', 'shutdown', or 'unknown'.

pine_read8A

Read a single unsigned byte (u8) from emulated memory.

PlayStation 2 main address space landmarks: 0x00000000 EE main RAM (32 MiB) — game code & data 0x10000000 Hardware registers (DMA, GIF, VIF, etc.) 0x11000000 VU0 / VU1 memory 0x12000000 GS privileged registers 0x1C000000 IOP RAM (2 MiB) 0x1F800000 IOP scratchpad 0x70000000 EE scratchpad (16 KiB) PINE memory operations target the EE address space.

pine_read16A

Read an unsigned 16-bit little-endian value from emulated memory. Address should be 2-byte aligned.

pine_read32A

Read an unsigned 32-bit little-endian value from emulated memory. Address should be 4-byte aligned.

pine_read64A

Read an unsigned 64-bit little-endian value from emulated memory. Address should be 8-byte aligned. Returned as a string to preserve precision past 2^53.

pine_write8A

Write a byte (u8) to emulated RAM. Writes to ROM/read-only regions are silently ignored by the emulator.

pine_write16A

Write a 16-bit value (LE) to emulated RAM. Address must be 2-byte aligned.

pine_write32B

Write a 32-bit value (LE) to emulated RAM. Address must be 4-byte aligned.

pine_write64A

Write a 64-bit value (LE) to emulated RAM. Address must be 8-byte aligned. Pass the value as a decimal string to preserve precision past 2^53.

pine_read_rangeA

Read a contiguous range of bytes from emulated memory and return them as an array of integers. Implemented client-side as a pipelined sequence of PINE read64/32/16/8 calls (PINE has no native bulk-read), choosing the largest aligned load at each step. Maximum 4096 bytes per call. Slower than mGBA's native readRange but fast enough for cheat-table refresh and small struct dumps over loopback.

pine_save_stateA

Trigger the emulator to save its current state to a numbered slot.

pine_load_stateA

Trigger the emulator to load a previously-saved state from a numbered slot.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dmang-dev/mcp-pine'

If you have feedback or need assistance with the MCP directory API, please join our Discord server