Shared brain for AI agents — ingest knowledge, build connections, deliver context to any LLM. Multi-adapter framework supporting LangChain, LangGraph, CrewAI, AutoGen, OpenAI, Pydantic AI, LlamaIndex, and Swarm.
ContextSynapse provides 12 tools with complete input schemas and descriptions. Naming follows verb_noun convention (ingest_context, search_context, contribute_insight, etc.). Descriptions are present and substantive (100-200 chars typical), explaining WHAT and WHEN. However, output schemas are not documented in the provided source, critical for LLM planning. Parameter descriptions are adequate but lack format constraints (e.g., no enum for insight_type values, no regex for JSON string parameters). Error handling and recovery guidance are absent. Tools like extract_units and extract_assertions accept JSON-serialized parameters as strings, which is fragile and error-prone, LLMs struggle to construct valid JSON. No tool declares permissions, audit trails, or idempotency guarantees. Composition is reasonable (tools chain logically), but several tools require multi-step JSON serialization that invites failures.
Build a SourceEnvelope contract for document processing.
Build a processing plan from envelope and profile.
Write an agent's output (summary, analysis, decision) back into the shared context. Other agents can see and build on this.
Extract table assertions from evidence units.
Extract evidence units from text.
Export the current shared context for use in LLM prompts. Use this to get all accumulated context before making a decision.
Add text to the shared context session. Use this to store information, observations, document excerpts, or any data that should be available to other agents in the workflow.
Output schemas not documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., what does search_context return? Is it a list of objects with id/text/score fields?). This violates pattern:tool and pattern:response-shaper.
JSON-serialized parameters (envelope_json, profile_json, plan_json, units_json, assertions_json) force LLMs to construct valid JSON strings. This is error-prone and violates pattern:constrained-input. LLMs frequently produce malformed JSON, causing silent failures.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 66 | 2026-07-28+ | v2 |
Match an input profile to a processing recipe.
Profile input document to determine processing characteristics.
Semantic search across the shared context session. Use this to find relevant information that has been ingested by any agent.
Validate evidence units and assertions against evidence gate constraints.
Validate a processing plan against capability constraints.
No error handling or recovery guidance. Tools lack descriptions of failure modes, retryability, or what the LLM should do if a call fails. Violates pattern:recovery-guide and pattern:error-classification.
No enum constraints on categorical parameters. insight_type accepts 'synthesis', 'decision', 'generated' but is defined as free-form string. format parameter in get_context accepts 'prompt', 'messages', 'markdown' but lacks enum. Violates pattern:constrained-input.
No permission declarations, audit trails, or idempotency guarantees. Tools like ingest_context and contribute_insight modify state but lack security metadata. Violates pattern:scope-declaration and pattern:audit-trail.