📖 Reference

Reference

Complete tool index, signal types, data model, and integration reference for agents that learn. Shared across all lanes.

Signal Types

Every event has a signal_type that classifies what kind of knowledge it represents. Eight types cover the full range.

TypeWhat it representsValue meaningLanes
competence Skill or knowledge level in a domain 0 = novice, 1 = expert Chat, Agent, Coding
preference Communication or behavioral setting 0 = low/off, 1 = high/on Chat, Agent, Coding, Devices
claim A tracked proposition or belief 0 = false/rejected, 1 = true/accepted Agent, Coding, Workflow, Multi-agent
entity Named entity — person, org, tool, device 0 = inactive, 1 = active/relevant All lanes
event Incident, milestone, decision, anomaly 0 = minor, 1 = significant Coding, Workflow, Devices
metric Measurable quantity Normalized 0–1 within expected range Coding, Workflow, Devices
pattern Recurring behavior or trend 0 = weak, 1 = strong pattern Chat, Coding, Workflow, Devices
state Current status or operational phase Context-dependent (document in gloss) Workflow, Multi-agent, Devices

Certainty & Learning

Every event carries a certainty score between 0 and 1. It represents how confident the model is in what it knows about this signal.

Certainty rangeMeaningBehavior
0.0 – 0.3Low — new or weakly supportedUpdates fast; open to revision
0.3 – 0.6Medium — building confidenceUpdates at moderate rate
0.6 – 0.8High — well-supportedResists noise; updates on strong signals
0.8 – 1.0Very high — solidly establishedHighly stable; only major contradictions move it

Start new observations at 0.3 and let learning refine over time. The system is agile where ignorant and stable where certain — learning rate adapts automatically to current certainty.

Validation types

TypeUse when
directA sensor or data source provides objective ground truth (compare predicted vs. actual to compute error)
logicNo external sensor — error magnitude is your judgment based on corroboration, contradiction, or specificity

Error magnitude guidance (for apply_learning)

Signal typeMagnitudeDirection
Independent corroboration0.05 – 0.1increase
Same-source repetition0.02 – 0.05increase
Specificity upgrade0.1 – 0.15increase
Temporal confirmation~0.1increase
Contradiction0.2 – 0.4decrease

Read Tools

ToolPurposeKey params
get_pod_summaryCondensed readable overview — top signals with glosses and freshnessuser_id, include_glosses, include_freshness
get_podFull pod state including all eventsuser_id, include_vectors, include_curiosity
get_eventsAll events, optionally filtered by signal_typeuser_id, signal_type, validation_type
get_relevant_contextEvents most relevant to a task — scored by match + certaintyuser_id, query, max_results
query_podNatural language question across all eventsuser_id, query
get_low_certaintyEvents below a certainty threshold — best validation candidatesuser_id, threshold
get_curiosity_triggersEvents that need validation, are stale, or under-observeduser_id, max_triggers, include_probes
get_gap_analysisHigh-value, low-certainty signals ranked by investigation priorityuser_id, max_gaps
get_convergence_reportNew events, certainty changes, and stale signals since last reportuser_id, since_days

Write Tools

ToolPurposeKey params
create_podInitialize a new pod for a user or entityuser_id, name, pod_type
save_eventSave or update any eventuser_id, key, signal_type, value, certainty, gloss, meta
record_observationLog a raw behavioral signal (correction, engagement, etc.)user_id, session_id, signal_type, signal_data
apply_learningUpdate an event's value and certainty based on an observationuser_id, key, signal_type, error_direction, error_magnitude
update_sessionIncrement session and interaction counters — call once at enduser_id, interactions
delete_eventRemove a specific event by keyuser_id, key, signal_type
delete_podPermanently delete pod and all data — irreversibleuser_id, confirm: true

Graph Tools

ToolPurposeKey params
link_eventsCreate a semantic relationship between two eventsuser_id, source_key, target_key, relationship, note
get_event_clusterBFS traversal from an event through its linksuser_id, key, signal_type, max_depth
suggest_linksAuto-suggest relationships based on keyword overlapuser_id, min_overlap
detect_contradictionsSurface conflicting high-certainty eventsuser_id, certainty_threshold
suggest_synthesisFind high-certainty events that could be consolidateduser_id, min_certainty, min_overlap
export_cluster_diagramMermaid diagram of event relationshipsuser_id, center_event, include_all
export_argument_outlineHierarchical markdown outline from linked eventsuser_id, topic, include_evidence
get_argument_chainTrace logical dependencies for a claim or topicuser_id, topic, max_depth

Extended Context Tools

ToolPurpose
save_agent_context / get_agent_contextPersist and retrieve agent task history, decisions, errors per agent_id
save_repo_context / get_repo_contextCodebase metadata across sessions, namespaced by repo
save_service_context / get_service_contextExternal service health and status data
save_life_context / get_life_contextUser-shared life patterns (health, goals, routine, schedule)
link_resource / get_resources / unlink_resourceAttach and retrieve files, URLs, and projects linked to events
add_sourceRegister a data source with a credibility score for intelligence pipeline pods
export_podExport complete pod data as JSON (GDPR Article 20)

Relationship Types

RelationshipMeaningExample
BUILDS_ONA is grounded in Breact BUILDS_ON javascript
ENABLESA makes B possiblepython ENABLES data-science
RELATED_TOThematic connectionhiking RELATED_TO photography
CONTRADICTSA conflicts with Bminimalism CONTRADICTS feature-creep
PART_OFA is a subset of Bflask PART_OF python-web
EVOLVES_FROMA grew out of Bmicroservices EVOLVES_FROM monolith
SUPERSEDESA replaces Bv2-api SUPERSEDES v1-api

Event Schema

All events share a common schema regardless of signal type.

Event fields
{ "user_id": "string", // pod identifier — required "key": "string", // signal key — required "signal_type": "competence|preference|claim|entity|event|metric|pattern|state", "value": 0.0–1.0, // signal strength — required "certainty": 0.0–1.0, // model confidence — default 0.3 "gloss": "string", // human-readable interpretation "validation_type": "direct|logic", // how error signals are produced "meta": {}, // arbitrary structured metadata "source_id": "string", // source identifier (intelligence pods) "source_type": "api|sensor|document|..." }

MCP Config

Nervous Machine is a remote MCP server. Add it via your client's connector UI or config file.

claude_desktop_config.json / .cursor/mcp.json
{ "mcpServers": { "nervous-machine": { "url": "https://context.nervousmachine.com/mcp", "transport": "sse" } } }
â„šī¸

Because Nervous Machine is a remote MCP server, most clients let you add it through their UI without editing config files directly. Check your client's "Add Integration" or "MCP Connectors" section.

curl Examples

Create a pod
curl -X POST https://context.nervousmachine.com/mcp \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"tools/call","params":{"name":"create_pod","arguments":{"user_id":"alice","name":"Alice"}}}'
Save an event
curl -X POST https://context.nervousmachine.com/mcp \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"tools/call","params":{"name":"save_event","arguments":{"user_id":"alice","key":"python","signal_type":"competence","value":0.8,"certainty":0.3,"gloss":"Strong Python developer"}}}'
Get pod summary
curl -X POST https://context.nervousmachine.com/mcp \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"tools/call","params":{"name":"get_pod_summary","arguments":{"user_id":"alice","include_glosses":true}}}'
Apply learning
curl -X POST https://context.nervousmachine.com/mcp \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"tools/call","params":{"name":"apply_learning","arguments":{"user_id":"alice","key":"python","signal_type":"competence","error_direction":"increase","error_magnitude":0.1}}}'

Privacy & Data Rights

Nervous Machine stores learned abstractions, not raw data. Your pod contains what the agent learned from interactions — not transcripts, not files, not personal information beyond what you explicitly save.

RightToolNotes
Export your dataexport_podReturns complete pod as JSON. GDPR Article 20 compliant.
Delete your datadelete_podPermanent, irreversible. Requires confirm: true. GDPR Article 17 compliant.
Inspect what's storedget_pod_summary, get_eventsFull visibility into all events and certainty scores at any time.
Correct stored knowledgesave_event, apply_learning, delete_eventAny event can be updated, corrected, or deleted in natural language.
âœĻ

Vectors, not transcripts. Think of it like a colleague who remembers you're great at Python and prefer direct feedback. They don't have a transcript of your conversations — they just know you. That's what your pod stores.