Status: Accepted
Date: October 17, 2025
Deciders: Chief Architect, Lead Developer
GitHub Issue: #198 (CORE-MCP-MIGRATION)
Context
Note: was initially numbered ADR-037 but not added to the ADRs directory, so its number was reused. It was added to the collection on Tue Jan 13 2026 and given #052.
During Phase -1 discovery of Sprint A3 MCP migration (#198), we discovered two competing MCP implementation patterns across our integrations:
- Direct tool definitions in integration routers
- Tools registered with orchestration layer
- Simpler architecture, no separate servers
- 90-95% complete implementations
Server-Based MCP (Notion)
- Separate MCP servers with protocol handlers
- More complex architecture with additional abstraction layers
- Requires server lifecycle management
- 60% complete implementation
Discovery Evidence:
Service | Pattern | Completion | Complexity
-----------|--------------|------------|------------
Calendar | Tool-based | 95% | Low
GitHub | Tool-based | 90% | Low
Notion | Server-based | 60% | High
Slack | Basic | 40% | TBD
Key Findings:
- Tool-based implementations are simpler and more complete
- Server-based implementation adds architectural complexity without clear benefit
- Calendar (tool-based) is our most mature implementation
- No technical advantage identified for server-based approach in our use case
Decision
We will standardize on tool-based MCP implementation across all integrations.
This means:
- Tool-based MCP is our canonical pattern
- Server-based implementations must migrate to tool-based
- All future integrations must use tool-based approach
- Calendar integration serves as reference implementation
Rationale
Technical Simplicity
- Tool-based requires fewer architectural layers
- Direct tool registration with orchestration engine
- Simpler debugging and maintenance
- Proven pattern in our two most complete integrations
Implementation Evidence
- Calendar: 95% complete using tool-based (only config loading needed)
- GitHub: 90% complete using tool-based (only wiring needed)
- Notion: 60% complete using server-based (architecture incomplete)
This completion pattern strongly suggests tool-based is the natural fit for our architecture.
Consistency
- Single pattern easier to understand and maintain
- New developers learn one approach
- Testing patterns unified across integrations
- Documentation simpler
- Tool-based has less overhead (no server abstraction)
- Direct orchestration access to tools
- Simpler call paths
Maintainability
- Fewer moving parts (no separate servers)
- No server lifecycle management needed
- Easier to debug (fewer layers)
Consequences
Positive
Immediate Benefits:
- Clear pattern for completing Calendar (95%→100%)
- Clear pattern for completing GitHub (90%→100%)
- Clear pattern for completing Slack (40%→100%)
- Single reference implementation (Calendar)
Long-term Benefits:
- Architectural consistency across all integrations
- Simplified onboarding for new developers
- Reduced maintenance burden
- Clear pattern for future integrations
- Easier testing and debugging
Negative
Migration Required:
- Notion must migrate from server-based to tool-based
- Migration effort: 3-4 hours estimated
- Risk of regression during migration
- Need migration guide for future reference
Sunk Cost:
- Server-based Notion implementation (60% complete) must be replaced
- Previous architectural decisions superseded
- Some code will be discarded
Mitigation Strategies
For Notion Migration:
- Use Calendar as reference implementation
- Extract existing tool definitions from server
- Create comprehensive tests before migration
- Maintain backward compatibility during transition
- Document migration pattern for future use
For Future Integrations:
- Calendar serves as canonical reference
- Clear documentation of tool-based pattern
- Template for new integrations
- Testing patterns established
Implementation Plan
Phase 0.5: ADR Creation (30 minutes)
- ✅ Document this architectural decision
- ✅ Update ADR index
- ✅ Communicate to team
- Calendar (95%→100%): Add configuration loading
- GitHub (90%→100%): Complete integration wiring
- Document Pattern: Create reference documentation
- Notion (60%→100%): Migrate from server to tools
- Create Migration Guide: Document conversion pattern
- Test Thoroughly: Ensure no functionality loss
Phase 3: Complete Remaining Integration (2-3 hours)
- Slack (40%→100%): Implement using tool-based pattern
- Final Testing: Validate all integrations
- Documentation: Update architecture docs
Total Effort: 8-10 hours (Sprint A3 achievable)
Supersedes
- Any previous decisions favoring server-based MCP
- Notion server-based implementation approach
References
Terminology Clarification
Tool-based MCP (this ADR) determines the protocol architecture - how we communicate with external services via MCP protocol.
Delegated MCP Pattern (ADR-038) is the spatial intelligence approach that builds on tool-based MCP - how we add 8-dimensional spatial context to MCP integrations.
Calendar uses both: it implements tool-based MCP (per this ADR) with the Delegated MCP spatial pattern (per ADR-038).
Future Impact
- All future MCP integrations must follow tool-based pattern
- Migration guide serves as template for any server→tool conversions
- Calendar becomes canonical reference implementation
Validation Criteria
This decision is validated when:
- ✅ All four integrations use tool-based pattern
- ✅ Calendar serves as documented reference implementation
- ✅ Notion successfully migrated with no functionality loss
- ✅ Migration guide created for future use
- ✅ All integrations tested with real operations
- ✅ Pattern documentation updated
- ✅ Team trained on tool-based approach
Notes
Discovery Process
This decision emerged from systematic Phase -1 investigation following Inchworm Protocol. The evidence was clear: tool-based implementations were more complete and simpler. This is a “following the evidence” decision, not a theoretical preference.
75% Pattern
The Notion server-based implementation at 60% completion is another instance of our recurring “75% pattern” - systems that are mostly built but incomplete. The tool-based pattern’s higher completion rate (90-95%) suggests it’s the natural architectural fit.
Time Lord Philosophy
This decision prioritizes quality and consistency over preserving incomplete work. The 3-4 hour migration cost for Notion is small compared to long-term maintenance benefits of a unified pattern.
Decision Status: ✅ ACCEPTED
Implementation Status: 🚧 In Progress (Sprint A3)
Review Date: After Sprint A3 completion
Document Created: October 17, 2025, 1:50 PM PT
Last Updated: January 13, 2026 (reference update: ADR-013 → ADR-038)
Author: Lead Developer (with Chief Architect guidance)