Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Metric catalogue

Every series memo-mcp exposes, as of v1.4. Types: C counter, G gauge, H histogram. A histogram exposes _bucket{le}, _sum and _count. A family with no observations yet shows only its # HELP and # TYPE lines.

Bucket sets:

SetBoundaries
latency (s)0.001, 0.0025, 0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10
tokens50, 100, 200, 500, 1000, 2000, 4000, 8000, 16000
count0, 1, 2, 5, 10, 20, 50, 100, 200, 500
bytes1 KiB, 4 KiB, 16 KiB, 64 KiB, 256 KiB, 1 MiB, 4 MiB

MCP server

MetricTypeLabelsMeaning
memo_mcp_requests_totalCmethod, outcome = ok, errorEvery MCP request received (tools/call, resources/read, server/discover, …)
memo_mcp_requests_in_flightG—Requests being served now
memo_mcp_tool_calls_totalCtool, outcome = ok, tool_error, input_required, errorTool calls. input_required is promote waiting for a human
memo_mcp_tool_call_duration_secondsH latencytoolTool call latency
memo_mcp_tool_result_tokensH tokenstoolEstimated tokens in each tool result: the cost the agent pays
memo_mcp_tool_errors_totalCtool, class = not_found, forgotten, needs_human, canceled, invalid_args, internalWhy calls failed
memo_mcp_elicitations_totalCtool, outcome = asked, accept, decline, cancel, unsupportedHuman approval dialogs
memo_mcp_resource_reads_totalCkind = doc, chunk, source, fact, entity, page, index, ns_index, unknown; outcome = ok, errormemo:// resource reads
memo_mcp_sessions_totalCclientSessions started, by client name
MetricTypeLabelsMeaning
memo_search_totalCmode_requested, mode_resolved, granularity, outcome = results, abstainSearches that completed (failed searches show up as tool errors)
memo_search_duration_secondsH latencygranularityEnd-to-end search latency
memo_search_arm_duration_secondsH latencyarmTime in each retrieval arm
memo_search_arm_candidatesH countarmCandidates each arm returned before fusion
memo_search_resultsH countgranularityResults returned per search
memo_search_truncated_results_totalC—Ranked results left out by the token budget
memo_search_cutoff_totalCkind = gap, budget, limit, noneWhy lists ended
memo_search_degraded_totalCreason = no_embedder, query_embed_failed, reranker_failed, otherSearches served without a capability
memo_search_abstentions_totalCreasonSearches that returned nothing on purpose
memo_search_entities_matchedH count—Known entities named per query
memo_search_rerank_duration_secondsH latencymodelCross-encoder time, only with the reranker
memo_graph_cache_totalCevent = hit, build, build_asofIn-memory mention-graph cache
memo_graph_build_duration_secondsH latency—Time to build a namespace graph

Store (write path)

MetricTypeLabelsMeaning
memo_store_writes_totalCop, channel = tool, cli, elicitation, workerEvery audited write
memo_store_ingests_totalCoutcome = new, revision, dedup, errorIngest calls
memo_store_ingest_duration_secondsH latency—Ingest latency, embedding included
memo_store_chunks_written_totalC—Passages written
memo_store_document_bytesH bytes—Size of ingested documents
memo_store_vectors_stored_totalCmodelVectors stored
memo_store_embed_batches_totalCoutcome = ok, error, queuedEmbedding batches on the write path
memo_store_jobs_totalCkind, event = queued, done, failedBackground jobs, for example the embed backlog
memo_store_mentions_linked_totalC—Entity mentions linked to passages
memo_store_pages_marked_stale_totalC—Pages marked stale by a source change or forget
memo_store_work_items_totalCkind, event = created, done, skippedCompaction work items
memo_store_status_scrape_errors_totalC—Failures reading the gauges below

Knowledge base (gauges read from the file, cached for 5 s)

MetricLabelsMeaning
memo_kb_sources—Sources
memo_kb_documents_live—Live documents (latest revision, not forgotten)
memo_kb_revisions—Document revisions stored
memo_kb_chunks—Live passages
memo_kb_facts—Live facts
memo_kb_entities—Entities
memo_kb_mentions—Entity mentions
memo_kb_edges—Typed edges
memo_kb_merge_review_open—Open merge candidates awaiting a human
memo_kb_pages—Curated pages
memo_kb_pages_stale—Stale pages
memo_kb_work_items_open—Open compaction work items
memo_kb_jobs_queued—Jobs queued or running
memo_kb_jobs_failed—Jobs failed
memo_kb_pending_embeddingsmodelPassages without a vector for that model
memo_kb_schema_version—Schema version of the file
memo_kb_db_size_bytes—Size of the main SQLite file, excluding the WAL
memo_kb_last_write_timestamp_seconds—Unix time of the last audited write
memo_kb_namespace_documentsnamespaceLive documents per namespace
memo_kb_namespace_chunksnamespaceLive passages per namespace

All are gauges.

Embedding

MetricTypeLabelsMeaning
memo_embed_duration_secondsH latencymodel, role = query, docEmbedding call latency
memo_embed_texts_totalCmodel, roleTexts embedded
memo_embed_errors_totalCmodel, roleEmbedding calls that failed
memo_embed_batch_sizeH countmodelTexts per call
memo_embed_model_downloads_totalCmodel, outcome = ok, error, corrupt_retryModel downloads
memo_embed_model_load_secondsGmodelTime the last model load took
memo_embed_model_loadedGmodel, backend = hugot, static1 while a model is loaded in this process

Web UI

MetricTypeLabelsMeaning
memo_ui_requests_totalCroute (for example GET /search), statusUI requests
memo_ui_request_duration_secondsH latencyrouteUI render time

Runtime and build

MetricTypeLabelsMeaning
memo_build_infoG (always 1)version, go_version, mcp_protocol, goos, goarchWhat is running
go_infoGversionGo version
go_goroutinesG—Goroutines
go_memstats_heap_alloc_bytesG—Live heap
go_memstats_sys_bytesG—Memory obtained from the OS
go_gc_cycles_totalC—Completed GC cycles
go_gc_pauses_secondsH—GC pause distribution
process_start_time_secondsG—Process start time; use it to spot session restarts