A cloud-based platform for storing and managing AI context artifacts. Store prompts, documentation, and markdown content that can be accessed by AI assistants through multiple interfaces.
Allcontext provides 7 tools with clear verb-based naming and reasonable parameter schemas. All tools have descriptions and input schemas are visible in code. However, descriptions are brief (mostly 8-15 words), parameter descriptions lack detail on constraints and formats, output schemas are not formally documented, and error handling is minimal. The codebase shows authentication/authorization checks but lacks actionable error messages and recovery guidance. Tool composition is sound (each tool has a single responsibility), but error responses are generic ('Failed to create artifact') rather than instructive. No tool annotations (readOnlyHint, destructiveHint) are present despite risk classification visible in evaluation data.
Create a new artifact in your context platform.
Delete an artifact permanently.
Retrieve a specific artifact by its ID.
List your artifacts.
Search your artifacts by text in title and content.
Replace specific strings in artifact content.
Update an existing artifact.
Descriptions are too brief (8-15 words). Rubric baseline is 194 chars avg; these range 30-60 chars. Missing context on WHEN to use each tool, prerequisites, and what to expect.
Parameter descriptions lack format specifications and constraints. E.g. 'content' states max 100k chars in description, but no minimum. 'limit' lacks explanation of what happens if > 50 (is it clamped? rejected?). 'artifact_id' describes UUID but provides no hint for discovery if ID unknown.
No tool annotations present (readOnlyHint, destructiveHint, idempotentHint). create_artifact, update_artifact, str_replace_artifact, and delete_artifact have clear risk levels (WRITE, DESTRUCTIVE) but no annotations declared in code to inform MCP clients.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 59 | 2026-07-28+ | v2 |
| 2026-03-09 | C | 65 | - | v1 |
Error responses are generic and non-actionable. E.g. 'Failed to create artifact' or 'Failed to list artifacts' give the LLM no guidance on whether to retry, ask the user, or invoke a discovery tool. No error categorization (retryable vs fatal).
Output schemas are not formally documented. Code returns dictionaries (e.g. 'id', 'title', 'content', 'metadata', 'created_at') but no JSON Schema or interface specification is visible. LLMs cannot plan downstream tool calls or extract expected fields confidently.
'str_replace_artifact' has an ambiguous name. The description says 'Replace specific strings in artifact content' but the verb 'str_replace' is not a standard action verb (get_, create_, update_, delete_, search_, list_). Should be 'update_artifact_content' or 'replace_in_artifact' to align with pattern:tool naming conventions.
No dry-run or confirmation mechanism for destructive operations. delete_artifact can permanently remove artifacts with a single call. No pattern:confirmation-request support or idempotency safeguard visible.
Parameter 'artifact_id' is opaque UUID. Rubric pattern:tool recommends accepting human-friendly identifiers (title, slug) alongside IDs. Users say 'get my artifact titled X', not 'get artifact with ID uuid-xxxx'. Current design forces a lookup call.