Monitor
BetterDB MCP server - Valkey observability for Claude Code and other MCP clients
Connector by BetterDB-inc · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/betterdb-inc-monitor
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: monitoring-observability, database-access
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 39 read · 11 write · 1 delete · 9 not yet classified
- Secrets
- 1 (API keys, tokens or passwords)
- Install scripts
- Not scanned yet
- Runs as
- Node.js package
Tools by what they do 60
Read from the source code; the running server may list different tools.
Read 39 · Look things up without changing anything.
ai_instance_historyai_list_instancescache_get_proposalcache_healthcache_listcache_list_pending_proposalscorrelate_ai_traceget_acl_auditget_ai_traceget_anomaliesget_client_activityget_clients
Show 27 more tools
get_cluster_node_statsget_cluster_nodesget_cluster_slowlogget_commandlogget_commandlog_historyget_commandlog_patternsget_forecastget_healthget_hot_keysget_inference_latencyget_infoget_largest_keysget_latencyget_latency_historyget_latency_regressionsget_memoryget_slot_statsget_slowlogget_slowlog_patternsget_vector_indexeslist_ai_traceslist_instancesmemory_getmemory_listmemory_list_pending_forgetsmemory_recallmemory_stats
Write 11 · Create, change, send or run things.
add_connectioncache_approve_proposalcache_edit_and_approve_proposalcache_reject_proposalmemory_approve_forgetmemory_reject_forgetmemory_storesselect_instanceset_default_connectionstart_monitorstop_monitor
Delete 1 · Delete, drop, revoke or wipe things.
remove_connection
Not yet classified 9 · We could not tell from the name and description.
cache_propose_invalidatecache_propose_threshold_adjustcache_propose_tool_ttl_adjustcache_recent_changescache_similarity_distributioncache_threshold_recommendationcache_tool_effectivenessmemory_forgettest_connection
Secrets and settings it asks for
Secrets: values you paste in that let it act as you.
BETTERDB_TOKEN
Other settings (environment variables or headers).
BETTERDB_INSTANCE_IDBETTERDB_URL
Tools (60)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
add_connectionAdd a new Valkey/Redis connection to BetterDB. Optionally set it as the active default.
ai_instance_historyGet the stored metrics time-series for one AI component instance (hits, misses, hit rate, cost saved, evictions, item count, index size, threshold). Use ai_list_instances first to find the instance field identifier. Use this to see trends: hit-rate degradation, growth, threshold drift.
ai_list_instancesList AI component instances (semantic caches, agent caches, agent memory stores, retrieval pipelines) auto-discovered on the connected Valkey/Redis instance, with liveness and the latest stored metrics sample. This is the superset discovery view across all AI components — use cache_list for cache-specific live stats and memory_stores for memory-store details. Use the returned instance field value as the field parameter of ai_instance_history.
cache_approve_proposalApprove a pending proposal. Synchronously applies the change to Valkey and returns the terminal status (applied|failed). Idempotent: a second call on an already-applied proposal returns the cached result.
cache_edit_and_approve_proposalEdit an existing pending proposal and approve it in one step. Provide exactly one edit field matching the proposal type: new_threshold for threshold_adjust, new_ttl_seconds for tool_ttl_adjust. Invalidate proposals are not editable.
cache_get_proposalFetch a single cache proposal by id, including its audit trail.
cache_healthDetailed health for a single cache. Response branches by type: semantic_cache reports category_breakdown + uncertain_hit_rate; agent_cache reports tool_breakdown.
cache_listList all caches (semantic_cache and agent_cache) registered for the active instance, with hit rate and total ops.
cache_list_pending_proposalsList pending cache proposals for the active instance, newest first. Optionally filter by cache_name.
cache_propose_invalidatePropose a cache invalidation for review. Filter shape depends on cache type: semantic_cache requires filter_kind=valkey_search + filter_expression; agent_cache requires filter_kind in (tool|key_prefix|session) + filter_value. Warns when estimated_affected exceeds 10000.
cache_propose_threshold_adjustPropose a semantic-cache similarity-threshold change for review. Creates a pending proposal that requires human approval before any change is applied. Reasoning must be at least 20 characters.
cache_propose_tool_ttl_adjustPropose an agent-cache per-tool TTL change for review. Creates a pending proposal that requires human approval. Reasoning must be at least 20 characters.
cache_recent_changesRecent proposals for a single cache (any status), so agents can avoid re-proposing pending or recently-applied changes. Newest first.
cache_reject_proposalReject a pending proposal. Optionally records a reason in the audit trail.
cache_similarity_distributionHistogram of recent similarity scores (20 buckets, width 0.1) for a semantic_cache. Errors on agent_cache.
Show 45 more tools
cache_threshold_recommendationThreshold-tuning recommendation for a semantic_cache, based on the rolling similarity-score window. Errors with INVALID_CACHE_TYPE on agent_cache.
cache_tool_effectivenessPer-tool hit rate, cost saved, and TTL recommendation for an agent_cache. Errors with INVALID_CACHE_TYPE on semantic_cache.
correlate_ai_traceExplain WHY a trace behaved the way it did by joining its cache/memory spans with live Valkey state: does the key still exist, what is its TTL, what threshold was active, what is the index state. The strongest tool for diagnosing unexpected cache misses or stale memory recalls. Requires a selected instance (the one the AI components run on).
get_acl_auditGet persisted ACL audit log entries from storage. Filter by username, reason (auth, command, key, channel), or time range. Use this to investigate why a connection is failing or audit access patterns.
get_ai_traceGet the full span waterfall for one AI trace: every span with timing, parent relationships, and attributes (model, cache hit/miss, similarity scores). Use list_ai_traces to find trace IDs.
get_anomaliesGet anomaly detection events from persisted storage. BetterDB continuously runs Z-score analysis on memory, hit rate, CPU, and other metrics — this returns the detected anomalies. Use to investigate what triggered an alert or correlate with an incident.
get_client_activityGet time-bucketed client activity from persisted snapshots. Shows connection counts, command distribution, and buffer usage over time. Use startTime/endTime to focus on a specific incident window.
get_clientsGet the active client list with connection details.
get_cluster_node_statsGet per-node performance stats: memory usage, ops/sec, connected clients, replication offset, and CPU. Use this to identify hot nodes, lagging replicas, or uneven load distribution.
get_cluster_nodesDiscover all nodes in the Valkey cluster — role (master/replica), address, health status, and slot ranges. Returns an error message if this instance is not running in cluster mode.
get_cluster_slowlogGet the aggregated slowlog across ALL nodes in the cluster. This is the primary tool for finding slow commands in cluster mode — per-node slowlogs are incomplete. Returns an error message if not in cluster mode.
get_commandlogGet the most recent entries from COMMANDLOG (Valkey 8+ only, superset of slowlog).
get_commandlog_historyGet persisted COMMANDLOG entries from storage (Valkey 8+ only). Supports time range filtering to investigate specific incidents. Returns empty with a note if COMMANDLOG is not supported on this instance.
get_commandlog_patternsGet analyzed COMMANDLOG patterns from persisted storage (Valkey 8+ only). Like get_slowlog_patterns but includes large-request and large-reply patterns in addition to slow commands.
get_forecastGet a capacity forecast for one metric: current trajectory and projected time until the resource ceiling is hit. Metric kinds: opsPerSec, usedMemory, cpuTotal, memFragmentation. Use for capacity planning ("when does memory run out at current growth?").
get_healthGet a synthetic health summary for the active instance: keyspace hit rate, memory fragmentation ratio, connected clients, replication lag (replicas only), and keyspace size. Use this as the first call when investigating an instance — it surfaces the most actionable signals without requiring you to parse raw INFO output.
get_hot_keysGet hot key tracking data from persisted storage. BetterDB periodically scans keys using LFU frequency scores (when maxmemory-policy is an LFU variant) or OBJECT IDLETIME / COMMANDLOG-derived frequency. Each snapshot captures the top keys ranked by access frequency. Use this to find cache-busting keys, uneven access patterns, or keys that dominate throughput. The signalType field in each entry indicates which detection mode was active (lfu or idletime).
get_inference_latencyGet the FT.SEARCH latency profile: p50/p95/p99 per vector index over the sampling window, plus SLA breach status per index. sla is null when BetterDB Pro inference SLA monitoring is absent or unlicensed, and an empty array when it is active with no indexes configured. More specific than get_latency, which covers general command latency. Use to answer "are vector searches meeting their latency budget?".
get_infoGet INFO stats for the active instance. Contains all health data: memory, clients, replication, keyspace, stats (hit rate, ops/sec), and server info. Optionally filter to a section: server|clients|memory|stats|replication|keyspace.
get_largest_keysGet the largest keys from key analytics snapshots, ranked by measured memory usage. Coverage note: snapshots track the biggest collections by element count, so a memory-heavy key with few elements may not be tracked. Companion to get_hot_keys, which ranks by access frequency. Use to find memory hogs, bloated hashes/sets, or candidates for TTL/eviction. Requires BetterDB Pro (keyAnalytics).
get_latencyGet latency event history for the active instance.
get_latency_historyGet the full latency history for a named event (e.g. 'command', 'fast-command'). Call get_latency first to see which event names are available, then use this to investigate a specific event's trend over time.
get_latency_regressionsGet detected latency regressions (sustained p99 command-latency degradations vs baseline) from persisted storage. Companion to get_anomalies: same event store, pre-filtered to latency regressions. Use when investigating "the database got slower".
get_memoryGet memory diagnostics: MEMORY DOCTOR assessment and MEMORY STATS breakdown.
get_slot_statsGet per-slot key counts and CPU usage (Valkey 8.0+ only). Use orderBy='cpu-usec' to find hot slots, or 'key-count' to find the most populated slots. Returns an error message if not supported.
get_slowlogGet the most recent slow commands from the slowlog.
get_slowlog_patternsGet analyzed slowlog patterns from persisted storage. Groups slow commands by normalized pattern, showing frequency, average duration, and example commands. Survives slowlog buffer rotation — data goes back as far as BetterDB has been running.
get_vector_indexesGet health details for every vector search index on the instance: document count, memory usage, indexing failures, and percent indexed. Requires the Search module (valkey-search / RediSearch) on the connection — errors clearly if absent. Use to diagnose incomplete indexing or index memory growth.
list_ai_tracesList recent AI application traces ingested via OpenTelemetry (LLM calls, cache lookups, memory recalls, retrieval spans). Not tied to a Valkey instance — traces come from instrumented AI apps. Use get_ai_trace for a full span waterfall and correlate_ai_trace to join a trace with live Valkey state.
list_instancesList all Valkey/Redis instances registered in BetterDB. Shows connection status and capabilities.
memory_approve_forgetApprove a pending forget proposal, applying the deletion against the live store.
memory_forgetPropose forgetting memories (by id, or by scope/tags). Creates a pending proposal that a human must approve before anything is deleted.
memory_getFetch a single memory by ID from a store.
memory_listList memories in a store, newest first, with optional scope and tag filters.
memory_list_pending_forgetsList pending forget proposals awaiting approval on an instance.
memory_recallRecall memories from a store by a precomputed query vector (the caller supplies the embedding).
memory_reject_forgetReject a pending forget proposal without deleting anything.
memory_statsGet item count, eviction count, and live config for a memory store.
memory_storesList agent-memory stores discovered on an instance (name, capabilities, stats key).
remove_connectionRemove a connection from BetterDB.
select_instanceSelect which instance subsequent tool calls operate on.
set_default_connectionSet a connection as the active default for BetterDB.
start_monitorStart the BetterDB monitor as a persistent background process. If already running, returns the existing URL. The monitor persists across MCP sessions and must be stopped explicitly with stop_monitor.
stop_monitorStop a persistent BetterDB monitor process that was previously started with start_monitor or --autostart --persist.
test_connectionTest a Valkey/Redis connection without persisting it. Use before add_connection to validate credentials.
Compare and alternatives
Featured in
Signals
- Stars
- 1,309
- Forks
- 83
- Open issues
- 9
- Weekly downloads
- 15
- Last commit (this folder)
- Oct 21, 2026 (7 days ago)
- Last release
- Oct 21, 2026 (7 days ago)
- Last package publish
- Aug 31, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.BetterDB-inc/monitor- Version
- 0.1.4
- Auth
- API key
- Packages
- npm @betterdb/mcp
- License
- License unknown
- Repository
- github.com/BetterDB-inc/monitor
- First seen
- Oct 24, 2026
- Last checked
- Oct 25, 2026
Cite this page
Monitor MCP server. Agent Mart. https://agentmart.dev/connectors/betterdb-inc-monitor (last updated 2026-10-25)