Skip to main content
Glama
ivo-toby

Postgram MCP Server

by ivo-toby

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoHTTP/MCP server port.3100
LOG_LEVELNopino log level.info
POSTGRES_DBNoCompose Postgres database used when DATABASE_URL is unset.postgram
DATABASE_URLNoFull Postgres connection string. Compose constructs it from the generated Postgres password secret when unset.
OAUTH_ENABLEDNoEnable OAuth authorization-code, PKCE, and Dynamic Client Registration routes for native remote MCP connectors.false
POSTGRES_HOSTNoCompose Postgres host used when DATABASE_URL is unset. Override to host.docker.internal or another hostname for an existing cluster.postgres
POSTGRES_PORTNoCompose Postgres port used when DATABASE_URL is unset.5432
POSTGRES_USERNoCompose Postgres user used when DATABASE_URL is unset.postgram
OPENAI_API_KEYNoRequired when EMBEDDING_PROVIDER=openai OR (EXTRACTION_ENABLED=true AND EXTRACTION_PROVIDER=openai). Optional otherwise.
EMBEDDING_MODELNoDefaults: text-embedding-3-small (openai, 1536 dims), bge-m3 (ollama, 1024 dims).
OLLAMA_BASE_URLNoOllama server URL.http://localhost:11434
PUBLIC_BASE_URLNoPublic HTTPS origin for OAuth metadata and callback URLs. Required when OAUTH_ENABLED=true. Example: https://postgram.example.com.
EXTRACTION_MODELNoModel name (defaults: gpt-4o-mini for OpenAI, claude-haiku-4-5-20251001 for Anthropic, llama3.2 for Ollama, gpt-4o-mini for OpenAI-compatible).
ANTHROPIC_API_KEYNoAnthropic API key. Required when EXTRACTION_PROVIDER=anthropic.
EMBEDDING_API_KEYNoOptional bearer token for EMBEDDING_BASE_URL.
POSTGRES_PASSWORDNoCompose Postgres password used when DATABASE_URL is unset. For external hosts, an explicit blank value builds a passwordless URL.
EMBEDDING_BASE_URLNoEmbedding host. Independent from LLM-extraction host so embeddings and inference can target different machines. Required when provider=ollama and not using OLLAMA_BASE_URL.
EMBEDDING_PROVIDERNoopenai or ollama. Compose keeps OpenAI when OPENAI_API_KEY is present, otherwise chooses Ollama unless explicitly set.openai
EXTRACTION_API_KEYNoOptional bearer token for EXTRACTION_BASE_URL.
EXTRACTION_ENABLEDNoEnable LLM relationship extraction.false
EXTRACTION_BASE_URLNoBase URL for OpenAI-compatible chat-completions APIs, including any /v1 path. Postgram appends /chat/completions. Required when provider=openai-compatible.
EXTRACTION_PROVIDERNoLLM provider: openai, anthropic, ollama, or openai-compatible.openai
ADMIN_MFA_SECRET_KEYNoStable 32+ character secret used to encrypt admin TOTP seeds. Compose generates and persists it in postgram_secrets when unset.
EMBEDDING_DIMENSIONSNoMust match the active embedding_models row. Run ./bin/pgm-admin embeddings migrate --target-dimensions <N> --yes to change.
EMBEDDING_TIMEOUT_MSNoHard timeout for a single embedding provider call. Bounds how long one stalled call can delay a request.15000
ENRICHMENT_POLL_INTERVAL_MSNoEnrichment worker poll interval.1000
ADMIN_SETTINGS_ENCRYPTION_KEYNo32-byte base64url installation key used to encrypt DB-backed provider secrets. Compose generates and persists it in postgram_secrets when unset. Keep it outside database backups.

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

Server capabilities have not been inspected yet.

Tools

Functions exposed to the LLM to take actions

NameDescription

No tools

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources