Skip to main content
Glama

willow-mcp

Servidor MCP neutral respecto al agente. Almacén de clave/valor en SQLite, base de conocimientos en Postgres, cola de tareas Kart. Autorización SAP/1.0 en cada llamada a herramienta.

pip install willow-mcp

Herramientas

Herramienta

Descripción

store_put

Escribir en el almacén SQLite

store_get

Leer del almacén SQLite

store_list

Listar átomos en una colección

store_search

Búsqueda de texto completo en una colección

store_delete

Eliminar un átomo

store_search_all

Buscar en todas las colecciones

knowledge_ingest

Añadir a la base de conocimientos Postgres

knowledge_search

Buscar en la base de conocimientos Postgres

task_submit

Enviar tarea a la cola Kart

task_status

Comprobar el estado de la tarea

task_list

Listar tareas pendientes

Cada herramienta requiere un parámetro app_id. La autorización se verifica mediante SAP/1.0.

Related MCP server: astra-knowledge-base-mcp

Configuración de OpenClaw

{
  "mcp": {
    "servers": {
      "willow": {
        "command": "python3",
        "args": ["-m", "willow_mcp"],
        "env": {
          "WILLOW_PG_DB": "willow",
          "SAP_SAFE_ROOT": "~/.sap/Applications",
          "SAP_PGP_FINGERPRINT": "YOUR_KEY_FINGERPRINT"
        }
      }
    }
  }
}

Configuración

Variable de entorno

Predeterminado

Descripción

WILLOW_PG_DB

willow

Nombre de la base de datos Postgres

WILLOW_PG_USER

$USER

Usuario de Postgres (autenticación por socket Unix)

WILLOW_STORE_ROOT

~/.willow/store

Directorio del almacén SQLite

SAP_SAFE_ROOT

~/.sap/Applications

Raíz de la carpeta SAFE

SAP_PGP_FINGERPRINT

(vacío)

Huella digital GPG fijada

Autorización

Utiliza openclaw-sap-gate (SAP/1.0). Configure una carpeta SAFE para cada app_id:

sap-gate init my-app
# edit ~/.sap/Applications/my-app/safe-app-manifest.json
# sign it, then:
sap-gate verify my-app

Licencia

MIT — Sean Campbell 2026

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 147 tool updatesv2.54.1
    • Removedagent_clear
    • Removedagent_dispatch_result
    • Removedagent_route
    • Removedagent_seed_mirror
    • Removedcode_graph_explain
    • Removedcode_graph_impact
    • Removedcode_graph_index
    • Removedcode_graph_search
    • Removedcode_graph_suggest
    • Removedcode_graph_walk
    • Removedcommitment_acknowledge
    • Removedcommitment_ingest
    • Removedcommitment_list
    • Removedcommitment_surface
    • Removedcontext_expire
    • Removedcontext_get
    • Removedcontext_list
    • Removedcontext_save
    • Removeddecision_propose
    • Removeddiagnostic_summary
    • Removeddispatch_accept
    • Removeddispatch_list
    • Removeddispatch_read
    • Removeddispatch_send
    • Removedenv_check
    • Removedenvelope_apply
    • Removedenvelope_list
    • Removedenvelope_pending_read
    • Removedenvelope_propose
    • Removedenvelope_ratify
    • Removedenvelope_read_discards
    • Removedenvelope_reject
    • Removedexposure_config_get
    • Removedexposure_slice
    • Removedfederation_call
    • Removedfederation_discover
    • Removedfederation_list_servers
    • Removedfleet_health
    • Removedfleet_status
    • Removedfork_create
    • Removedfork_delete
    • Removedfork_join
    • Removedfork_list
    • Removedfork_log
    • Removedfork_merge
    • Removedfork_status
    • Removedfrank_append
    • Removedfrank_read
    • Removedfrank_verify
    • Removedfriction_flags_list
    • Removedfriction_scan
    • Removedgap_delete
    • Removedgap_list
    • Removedgap_log
    • Removedgap_promote
    • Removedgap_purge_topic
    • Removedgap_resolve
    • Removedgit_pull_execute
    • Removedgit_push_execute
    • Removedgitsync_sweep
    • Removedgrove_ack
    • Removedgrove_agents
    • Removedgrove_bus_receive
    • Removedgrove_bus_send
    • Removedgrove_flag
    • Removedgrove_flagged
    • Removedgrove_fleet_status
    • Removedgrove_get_history
    • Removedgrove_get_identity
    • Removedgrove_get_thread
    • Removedgrove_heartbeat
    • Removedgrove_human_required
    • Removedgrove_inbox
    • Removedgrove_list_channels
    • Removedgrove_reply
    • Removedgrove_search
    • Removedgrove_send_message
    • Removedgrove_unflag
    • Removedgrove_watch
    • Removedgrove_watch_all
    • Removedhandoff_read
    • Removedhandoff_write_v4
    • Removedhuman_attestation_create
    • Removedhuman_attestation_list
    • Removedhuman_required_enqueue
    • Removedhuman_required_list
    • Removedhuman_required_resolve
    • Removedintegration_call
    • Removedintegration_list
    • Removedintegration_status
    • Removedkb_at
    • Removedkb_ingest
    • Removedkb_journal
    • Removedkb_journal_read
    • Removedkb_promote
    • Removedkb_startup_continuity
    • Removedknowledge_check
    • Removedknowledge_flag
    • Removedknowledge_ingest
    • Removedknowledge_retract
    • Removedknowledge_search
    • Removedknowledge_verify
    • Removedlineage_link
    • Removedlineage_list
    • Removedlineage_record
    • Removedlineage_why
    • Removednest_digest
    • Removednest_intake_file
    • Removednest_intake_flags
    • Removednest_intake_queue
    • Removednest_intake_scan
    • Removednest_intake_skip
    • Removednest_promote
    • Removednest_scan
    • Removednest_status
    • Removednestor_tool_pending
    • Removednestor_tool_route
    • Removednestor_tool_seal
    • Removedpr_open_execute
    • Removedreceipts_tail
    • Removedschema_confirm_mapping
    • Removedsession_bind
    • Removedsession_enter
    • Removedsession_handoff_write
    • Removedsession_read
    • Removedsession_reconcile
    • Removedsessions_read_unverifiable
    • Removedspecialist_get
    • Removedspecialist_list
    • Removedstore_collections
    • Removedstore_delete
    • Removedstore_get
    • Removedstore_list
    • Removedstore_purge_collection
    • Removedstore_put
    • Removedstore_search
    • Removedstore_search_all
    • Removedstore_stats
    • Removedstore_update
    • Removedtask_list
    • Removedtask_status
    • Removedtask_submit
    • Removedverify_handoff
    • Removedwhoami
    • Removedwillow_institutional_search
    • Removedwillow_web_fetch
    • Removedwillow_web_search
  2. 5 tool updatesv2.48.0
    • Addedgit_pull_execute
    • Changedgit_push_execute1 field changed
      • addedInput schema / properties / base
        Added value: +{
        +  "default": "",
        +  "title": "Base",
        +  "type": "string"
        +}
    • Addedgitsync_sweep
    • Addedpr_open_execute
    • Changedtask_submit1 field changed
      • addedInput schema / properties / anticipated_gates
        Added value: +{
        +  "anyOf": [
        +    {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Anticipated Gates"
        +}
  3. 1 tool updatev2.36.0
    • Addeddecision_propose
  4. 1 tool updatev2.34.0
    • Addedgit_push_execute
  5. 2 tool updatesv2.27.0
    • Changeddispatch_send1 field changed
      • addedInput schema / properties / envelope_id
        Added value: +{
        +  "default": "",
        +  "title": "Envelope Id",
        +  "type": "string"
        +}
    • Changedenvelope_list1 field changed
      • addedInput schema / properties / include_revoked
        Added value: +{
        +  "default": false,
        +  "title": "Include Revoked",
        +  "type": "boolean"
        +}
  6. 1 tool updatev2.23.0
    • Addedkb_journal_read
  7. 8 tool updatesv2.19.0
    • Addedenvelope_list
    • Addedenvelope_pending_read
    • Addedenvelope_propose
    • Addedenvelope_ratify
    • Addedenvelope_read_discards
    • Addedenvelope_reject
    • Changedsession_enter3 fields changed
      • addedInput schema / properties / attested_at
        Added value: +{
        +  "default": "",
        +  "title": "Attested At",
        +  "type": "string"
        +}
      • addedInput schema / properties / seal_sig
        Added value: +{
        +  "default": "",
        +  "title": "Seal Sig",
        +  "type": "string"
        +}
      • addedInput schema / properties / verifier
        Added value: +{
        +  "default": "",
        +  "title": "Verifier",
        +  "type": "string"
        +}
    • Addedsessions_read_unverifiable

TDQS

B3.3/5.0

Scored across 147 tools

Disambiguation4/5

The tool set is enormous but organized into clear prefix families (store_*, grove_*, gap_*, knowledge_*, kb_*, dispatch_*, envelope_*, session_*, fork_*, etc.) with detailed descriptions. A few pairs could be confused (e.g., store_search vs store_search_all, grove_send_message vs grove_bus_send, handoff_write_v4 vs session_handoff_write) but their scopes are distinct enough that an agent reading descriptions would likely pick correctly.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun (or prefix_verb_noun) pattern. Prefixes denote the domain (store, grove, gap, knowledge, kb, dispatch, fork, envelope, session, human, etc.), and verbs are consistently descriptive. There are no mixed conventions like camelCase or abbreviated ambiguities.

Tool Count1/5

147 tools is extreme for any MCP server, even one covering a broad governance/fleet management domain. The sheer volume makes the surface area unwieldy and increases the risk of a tool being overlooked or mis-selected. Per the calibration, 50+ tools is a strong mismatch; 147 far exceeds that threshold.

Completeness5/5

The tool set provides comprehensive coverage across its apparent domains: store CRUD and search, messaging and fleet coordination, knowledge base lifecycle, gap/backlog management, task queueing, dispatch workflow, fork management, envelope governance, session binding/reconciliation, human-required queue, and attestations. Each domain has create/read/update/delete or lifecycle operations, leaving very few obvious gaps.

Maintenance

ActivityNo data
ResponsivenessWithin a week

Related MCP Connectors

Related MCP Servers