contxt-box
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@contxt-boxsearch for 'neural-network' in my research folder"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
What Is It?
ConTXT BOX is a strict, local-first knowledge layer that sits beside any project or document folder. It gives coding agents such as Claude Code, Codex, Cursor, and other MCP clients a fast external memory: indexed filenames, folders, neighbors, summaries, cached document/image context, and durable chat preservation.
The design is intentionally narrow. Documents and images are the core path because they cover most real user context. Heavy extraction uses exactly one configured engine: MarkItDown or Docling. No multi-tool fallback chain is used in core extraction.
Related MCP server: Contextful
Features
Lazy indexing with
rel_path, filename, folder, mtime, size, type, neighbors, folder summaries, and cheap file summaries.On-demand extraction only through MarkItDown or Docling.
Permanent Markdown sidecars under
.contextbox/history/media/.MCP tools for coding agents.
Watchdog-based
watchcommand for continuous index updates.Preview-only smart reorganization.
Auto preservation into
.contextbox/CONTEXT.mdplus JSONL history.
Quick Start
uv sync
uv run contxtbox --help
uv run contxtbox init --root "S:\Papers"
uv run contxtbox config-show --root "S:\Papers"
uv run contxtbox index --root "S:\Papers"
uv run contxtbox health --root "S:\Papers"
uv run contxtbox search "computer vision" --root "S:\Papers"When commands are run from inside the target workspace, --root can be omitted.
Install the document/image engines:
uv sync --extra mediaExtract one file with the strict default engine:
uv run contxtbox extract-media "Computer Vision\paper.pdf" --root "S:\Papers"Use Docling explicitly:
uv run contxtbox extract-media "Computer Vision\paper.pdf" --root "S:\Papers" --engine doclingWatch a folder:
uv run contxtbox watch --root "S:\Papers"Run production readiness checks:
uv run contxtbox health --root "S:\Papers" --fail-on-errorShow the effective workspace config:
uv run contxtbox config-show --root "S:\Papers"Production and MCP setup guides:
How It Works
workspace/
`-- .contextbox/
|-- index.json
|-- config.toml
|-- CONTEXT.md
|-- preservation.jsonl
`-- history/
`-- media/
`-- sanitized__file__path.context.mdIndexing Rules
index, update_index, and watch always record:
rel_pathfilenamefolder_pathmtimesizefile_typeneighborsparent_folder_summarylast_indexedcontext_summary
The default summary is cheap and deterministic. It uses filename, folder name, and 5-7 nearby files. It does not open PDFs or images during indexing.
Configuration
init creates .contextbox/config.toml:
extraction_engine = "markitdown"
max_inline_bytes = 512000
large_file_bytes = 50000000
max_neighbors = 10
debounce_seconds = 2.0
auto_watch = true
ignored_dirs = [
".git",
".venv",
"node_modules",
]
priority_folders = [
"codebases/",
"research/",
"specs/",
"decisions/",
"assets/images/",
]Use "docling" when you want Docling as the strict extraction engine.
Extraction Rules
Heavy extraction only happens when:
extract-media pathis called,or an MCP client calls
get_file(path, depth="full").
The result is cached as Markdown in .contextbox/history/media/, and index.json receives:
extracted_atcontext_refextraction_methodextraction_statusextraction_warningsextraction_duration_seconds
Sidecars include the same audit header before extracted content. Status values are conservative:
success, partial, metadata-only, or cached.
MCP Tools
update_index()server_info()set_root(root, index=true)health()search(query, limit=10)get_file(path, depth="metadata" | "full")pull_context(task, limit=5)extract_media(path, force=false)reorganize(instruction)auto_preserve_context(summary, metadata=null)
Start the MCP server:
uv run contxtbox mcp --root "S:\Papers"Attribution
MarkItDown, MIT.
Docling, MIT.
watchdog, Apache-2.0.
sentence-transformers, Apache-2.0 library with model-specific licenses.
ChromaDB, Apache-2.0.
gstack, MIT, as workflow inspiration.
Ponytail, MIT, as minimal-agent behavior inspiration.
Roadmap
Stronger semantic search over sidecars.
Reorganization scoring based on folder summaries and neighbor cues.
MCP client recipes for Claude Code, Codex, Cursor, and others.
Safe apply/undo flow for reorganization.
Configurable ignore rules and extraction engine policy.
Contributing
New ideas, bug fixes, documentation improvements, integration recipes, and production hardening work are welcome. Open an issue for discussion, or submit a focused pull request with a clear description, tests where relevant, and the verification commands you ran.
Useful contribution areas:
MCP client setup recipes for more coding tools.
Better document/image extraction quality checks.
Faster indexing and retrieval for large workspaces.
Safer reorganization previews and apply/undo flows.
Clearer docs, examples, and real-world testing notes.
See CONTRIBUTING.md for the development checks.
Connect
Email: samarakoonf@gmail.com
LinkedIn: Oshadha Samarakoon
License
MIT. See LICENSE.
Release
PyPI publishing is configured for Trusted Publishing through GitHub Actions. See Production readiness.
Available Tools
10 toolsauto_preserve_contextC
Persist high-level chat context.
| Name | Required | Description | Default |
|---|---|---|---|
| summary | Yes | ||
| metadata | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It fails to specify whether the operation is destructive, idempotent, or requires any permissions. The single sentence provides no insights into side effects or behavior beyond the verb 'persist'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short (one sentence), which is concise but at the expense of needed detail. It could be expanded without losing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's two parameters and no annotations, the description is incomplete. It omits details about expected input formats, output (though output schema exists but not described here), and the tool's effect on the system state.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter-level context. It hints that 'summary' is the chat context but does not explain its format or the purpose of 'metadata'. The description fails to compensate for the schema's lack of parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Persist high-level chat context' clearly states the action (persist) and resource (high-level chat context), distinguishing it from sibling tools like 'pull_context' which retrieves. However, it lacks specificity on what exactly constitutes 'high-level chat context' and how it differs from other persistence operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'reorganize' or 'update_index'. There is no mention of prerequisites, appropriate scenarios, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_mediaC
Extract and permanently cache media context.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| force | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description only mentions 'permanently cache', hinting at side effects, but fails to disclose retrieval behavior, persistence details, or permissions needed. Much more transparency is expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
While short, the description lacks necessary detail. Conciseness is not achieved at the expense of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema and two parameters, the one-sentence description fails to cover return values, parameter meanings, or behavioral details, making it inadequate for reliable agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not explain the 'path' or 'force' parameters. With 0% schema description coverage, the description must compensate, but it adds no parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool extracts and caches media context, giving a general purpose but lacking specificity on what 'media context' entails and not differentiating from sibling tools like pull_context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like pull_context or get_file. The description does not mention prerequisites or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_fileC
Return secure file metadata for a workspace path.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| depth | No | metadata |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations available, so description must carry full burden. Mentions 'secure' but does not explain security implications, auth requirements, or error behavior. Lacks detail on what happens if path is invalid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy, front-loaded with the key action. However, it is slightly too terse to be fully effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite an output schema existing, the description does not cover parameter behavior, edge cases, or contextual hints. The tool has two parameters and a security note, yet the description is minimal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning to parameters. The 'depth' parameter is not explained at all, leaving the agent to guess its purpose and acceptable values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns secure file metadata for a workspace path. Specific verb 'return' and resource 'file metadata' with location 'workspace path' distinguish it from siblings like search or extract_media.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. No when-not or context provided, leaving the agent to infer from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
healthA
Run ConTXT BOX operational readiness checks.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states it checks operational readiness, but does not disclose if it is read-only, destructive, side effects, or output expectations. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with key verb and resource. No wasted words. Efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, description need not detail return values. For a zero-parameter tool, the description adequately conveys purpose. Could mention scope of checks, but not required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so baseline is 4. Description adds no parameter meaning but none needed. Schema coverage is vacuous 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool runs operational readiness checks, using specific verb 'Run' and resource 'ConTXT BOX operational readiness checks'. It distinguishes from sibling tools like 'server_info' or 'reorganize' which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Does not specify prerequisites, when to call, or when not to call. Lacks any usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pull_contextC
Return a compact context bundle for a task.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for disclosing behavior. It only states the action without mentioning side effects, rate limits, or whether the tool is read-only (likely but unstated).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, achieving brevity. However, it is overly terse and omits useful information about parameters and usage, making it less helpful despite its conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 0% schema description coverage and no parameter explanations, the description is incomplete. The presence of an output schema reduces the need to describe return values, but the tool still requires more contextual detail about inputs and behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Parameter schema coverage is 0%, and the description does not explain the 'task' or 'limit' parameters. The default value for limit is given in the schema, but the description adds no semantic meaning beyond the schema itself.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Return a compact context bundle for a task', which is a specific verb and resource, clearly indicating the tool's function. However, it lacks detail on what a 'context bundle' includes, making differentiation from siblings like search less precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like auto_preserve_context or search. The description does not mention prerequisites, when not to use, or suitable contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reorganizeC
Preview an intelligent reorganization plan.
| Name | Required | Description | Default |
|---|---|---|---|
| instruction | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavioral traits. It merely states 'preview', implying no side effects, but does not confirm read-only status or describe any outputs, side effects, or requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence and concise, but it is under-specified. While brevity is positive, the lack of substantive information reduces its effectiveness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one required parameter and an output schema (not shown), the description fails to explain what a reorganization plan is, what the instruction entails, or what the output looks like. This forces the agent to guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no description for 'instruction' (0% schema description coverage). The description does not clarify the format, allowed values, or purpose of the instruction parameter, leaving the agent with minimal guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Preview an intelligent reorganization plan' indicates a specific action (preview) on a resource (reorganization plan) but is vague about what 'intelligent reorganization' means and does not differentiate from sibling tools. It is not a tautology, but lacks specificity to earn a higher score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'auto_preserve_context' or 'update_index'. The description gives no context for appropriate usage or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchC
Search indexed workspace metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the action without detailing side effects, authentication needs, or whether it is read-only. As a search tool, it is likely non-destructive, but this is not confirmed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (one sentence), which is concise, but it lacks structure and depth. It front-loads the action but omits necessary context, making it insufficiently informative. It could benefit from additional sentences without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description need not explain return values, but it fails to clarify scope, sorting, or behavior of the search. Sibling tools suggest a broader context, but the description remains isolated and vague.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, and the description adds no information about parameters. It does not explain the purpose of 'query' or 'limit', nor any constraints or formatting hints. The semantic burden is entirely on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Search' and resource 'indexed workspace metadata', indicating a search operation. It distinguishes from siblings like 'get_file' or 'health', which are different in nature. However, it could be more specific about what kind of metadata is being searched.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, context, or explicit exclusions. Sibling tools are present but not referenced for comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
server_infoA
Return MCP server process info, including fixed active root.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read-only operation and specifies what is returned, though it could mention any side effects or limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence, perfectly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple info tool with no parameters, the description covers the functionality adequately, and the output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters, the baseline is 4, and the description adds no param info but is sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns MCP server process info and mentions including fixed active root, making the purpose specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like health or get_file.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_rootC
Switch the active ConTXT BOX root during this chat.
| Name | Required | Description | Default |
|---|---|---|---|
| root | Yes | ||
| index | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description does not disclose behavioral traits such as whether the switch is safe, reversible, or requires specific permissions. The term 'Switch' implies a change but lacks detail on consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is concise but under-specified. It states purpose but wastes opportunity to include critical parameter or usage details. Conciseness here detracts from completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema and only two parameters, the description is incomplete. It does not clarify what 'active root' means, expected input format, output semantics, or side effects. Significant gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage. The tool description does not explain the 'root' string parameter or the 'index' boolean parameter, leaving their meanings ambiguous. No value added beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Switch' and identifies the resource 'active ConTXT BOX root', clearly stating the tool's function. It is distinct from sibling tools like auto_preserve_context or get_file.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description lacks context on prerequisites, effects, or scenarios where switching root is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_indexB
Update the lazy workspace index.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavioral traits. 'Update' implies mutation, but details on effects, idempotency, safety, or side effects are entirely absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and front-loaded. However, it could be more informative without verbosity, so not a perfect 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 0-parameter tool with an output schema (not shown), the description is minimally adequate. It states the action but leaves ambiguity about what the 'lazy workspace index' is and when to invoke.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters (0 params), so schema coverage is 100%. Per guidelines, baseline is 4. The description adds no param-specific information, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update the lazy workspace index' clearly specifies the verb (update) and resource (lazy workspace index). It is distinct from sibling tools, though the term 'lazy' is ambiguous and no explicit differentiation is provided.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, nor are there any preconditions or context mentioned. Agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
10 tool updates
v0.1.3- First observed
auto_preserve_context - First observed
extract_media - First observed
get_file - First observed
health - First observed
pull_context - First observed
reorganize - First observed
search - First observed
server_info - First observed
set_root - First observed
update_index
TDQS
Most tools have distinct purposes (e.g., auto_preserve_context vs. extract_media, pull_context), but some overlap exists between context preservation tools, potentially causing confusion.
Naming is mixed: some tools follow verb_noun (get_file, set_root, update_index), while others are just verbs (health, reorganize) or use different styles (server_info). This inconsistency reduces predictability.
With 10 tools, the count is well within the ideal 3-15 range and appropriate for a context management server, covering essential operations without bloat.
The tool set covers core context operations like preservation, extraction, search, and reorganization. Missing explicit update/delete for context items, but overall it provides a coherent workflow for the domain.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.
shared AI-context layer for teams — persistent memory your agents search and update over MCP
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI coding agents to retrieve and manage code context with hybrid search, project memory, and observability via MCP tools.29MIT
- AlicenseNot gradedqualityCmaintenanceLocal context management, search engine, and memory for agentic AI via MCP, enabling efficient context retrieval and storage.691MIT
- FlicenseNot gradedqualityBmaintenanceA local-first MCP server and CLI that gives coding agents structured project memory, task contracts, context packs, backlog workflows, and verification evidence, storing data in reviewable Markdown/YAML with a fast SQLite index.1-
- AlicenseBqualityAmaintenanceEnables AI coding agents to maintain persistent project context, including rules, decisions, environment intelligence, and Git history, using a local-first MCP server with automatic project detection and token-efficient retrieval.13MIT
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/Oshadha345/contxt-box'
If you have feedback or need assistance with the MCP directory API, please join our Discord server