agent_preflight registers six tools for session startup and minimal registers four — enough for an agent that only needs to add and complete tasks. get_context_bundle earns its place too: one call replaces the four or five reads an agent otherwise makes to work out where it left off.
A Python FastMCP server with 38 tools spanning task management, knowledge capture, session tracking and multi-step goals. It ships on PyPI and runs against a hosted API, a local MongoDB, or both.
- Nine todo tools: create with project, priority and metadata; query with MongoDB-style filters and change detection; patch, delete, fetch, stage for review, filter by status, fuzzy text search and list by project
- Seven lesson tools: capture with language, topic and tags, then search by text or regex, list, update and delete
- Eight session tools: create, spawn a child from a parent linked to a todo, fork, trace genealogy, render the tree, and link a todo to a session
- Five quest tools holding a multi-step objective as Quest, Chains and Todos, with a progress report naming the next actions and the blockers
- get_context_bundle returns recent todos, lessons, session state and project stats in one call; find_relevant does vector similarity across todos and lessons; preflight_rag classifies past solutions and pitfalls before you start
- A cross-agent journal — write_agent_journal and read_agent_journal — so one agent leaves notes another reads
- bring_your_own injects a Python, JavaScript or shell function as a live tool at runtime
- Ten loadouts deciding how much of the surface registers, from minimal at 4 tools to full at 38
Pip install omnispindle, then run omnispindle-stdio. MCP_USER_EMAIL is required, since data is scoped per user at the database level. The first tool call opens a browser for Auth0 login and caches the token locally. OMNISPINDLE_MODE picks the backend — api, hybrid, local or auto — with MONGODB_URI needed for the local and hybrid paths, and OMNISPINDLE_TOOL_LOADOUT controls how many tools register.
One command plus a key — pip install omnispindle, then supply credentials
