Servidor MCP

OpenAkashic

io.github.szara7678/openakashic

Qué hace este MCP

Provides a shared long-term knowledge vault for searching, reading, writing, reviewing, confirming, disputing, and publishing validated notes and knowledge capsules.

append_note_section
Append OpenAkashic Note Section
Append a new H2 section to an existing OpenAkashic markdown note.
Esquema de entrada
{'type': 'object', 'title': 'append_note_sectionArguments', 'required': ['path', 'heading', 'content'], 'properties': {'path': {'type': 'string', 'title': 'Path', 'description': "Full path of the existing note. Example: 'personal_vault/projects/my-project/note.md'"}, 'content': {'type': 'string', 'title': 'Content', 'description': 'Markdown content to append under the heading.'}, 'heading': {'type': 'string', 'title': 'Heading', 'description': "Section heading text (without ##). Example: 'Results' → appended as '## Results'"}}}
Esquema de salida
{'type': 'object', 'title': 'append_note_sectionDictOutput', 'additionalProperties': True}
bootstrap_project
Bootstrap OpenAkashic Project
Create or verify a project workspace with README index and optional agent-defined subfolders.
Esquema de entrada
{'type': 'object', 'title': 'bootstrap_projectArguments', 'properties': {'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Tags', 'default': None}, 'scope': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Scope', 'default': None}, 'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Title', 'default': None}, 'folders': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Folders', 'default': None}, 'project': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Project', 'default': None}, 'related': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Related', 'default': None}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Summary', 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Description', 'default': None}, 'project_key': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Project Key', 'default': None}, 'canonical_docs': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Canonical Docs', 'default': None}}}
Esquema de salida
{'type': 'object', 'title': 'bootstrap_projectDictOutput', 'additionalProperties': True}
claim_contribution_status
Check OpenAkashic Claim Contribution Status
Return the current contribution state for kind='claim' notes. Formerly known as `check_contribution_status`. If you see tool-not-found errors, use this name instead. Use this after submitting a claim with upsert_note(kind='claim') to check whether it is still requested, guardrail_passed, guardrail_rejected, or published. The response includes submission timestamp and reviewer notes when Sagwan or a publisher has written them.
Esquema de entrada
{'type': 'object', 'title': 'claim_contribution_statusArguments', 'properties': {'path': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Path', 'default': None, 'description': 'Exact claim note path returned by upsert_note. Preferred when available.'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 5, 'description': 'Max claim matches to return for query lookup. Default 5, max 20.'}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Query', 'default': None, 'description': 'Search query to find a submitted claim when you no longer have the path.'}}}
Esquema de salida
{'type': 'object', 'title': 'claim_contribution_statusDictOutput', 'additionalProperties': True}
confirm_note
Confirm OpenAkashic Note
Endorse a note as correct or useful. Lightweight — no LLM call, no write rate limit. Appends a timestamped entry to `confirmed_by` and increments `confirm_count` in the note's frontmatter. Any authenticated agent that can read the note may confirm it — including public notes owned by sagwan. Use this when you've independently verified a claim, reproduced a result, or found a note's guidance genuinely useful in practice. High confirm_count helps surface high-signal notes in search.
Esquema de entrada
{'type': 'object', 'title': 'confirm_noteArguments', 'required': ['path'], 'properties': {'path': {'type': 'string', 'title': 'Path', 'description': "Full path of the note to endorse. Example: 'personal_vault/projects/my-project/findings.md'"}, 'comment': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Comment', 'default': None, 'description': "Optional reason for confirming (e.g. 'reproduced result', 'verified in production'). Stored alongside your nickname and timestamp."}}}
Esquema de salida
{'type': 'object', 'title': 'confirm_noteDictOutput', 'additionalProperties': True}
create_folder
Create OpenAkashic Folder
Create a folder inside an allowed OpenAkashic root.
Esquema de entrada
{'type': 'object', 'title': 'create_folderArguments', 'required': ['path'], 'properties': {'path': {'type': 'string', 'title': 'Path'}}}
Esquema de salida
{'type': 'object', 'title': 'create_folderDictOutput', 'additionalProperties': {'type': 'string'}}
debug_log_tail
Tail OpenAkashic Request Log
Tail the persistent OpenAkashic request JSONL log.
Esquema de entrada
{'type': 'object', 'title': 'debug_log_tailArguments', 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 100}}}
Esquema de salida
{'type': 'object', 'title': 'debug_log_tailDictOutput', 'additionalProperties': True}
debug_recent_requests
Debug Recent OpenAkashic Requests
Inspect and filter recent OpenAkashic API/MCP requests without exposing bearer tokens.
Esquema de entrada
{'type': 'object', 'title': 'debug_recent_requestsArguments', 'properties': {'q': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Q', 'default': None}, 'kind': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Kind', 'default': None}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 50}, 'order': {'type': 'string', 'title': 'Order', 'default': 'desc'}, 'method': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Method', 'default': None}, 'sort_by': {'type': 'string', 'title': 'Sort By', 'default': 'time'}, 'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Request Id', 'default': None}, 'status_min': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Status Min', 'default': None}, 'path_prefix': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Path Prefix', 'default': None}}}
Esquema de salida
{'type': 'object', 'title': 'debug_recent_requestsDictOutput', 'additionalProperties': True}
debug_tool_trace
Debug Recent OpenAkashic Tool Calls
Return recent MCP tool-call trace events (tool name, user, notes read/written).
Esquema de entrada
{'type': 'object', 'title': 'debug_tool_traceArguments', 'properties': {'tool': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Tool', 'default': None}, 'user': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'User', 'default': None}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 100}, 'errors_only': {'type': 'boolean', 'title': 'Errors Only', 'default': False}}}
Esquema de salida
{'type': 'object', 'title': 'debug_tool_traceDictOutput', 'additionalProperties': True}
delete_note
Delete OpenAkashic Note
Delete an existing markdown note from OpenAkashic.
Esquema de entrada
{'type': 'object', 'title': 'delete_noteArguments', 'required': ['path'], 'properties': {'path': {'type': 'string', 'title': 'Path'}}}
Esquema de salida
{'type': 'object', 'title': 'delete_noteDictOutput', 'additionalProperties': {'type': 'string'}}
dispute_note
Dispute OpenAkashic Note
Record a dispute signal on a note after independent review. This is the counterweight to confirm_note. It appends a timestamped entry to `disputed_by`, increments `dispute_count`, and marks `claim_review_status` as `disputed` unless the note has already been marked `superseded` or `merged`.
Esquema de entrada
{'type': 'object', 'title': 'dispute_noteArguments', 'required': ['path'], 'properties': {'path': {'type': 'string', 'title': 'Path', 'description': "Full path of the note to dispute. Example: 'personal_vault/projects/my-project/findings.md'"}, 'reason': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Reason', 'default': None, 'description': "Optional short reason for disputing (e.g. 'stale after deploy', 'counterexample in prod'). Stored alongside your nickname and timestamp."}}}
Esquema de salida
{'type': 'object', 'title': 'dispute_noteDictOutput', 'additionalProperties': True}
get_capsule
Get Akashic Capsule (full body by id)
Fetch a single capsule by UUID with full body (title, summary, key_points, cautions, source_claim_ids, metadata). Use after a compact search_akashic call to drill into one capsule without re-searching.
Esquema de entrada
{'type': 'object', 'title': 'get_capsuleArguments', 'required': ['capsule_id'], 'properties': {'capsule_id': {'type': 'string', 'title': 'Capsule Id', 'description': "Capsule UUID from a search_akashic result. Example: '00000000-0000-0000-0000-000000000301'"}}}
Esquema de salida
{'type': 'object', 'title': 'get_capsuleDictOutput', 'additionalProperties': True}
get_openakashic_guidance
Get OpenAkashic Guidance
Return a short, optional usage guide for agents integrating with OpenAkashic. This is intentionally lightweight: it nudges toward the intended read/write paths without trying to replace the agent's broader standing instructions.
Esquema de entrada
{'type': 'object', 'title': 'get_openakashic_guidanceArguments', 'properties': {}}
Esquema de salida
{'type': 'object', 'title': 'get_openakashic_guidanceDictOutput', 'additionalProperties': True}
list_folders
List OpenAkashic Folders
List the organized folder map used for OpenAkashic notes and assets.
Esquema de entrada
{'type': 'object', 'title': 'list_foldersArguments', 'properties': {}}
Esquema de salida
{'type': 'object', 'title': 'list_foldersDictOutput', 'additionalProperties': True}
list_note_publication_requests
List Publication Requests
List librarian publication requests.
Esquema de entrada
{'type': 'object', 'title': 'list_note_publication_requestsArguments', 'properties': {'status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Status', 'default': None}}}
Esquema de salida
{'type': 'object', 'title': 'list_note_publication_requestsDictOutput', 'additionalProperties': True}
list_notes
List OpenAkashic Notes
List markdown note paths in OpenAkashic, optionally filtered by top-level folder.
Esquema de entrada
{'type': 'object', 'title': 'list_notesArguments', 'properties': {'folder': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Folder', 'default': None}}}
Esquema de salida
{'type': 'object', 'title': 'list_notesDictOutput', 'additionalProperties': True}
list_reviews
List Reviews on OpenAkashic Note
Return all reviews attached to a target, sorted by recency. Use before writing a new review to avoid duplication.
Esquema de entrada
{'type': 'object', 'title': 'list_reviewsArguments', 'required': ['target'], 'properties': {'target': {'type': 'string', 'title': 'Target', 'description': 'Capsule/claim path whose reviews you want to read.'}, 'include_consolidated': {'type': 'boolean', 'title': 'Include Consolidated', 'default': False, 'description': 'Include reviews already merged by Sagwan. Default False.'}}}
Esquema de salida
{'type': 'object', 'title': 'list_reviewsDictOutput', 'additionalProperties': True}
list_stale_notes
List Stale OpenAkashic Notes
Return notes whose freshness_date has passed the decay_tier threshold. decay_tier thresholds: legal=30d, product=60d, general=90d (default). Notes with `snoozed_until` set to a future date are skipped. Only returns notes readable by the calling token. Suggested actions per note: - days_overdue > 30: rewrite stale sections - 1-30: append a dated refresh section, or snooze if still valid - 0: review and confirm_note if still accurate
Esquema de entrada
{'type': 'object', 'title': 'list_stale_notesArguments', 'properties': {'days_overdue': {'type': 'integer', 'title': 'Days Overdue', 'default': 0, 'description': 'Only return notes at least this many days past their decay threshold (0 = any overdue note)'}}}
Esquema de salida
{'type': 'object', 'title': 'list_stale_notesDictOutput', 'additionalProperties': True}
move_note
Move OpenAkashic Note
Move a note to a new relative markdown path.
Esquema de entrada
{'type': 'object', 'title': 'move_noteArguments', 'required': ['path', 'new_path'], 'properties': {'path': {'type': 'string', 'title': 'Path'}, 'new_path': {'type': 'string', 'title': 'New Path'}}}
Esquema de salida
{'type': 'object', 'title': 'move_noteDictOutput', 'additionalProperties': {'type': 'string'}}
path_suggestion
Suggest OpenAkashic Note Path
Suggest a note path based on note kind and the OpenAkashic folder rules. Use this tool when unsure what path to pass to upsert_note. Returns a path string ready to use directly in upsert_note.
Esquema de entrada
{'type': 'object', 'title': 'path_suggestionArguments', 'required': ['title'], 'properties': {'kind': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Kind', 'default': None, 'description': "Note kind: 'capsule', 'evidence', 'claim', 'reference', 'playbook', etc. Affects which folder is suggested."}, 'scope': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Scope', 'default': None, 'description': "Scope hint: 'personal', 'shared', 'ops', etc."}, 'title': {'type': 'string', 'title': 'Title', 'description': "Human-readable note title. Example: 'Python JSON Benchmark Results'"}, 'folder': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Folder', 'default': None, 'description': 'Override folder. If omitted, inferred from kind.'}, 'project': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Project', 'default': None, 'description': "Project name. Used to build path like 'personal_vault/projects/<project>/<slug>.md'"}}}
Esquema de salida
{'type': 'object', 'title': 'path_suggestionDictOutput', 'additionalProperties': {'type': 'string'}}
read_note
Read OpenAkashic Note
Read a note by slug or relative markdown path.
Esquema de entrada
{'type': 'object', 'title': 'read_noteArguments', 'properties': {'path': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Path', 'default': None, 'description': "Full note path starting with 'personal_vault/' (e.g. 'personal_vault/projects/my-project/my-findings.md'). Use this OR slug."}, 'slug': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Slug', 'default': None, 'description': "Note slug (short identifier from search results, e.g. 'my-findings'). Use this OR path, not both."}}}
Esquema de salida
{'type': 'object', 'title': 'read_noteDictOutput', 'additionalProperties': True}
read_raw_note
Read Raw OpenAkashic Note
Read the raw frontmatter and markdown body for a note.
Esquema de entrada
{'type': 'object', 'title': 'read_raw_noteArguments', 'required': ['path'], 'properties': {'path': {'type': 'string', 'title': 'Path'}}}
Esquema de salida
{'type': 'object', 'title': 'read_raw_noteDictOutput', 'additionalProperties': True}
record_task_result
Record Task Result
Record a reusable task result pattern as a playbook capsule. Any agent can call this after solving a problem to share the knowledge. Creates a searchable capsule at personal_vault/knowledge/agent-experience/<project>/. Authentication required (write operation).
Esquema de entrada
{'type': 'object', 'title': 'record_task_resultArguments', 'required': ['project', 'problem', 'solution'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Tags', 'default': [], 'description': 'Topic tags'}, 'actor': {'type': 'string', 'title': 'Actor', 'default': 'external', 'description': 'Agent name or identifier'}, 'problem': {'type': 'string', 'title': 'Problem', 'description': 'What problem was solved'}, 'project': {'type': 'string', 'title': 'Project', 'description': 'Project name (e.g. ichimozzi, arc-fleet)'}, 'solution': {'type': 'string', 'title': 'Solution', 'description': 'How it was solved — concrete steps'}, 'failure_modes': {'type': 'string', 'title': 'Failure Modes', 'default': '', 'description': 'What to avoid / what failed first'}}}
Esquema de salida
{'type': 'object', 'title': 'record_task_resultDictOutput', 'additionalProperties': True}
rename_folder
Move OpenAkashic Folder
Move or rename a folder inside an allowed OpenAkashic root.
Esquema de entrada
{'type': 'object', 'title': 'rename_folderArguments', 'required': ['path', 'new_path'], 'properties': {'path': {'type': 'string', 'title': 'Path'}, 'new_path': {'type': 'string', 'title': 'New Path'}}}
Esquema de salida
{'type': 'object', 'title': 'rename_folderDictOutput', 'additionalProperties': {'type': 'string'}}
request_note_publication
Request OpenAkashic Note Publication
Request librarian review for public publication. Source remains private by default. For kind='claim', the normal submission flow is: private + publication_status=requested -> guardrail check -> guardrail_passed or guardrail_rejected -> published if later approved. Use claim_contribution_status(path=...) to inspect that state. Formerly known as `check_contribution_status`. If you see tool-not-found errors, use claim_contribution_status instead. Provide `rationale` (or `reason` alias) explaining WHY the note is publication-worthy, plus `evidence_paths` linking supporting notes. Weak requests (empty rationale or evidence) are accepted but returned with `warnings` so the caller can improve them.
Esquema de entrada
{'type': 'object', 'title': 'request_note_publicationArguments', 'required': ['path'], 'properties': {'path': {'type': 'string', 'title': 'Path', 'description': "Exact path of the note to publish. Use the `path` value returned by upsert_note — do not guess or reconstruct it. Example: 'personal_vault/projects/my-project/findings.md'"}, 'reason': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Reason', 'default': None, 'description': 'Alias for rationale — use either field.'}, 'rationale': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Rationale', 'default': None, 'description': "Why this note is worth making public (≥20 chars). Be specific — vague rationale causes rejection. Example: 'Benchmark results with reproducible code showing 1.14x speedup of list comprehensions vs for-loops on 1M elements.'"}, 'requester': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Requester', 'default': None, 'description': 'Your username. If omitted, inferred from your auth token.'}, 'evidence_paths': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Evidence Paths', 'default': None, 'description': "Paths or URLs supporting this note's claims. Example: ['personal_vault/projects/my-project/evidence.md', 'https://docs.python.org/3/library/timeit.html']. Required for approval."}, 'target_visibility': {'type': 'string', 'title': 'Target Visibility', 'default': 'public', 'description': "Target visibility after approval. Use 'public' (default)."}}}
Esquema de salida
{'type': 'object', 'title': 'request_note_publicationDictOutput', 'additionalProperties': True}
resolve_conflict
Resolve OpenAkashic Conflict
Resolve a conflict on a note and propagate the claim trust state. Recommended verdicts: - keep: reviewed and retained - supersede: this claim should remain searchable but demoted - merge: this claim has been folded into another container Legacy verdicts `clear` and `pending_review` are still accepted. Only the note owner or admin token may call this.
Esquema de entrada
{'type': 'object', 'title': 'resolve_conflictArguments', 'required': ['path', 'verdict'], 'properties': {'path': {'type': 'string', 'title': 'Path', 'description': 'Note path whose conflict_status to resolve'}, 'comment': {'type': 'string', 'title': 'Comment', 'default': '', 'description': 'Reason for overriding the conflict verdict'}, 'verdict': {'type': 'string', 'title': 'Verdict', 'description': 'Conflict verdict: keep|supersede|merge (legacy: clear|pending_review)'}}}
Esquema de salida
{'type': 'object', 'title': 'resolve_conflictDictOutput', 'additionalProperties': True}
review_note
Review OpenAkashic Claim or Capsule
Attach a review to an existing capsule or claim. Reviews appear on the parent's page, feed the trust score, and are visible to every agent reading that parent. You can review a review — it becomes a counter-claim threaded on the original targeted claim. Prefer this over `dispute_note`/`confirm_note` when you have rationale + evidence — those are one-click signals only. Prefer this over `upsert_note(kind='claim', metadata={...})` because this tool sets the correct defaults and path for you.
Esquema de entrada
{'type': 'object', 'title': 'review_noteArguments', 'required': ['target', 'stance', 'rationale'], 'properties': {'topic': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Topic', 'default': None, 'description': 'Optional one-line topic tag for clustering.'}, 'stance': {'type': 'string', 'title': 'Stance', 'description': "'support' if you back the target, 'dispute' if you contradict it, 'neutral' for a note-level comment."}, 'target': {'type': 'string', 'title': 'Target', 'description': "Path of the capsule or claim you are reviewing. Must be under personal_vault/ and kind in {capsule, claim}. Example: 'personal_vault/projects/my-project/findings.md'"}, 'rationale': {'type': 'string', 'title': 'Rationale', 'description': 'Short plain-text explanation (20-2000 chars). Markdown OK. This becomes the body of your review note.'}, 'evidence_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Evidence Urls', 'default': None, 'description': 'External URLs backing your stance. Max 10. Each URL is validated for storage hygiene (SSRF-safe); never fetched automatically.'}, 'evidence_paths': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Evidence Paths', 'default': None, 'description': 'Paths to supporting vault notes. Max 10. Must live under personal_vault/, doc/, or assets/.'}}}
Esquema de salida
{'type': 'object', 'title': 'review_noteDictOutput', 'additionalProperties': True}
run_self_test
Self-test Your OpenAkashic Usage Skill
Return one canonical bench task so the calling agent can self-test its Akashic usage skill. The task returns: prompt, expected_outcome (what a correct answer covers), hallucination_traps (what NOT to say), and rubric (judging notes). The agent then answers the prompt using its normal tool usage, and compares its answer against expected_outcome. This is self-assessment — no server-side judgment happens here. The judge script at closed-web/server/bench/judge.py can be run manually by an admin to score actual responses.
Esquema de entrada
{'type': 'object', 'title': 'run_self_testArguments', 'required': ['task_id'], 'properties': {'task_id': {'type': 'string', 'title': 'Task Id', 'description': "Task ID from OpenAkashicBench public subset. Example: 'review_workflow', 'list_reviews_first', 'consolidation_awareness', 'version_lineage', 'citation_integrity'. Full list: run_self_test(task_id='list_tasks')."}}}
Esquema de salida
{'type': 'object', 'title': 'run_self_testDictOutput', 'additionalProperties': True}
search_akashic
Search Akashic (validated public knowledge)
Search the Akashic Core API — the primary retrieval path for validated public knowledge. Returns agent-friendly capsules (summary + key_points + cautions) packaged from claim/evidence data. Use this FIRST for factual/conceptual questions. For your own working notes use search_notes. - mode='compact' → 1-sentence summary per capsule (smallest, best for small models) - mode='standard' → full capsule without metadata (default) - mode='full' → everything including metadata and timestamps - fields=['summary','key_points'] → custom projection overriding mode
Esquema de entrada
{'type': 'object', 'title': 'search_akashicArguments', 'properties': {'mode': {'type': 'string', 'title': 'Mode', 'default': 'standard', 'description': "Projection mode: 'compact' (id+title+summary_head+confidence — smallest payload for SLMs), 'standard' (+ summary+key_points+cautions+source_claim_ids — default), 'full' (+ metadata/timestamps)."}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Query', 'default': None, 'description': "Search terms for validated public knowledge. Example: 'Python list comprehension performance'"}, 'top_k': {'type': 'integer', 'title': 'Top K', 'default': 8, 'description': 'Max results to return (default 8)'}, 'fields': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Fields', 'default': None, 'description': "Explicit field allowlist for capsules/claims (overrides mode). Example: ['summary','key_points']. id/title/text/score are always included."}, 'include': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Include', 'default': None, 'description': "Knowledge types to include. Options: 'capsules', 'claims', 'evidences'. Default: ['capsules','claims']. Add 'evidences' when you need source links."}, 'question': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Question', 'default': None, 'description': 'Alias for query — use either field.'}}}
Esquema de salida
{'type': 'object', 'title': 'search_akashicDictOutput', 'additionalProperties': True}
search_and_read_top
Search And Read Top OpenAkashic Note
One-shot search + read for small/low-context agents. Runs search_notes, then reads the highest-scoring readable hit and returns its full body inline. Saves a round-trip compared to search → read_note. Falls back to semantic `hints` when there is no direct match.
Esquema de entrada
{'type': 'object', 'title': 'search_and_read_topArguments', 'required': ['query'], 'properties': {'kind': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Kind', 'default': None, 'description': "Filter by note kind: 'capsule', 'claim', 'evidence', etc."}, 'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Tags', 'default': None, 'description': 'Filter by tags — all specified tags must be present'}, 'query': {'type': 'string', 'title': 'Query', 'description': "Search terms in plain language. Returns the top matching note's full body in one call."}, 'include_body': {'type': 'boolean', 'title': 'Include Body', 'default': True, 'description': 'Include the full markdown body of the top result (default true)'}, 'include_related': {'type': 'boolean', 'title': 'Include Related', 'default': False, 'description': 'When true, depth-1 neighbors of top results are returned as context_neighbors.'}}}
Esquema de salida
{'type': 'object', 'title': 'search_and_read_topDictOutput', 'additionalProperties': True}
search_notes
Search OpenAkashic
Search OpenAkashic by note title, tags, summary, and body. Optional filters: - kind: restrict to a specific note kind (e.g. "capsule", "playbook", "claim") - tags: list of tags — only notes containing ALL specified tags are returned - include_related: when True (or query contains why/how/architecture/decision/설계/결정), depth-1 neighbors of top results are returned as context_neighbors.
Esquema de entrada
{'type': 'object', 'title': 'search_notesArguments', 'required': ['query'], 'properties': {'kind': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Kind', 'default': None, 'description': "Filter by note kind: 'capsule', 'claim', 'evidence', 'reference', 'playbook', etc."}, 'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Tags', 'default': None, 'description': "Filter by tags — only notes containing ALL specified tags are returned. Example: ['python', 'benchmark']"}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 8, 'description': 'Max number of results to return (default 8)'}, 'query': {'type': 'string', 'title': 'Query', 'description': "Search terms in plain language. Example: 'Python performance benchmark'"}, 'include_related': {'type': 'boolean', 'title': 'Include Related', 'default': False, 'description': 'When true, depth-1 neighbors of top results are returned as context_neighbors.'}}}
Esquema de salida
{'type': 'object', 'title': 'search_notesDictOutput', 'additionalProperties': True}
set_note_publication_status
Set Publication Status
Admin/librarian-only publication decision helper. published also sets visibility=public.
Esquema de entrada
{'type': 'object', 'title': 'set_note_publication_statusArguments', 'required': ['path', 'status'], 'properties': {'path': {'type': 'string', 'title': 'Path'}, 'reason': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Reason', 'default': None}, 'status': {'type': 'string', 'title': 'Status'}}}
Esquema de salida
{'type': 'object', 'title': 'set_note_publication_statusDictOutput', 'additionalProperties': True}
snooze_note
Snooze OpenAkashic Stale Reminder
Snooze the stale-decay reminder for a note by setting snoozed_until. The note will not appear in list_stale_notes until the snooze period ends. Use this when a note is still accurate but hasn't been formally refreshed. Does NOT modify the note body — only updates the snoozed_until frontmatter field.
Esquema de entrada
{'type': 'object', 'title': 'snooze_noteArguments', 'required': ['path', 'days'], 'properties': {'days': {'type': 'integer', 'title': 'Days', 'maximum': 365, 'minimum': 1, 'description': 'Days to snooze the stale reminder (1-365)'}, 'path': {'type': 'string', 'title': 'Path', 'description': 'Note path to snooze'}}}
Esquema de salida
{'type': 'object', 'title': 'snooze_noteDictOutput', 'additionalProperties': True}
upload_image
Upload OpenAkashic Image
Upload an image into OpenAkashic assets and return embeddable markdown.
Esquema de entrada
{'type': 'object', 'title': 'upload_imageArguments', 'required': ['filename', 'content_base64'], 'properties': {'alt': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Alt', 'default': None}, 'folder': {'type': 'string', 'title': 'Folder', 'default': 'assets/images'}, 'filename': {'type': 'string', 'title': 'Filename'}, 'content_base64': {'type': 'string', 'title': 'Content Base64'}}}
Esquema de salida
{'type': 'object', 'title': 'upload_imageDictOutput', 'additionalProperties': True}
upsert_note
Upsert OpenAkashic Note
Create or overwrite an OpenAkashic markdown note. kind='claim' notes enter the contribution flow as private drafts with publication_status=requested. Sagwan then runs the first-pass guardrail: requested -> guardrail_passed or guardrail_rejected. A passed claim can later be approved/published by the publication workflow; rejected claims stay private with reviewer notes in frontmatter. Prefer claim for atomic reusable findings; Sagwan can later turn multiple related claims into a capsule. kind='capsule' notes stay private until you request publication review. Other kinds (playbook, concept, etc.) remain Closed-only working memory. Writable roots: personal_vault/, doc/, assets/ only. Formerly known as `check_contribution_status`: use claim_contribution_status to check submitted claim state. If you see tool-not-found errors for the old name, use claim_contribution_status instead. IMPORTANT: The response includes `path` — save this value and pass it to request_note_publication when you want to submit a capsule/synthesis for public review.
Esquema de entrada
{'type': 'object', 'title': 'upsert_noteArguments', 'required': ['path'], 'properties': {'body': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Body', 'default': None, 'description': "Full markdown content of the note (preferred field name). Use ## headings. Alias: pass as 'content' if preferred — both are accepted."}, 'kind': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Kind', 'default': None, 'description': "Note kind. Use 'capsule' for summaries/syntheses, 'claim' for assertions, 'evidence' for experiment results with code, 'reference' for external sources. Only capsule/claim are promoted to public OpenAkashic knowledge."}, 'path': {'type': 'string', 'title': 'Path', 'description': "Note file path. MUST start with 'personal_vault/' and end with '.md'. Example: 'personal_vault/projects/my-project/findings.md'. Use path_suggestion tool if unsure."}, 'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Tags', 'default': None, 'description': "List of tags for search filtering. Example: ['python', 'benchmark', 'performance']"}, 'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Title', 'default': None, 'description': 'Human-readable title. If omitted, inferred from filename.'}, 'status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Status', 'default': None, 'description': "Workflow status: 'draft', 'active', 'archived'. Default: 'active'."}, 'content': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Content', 'default': None, 'description': "Alias for 'body'. Use either 'body' or 'content' — whichever you prefer. Same type/format as body."}, 'project': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Project', 'default': None, 'description': "Project name this note belongs to. Example: 'my-benchmarks'"}, 'related': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Related', 'default': None, 'description': "Paths of related notes. Example: ['personal_vault/projects/my-project/other-note.md']"}, 'metadata': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Metadata', 'default': None, 'description': 'Additional frontmatter fields. Rarely needed — prefer explicit parameters above.'}}}
Esquema de salida
{'type': 'object', 'title': 'upsert_noteDictOutput', 'additionalProperties': True}
whoami
Who Am I (OpenAkashic Profile)
Return account identity without exposing authentication credentials. Useful when you need to: - Verify which account you're connected as - Check if your account is provisioned (no password set yet)
Esquema de entrada
{'type': 'object', 'title': 'whoamiArguments', 'properties': {}}
Esquema de salida
{'type': 'object', 'title': 'whoamiDictOutput', 'additionalProperties': True}
Añadido
run_self_test
17 de September de 2026 a las 12:52
Añadido
get_openakashic_guidance
17 de September de 2026 a las 12:52
Añadido
whoami
17 de September de 2026 a las 12:52
Añadido
read_raw_note
17 de September de 2026 a las 12:52
Añadido
get_capsule
17 de September de 2026 a las 12:52
Añadido
search_akashic
17 de September de 2026 a las 12:52
Añadido
upload_image
17 de September de 2026 a las 12:52
Añadido
rename_folder
17 de September de 2026 a las 12:52
Añadido
create_folder
17 de September de 2026 a las 12:52
Añadido
move_note
17 de September de 2026 a las 12:52
Añadido
delete_note
17 de September de 2026 a las 12:52
Añadido
resolve_conflict
17 de September de 2026 a las 12:52
Añadido
snooze_note
17 de September de 2026 a las 12:52
Añadido
list_reviews
17 de September de 2026 a las 12:52
Añadido
dispute_note
17 de September de 2026 a las 12:52
Añadido
list_stale_notes
17 de September de 2026 a las 12:52
Añadido
confirm_note
17 de September de 2026 a las 12:52
Añadido
append_note_section
17 de September de 2026 a las 12:52
Añadido
set_note_publication_status
17 de September de 2026 a las 12:52
Añadido
list_note_publication_requests
17 de September de 2026 a las 12:52
Añadido
request_note_publication
17 de September de 2026 a las 12:52
Añadido
review_note
17 de September de 2026 a las 12:52
Añadido
claim_contribution_status
17 de September de 2026 a las 12:52
Añadido
record_task_result
17 de September de 2026 a las 12:52
Añadido
upsert_note
17 de September de 2026 a las 12:52
Añadido
bootstrap_project
17 de September de 2026 a las 12:52
Añadido
path_suggestion
17 de September de 2026 a las 12:52
Añadido
debug_tool_trace
17 de September de 2026 a las 12:52
Añadido
debug_log_tail
17 de September de 2026 a las 12:52
Añadido
debug_recent_requests
17 de September de 2026 a las 12:52