Serversio.github.phasespace-labs/palinode
P

Palinode

io.github.phasespace-labs/palinode · v0.8.9
▦ pypi
v0.8.9pypi pypi: palinode↗ Website↗ Repository
{}server.json

The full server descriptor as registered with IndusMCP.

{
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "name": "io.github.phasespace-labs/palinode",
  "description": "Git-versioned markdown memory for AI agents: save, search, compact, lint, and audit.",
  "title": "Palinode",
  "repository": {
    "url": "https://github.com/phasespace-labs/palinode",
    "source": "github"
  },
  "version": "0.8.9",
  "websiteUrl": "https://github.com/phasespace-labs/palinode",
  "packages": [
    {
      "registryType": "pypi",
      "registryBaseUrl": "https://pypi.org",
      "identifier": "palinode",
      "version": "0.8.9",
      "runtimeHint": "uvx",
      "transport": {
        "type": "stdio"
      },
      "packageArguments": [
        {
          "description": "Select the palinode distribution from PyPI",
          "value": "palinode",
          "type": "named",
          "name": "--from"
        },
        {
          "description": "Console script for the stdio MCP server",
          "value": "palinode-mcp",
          "type": "positional",
          "valueHint": "stdio entry point"
        }
      ],
      "environmentVariables": [
        {
          "description": "Path to the markdown-memory directory (e.g. ~/.palinode). Created if missing.",
          "isRequired": true,
          "name": "PALINODE_DIR"
        },
        {
          "description": "Host where the back-end palinode-api process is reachable",
          "default": "127.0.0.1",
          "name": "PALINODE_API_HOST"
        },
        {
          "description": "Port for palinode-api",
          "default": "6340",
          "name": "PALINODE_API_PORT"
        },
        {
          "description": "Optional bearer token enforced on every palinode-api request other than /health. Required when PALINODE_API_BIND_INTENT=public. Generate with: python -c 'import secrets; print(secrets.token_urlsafe(32))'.",
          "isSecret": true,
          "name": "PALINODE_API_TOKEN"
        },
        {
          "description": "Path to a file containing the bearer token (alternative to PALINODE_API_TOKEN; for docker-secrets style deployments)",
          "isSecret": true,
          "name": "PALINODE_API_TOKEN_FILE"
        }
      ]
    },
    {
      "registryType": "pypi",
      "registryBaseUrl": "https://pypi.org",
      "identifier": "palinode",
      "version": "0.8.9",
      "runtimeHint": "uvx",
      "transport": {
        "type": "streamable-http",
        "url": "http://127.0.0.1:6341/mcp/"
      },
      "packageArguments": [
        {
          "description": "Select the palinode distribution from PyPI",
          "value": "palinode",
          "type": "named",
          "name": "--from"
        },
        {
          "description": "Console script for the long-running streamable-HTTP MCP server",
          "value": "palinode-mcp-sse",
          "type": "positional",
          "valueHint": "streamable-http entry point"
        }
      ],
      "environmentVariables": [
        {
          "description": "Path to the markdown-memory directory",
          "isRequired": true,
          "name": "PALINODE_DIR"
        },
        {
          "description": "Bind host for the MCP HTTP server. Defaults to loopback; set to 0.0.0.0 only with intentional network exposure (paired with PALINODE_API_BIND_INTENT=public on the back-end).",
          "default": "127.0.0.1",
          "name": "PALINODE_MCP_HTTP_HOST"
        },
        {
          "description": "Port for the MCP HTTP server",
          "default": "6341",
          "name": "PALINODE_MCP_HTTP_PORT"
        },
        {
          "description": "Host where the back-end palinode-api is reachable",
          "default": "127.0.0.1",
          "name": "PALINODE_API_HOST"
        },
        {
          "description": "Port for palinode-api",
          "default": "6340",
          "name": "PALINODE_API_PORT"
        },
        {
          "description": "Bearer token enforced by palinode-api. Required when binding non-loopback. Generate with: python -c 'import secrets; print(secrets.token_urlsafe(32))'.",
          "isSecret": true,
          "name": "PALINODE_API_TOKEN"
        },
        {
          "description": "Path to a file containing the bearer token (alternative to PALINODE_API_TOKEN)",
          "isSecret": true,
          "name": "PALINODE_API_TOKEN_FILE"
        }
      ]
    }
  ],
  "_meta": {
    "io.modelcontextprotocol.registry/publisher-provided": {
      "release": "v0.8.9",
      "release_notes_url": "https://github.com/phasespace-labs/palinode/releases/tag/v0.8.9",
      "tool": "mcp-publisher"
    },
    "dev.indusmcp/source": "official-registry-mirror",
    "dev.indusmcp/synced": "2026-05-12"
  }
}