Skip to main content
Glama
gridhra

port-keeper-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORT_KEEPER_SLOTNoFallback slot name used when no slot is bound to the working copy and no --slot flag is given. The binding wins if it disagrees.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
current_contextA

The project and slot resolved from the working directory, with the service names. Returns no port numbers.

render_envA

Every environment variable of the current slot (service ports, derived values, PORT_KEEPER_PROJECT/SLOT) in a format: dotenv, export, json, mise, direnv or claude-env. Leases ports for services that have none yet. For your own use: to write .env.local run the port-keeper env command instead of writing the file by hand, and do not echo these numbers to the user.

resolve_portA

Bare port number of one service. Prefer resolve_url unless the caller needs the number itself (a tcp service, a config value).

resolve_urlA

Full URL (e.g. http://localhost:23417) of one service in the current slot. Pass project and slot to look up another project; both are required together.

slot_newA

Create a slot for the current project and lease its ports. Returns the existing slot when the name is taken. Omit name for the next free number.

statusB

Ledger versus reality for the current slot: each service's state (leased, active, stale, hijacked) and the listening process when known.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a clear, single responsibility: context, env rendering, port resolution, URL resolution, slot creation, and status. No two tools overlap; even resolve_port and resolve_url are distinguished by use case.

Naming Consistency4/5

Most tools follow verb_noun (render_env, resolve_port, resolve_url, slot_new) but current_context and status are noun phrases. The snake_case style is consistent, but the grammatical pattern is mixed.

Tool Count5/5

With 6 tools, the set is well-scoped for a port/slot management server. Each tool serves a distinct need without bloat.

Completeness4/5

The core lifecycle (create slot, resolve ports, render env, check status) is covered, but there is no explicit 'delete slot' or 'release ports' tool, which might be a minor gap for full lifecycle management.

Maintenance

ActivityMaintained
ResponsivenessNo issues