pumaDB install / hermes

Use Hermes as the agent runtime and pumaDB as durable memory.

Hermes can connect to pumaDB over hosted MCP. Keep Hermes' small prompt-injected memory for high-signal pointers, and use pumaDB for durable, queryable JSON records that survive across sessions and agents.

MCP URL https://api.pumadb.ai/mcp
Auth OAuth discovery with dynamic client registration

Add pumaDB as a hosted MCP server.

Use this shape in your Hermes MCP config. It exposes the normal memory tools and leaves destructive cleanup out by default; add delete later only when you want Hermes to remove matching memory directly.

mcp_servers:
  pumadb:
    url: "https://api.pumadb.ai/mcp"
    auth: oauth
    tools:
      include:
        - query
        - add
        - upsert
        - update_row
        - update_where
        - list_tables
        - count
        - versions
        - restore
        - open_row
        - open_text_field
        - remember
        - remember_resource
        - remember_code
        - remember_markdown
        - remember_command
        - remember_config
      prompts: false
      resources: false

Then complete the hosted OAuth flow and start Hermes.

hermes mcp login pumadb
hermes chat

Keep the layers distinct.

Hermes memory

Tiny, always-loaded identity, preferences, and operating pointers.

pumaDB tables

Durable JSON records for project facts, handoff notes, resources, code snippets, commands, configs, and long text fields.

Hermes skills

Procedures for how to do work. Store drafted skills as inert Markdown in pumaDB only when they are not active instructions.

pumaDB remember tools

Typed inert storage for resources, snippets, commands, configs, and Markdown with safety metadata.

Before starting work on repo X, query pumaDB for rows where project = "repo-x".
When you learn a durable convention, upsert it into project_memory.
When you find a useful doc, store it with remember_resource.
When you draft a reusable command, store it with remember_command.
Keep only the shortest pointer in Hermes memory, such as:
"Use pumaDB project_memory where project=repo-x for detailed repo notes."

Store small structured facts with stable filters.

Prefer predictable top-level fields such as project, type, topic, and tags. pumaDB filters use simple top-level equality, so stable fields make future Hermes queries reliable.

{
  "project": "medan",
  "type": "convention",
  "topic": "mcp",
  "summary": "Use hosted pumaDB MCP for agents; REST only from trusted server-side code.",
  "tags": ["pumadb", "hermes", "mcp"]
}