Datacron
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DATACRON_DURABILITY | No | Durability mode (e.g., 'best-effort'). | |
| DATACRON_READ_PATHS | Yes | Read allowlist; if empty, read tools are disabled. Setup typically sets this to the vault root. | |
| DATACRON_VAULT_ROOT | Yes | Vault served by the server (default: current directory or --vault) | |
| DATACRON_WRITE_PATHS | No | Write allowlist; empty disables write tools. | |
| DATACRON_RIPGREP_PATH | No | Path to the ripgrep binary. | rg |
| DATACRON_CHUNK_MAX_TOKENS | No | Target maximum chunk size in tokens. | 1024 |
| DATACRON_MAX_RESULT_COUNT | No | Maximum number of results returned. | 20 |
| DATACRON_MAX_RESULT_TOKENS | No | Token budget for search results. | 8000 |
| DATACRON_GET_NOTE_MAX_TOKENS | No | Token budget for get_note(format='full'). | 25000 |
| DATACRON_REPAIR_MIN_INTERVAL_SECONDS | No | Minimum interval between repair-on-read sweeps; 0 = on every read. | 30 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_notesA | Use this to discover vault structure before deeper reads. Return an offset/limit paginated list of notes in the vault, optionally scoped to a subfolder and/or filtered by tags or top-level frontmatter (for example, frontmatter={'confidence': 'needs_verification'}). Each entry includes the stable ULID, title, tags, aliases, and timestamps. |
| get_noteA | Fetch the full context behind a search hit before answering from a snippet alone. Fetch a single note by its ULID, indexed chunk_id, or vault-relative path. chunk_id inputs return format='chunk' with the sandbox-wrapped chunk body; a parent-hash mismatch returns an explicit stale-chunk error. Chunk reads ignore offset/limit. For note inputs, format='full' returns the sandbox-wrapped body and offset/limit page large notes by character range; format='map' returns the heading outline only (cheap to scan before requesting full content). |
| search_textA | First stop for any question about the user's notes, projects, decisions, or past work - search before saying you do not know. Full-text BM25 search over the FTS5 index. Returns ranked sandbox-wrapped snippets with term highlighting. Requires |
| search_regexA | Regex search via ripgrep. Returns ranked sandbox-wrapped match lines with term highlighting, resolved to indexed chunks. Restrict file scope with |
| get_backlinksA | Use this to find related context the user did not mention. Return chunks whose wikilinks point at the given target. Target may be a note ULID or a wikilink alias (resolved via title -> filename -> aliases). Empty list if unresolved or no incoming links. |
| contradiction_scanA | Use this when indexed sections may conflict or refine one another. Scan mode returns deterministic section-level candidates and read-only proposal tokens; summary detail omits redundant alternative previews while full detail retains them for debugging. confirm mode validates one token and returns an exact existing write-tool call. This tool never writes, including after elicitation or confirmation. |
| get_healthA | Return truthful read-only health for index freshness, vault integrity, point-in-time checksum, durability capability, and invariant evidence. |
| create_note_aiA | Call this proactively when a durable fact, confirmed decision, or user preference emerges in conversation - do not wait to be asked. Skip speculation and one-off chatter. Write a new typed _memory Markdown note. Use rejected entries in 'option -- reason' format to record discarded options so a future agent does not propose them again. This is a write operation: it is confined to DATACRON_WRITE_PATHS, never overwrites existing files, writes a durable operation record, and relies on the MCP client's tool approval for human-in-the-loop review. |
| append_journalA | Use this when new information extends a topic that already has a note, instead of creating a duplicate. Append a Markdown entry under a heading in an existing memory note. This is a write operation: it is confined to DATACRON_WRITE_PATHS, stores content-addressed history, writes atomically, and relies on the MCP client's tool approval for human-in-the-loop review. |
| set_frontmatterA | Use this when a fact's lifecycle changes: verified today, superseded by a newer note, or confidence raised or lowered. Prefer invalidating an outdated fact (invalid_at + invalidated_by) over deleting or rewriting it: history stays queryable. Use rejected entries in 'option -- reason' format to record discarded options so a future agent does not propose them again. Update frontmatter fields on an existing memory note. This write operation only changes origin, confidence, last_verified, supersedes, rejected, valid_from, invalid_at, invalidated_by, and the automatic updated timestamp; the Markdown body is preserved. |
| patch_note_sectionA | Use this to rewrite an outdated section in place when the topic already has a note. Replace the content under one existing Markdown heading. Pass the note's current content_hash as expected_hash for CAS. The operation preserves the heading line and non-target sections, stores exact prior history, and writes atomically. |
| revert_noteA | Use this to undo a bad write by restoring exact prior bytes. Restore a note to exact content-addressed history bytes. Pass the current content_hash as expected_hash for CAS. The revert is itself durable, reversible, indexed, and operation-logged. |
| get_note_historyA | List committed operation metadata for one note without reading history content or modifying the journal. |
| audit_queryA | Query committed operation metadata by time range, tool, or note. This read-only operation never changes the journal or vault. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| vault-map | Folder/file tree with titles and tags. Lightweight (~2k tokens). |
| vault-info | Stats about the vault: path, note count, index freshness. |
| policy-active | Current write-policy state and availability of the L0-L5 trust engine. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/VBlackJack/Datacron'
If you have feedback or need assistance with the MCP directory API, please join our Discord server