Architecture Decision Records - Katana MCP Server¶
This directory contains Architecture Decision Records (ADRs) specific to the
katana-mcp-server package.
What is an ADR?¶
An Architecture Decision Record (ADR) is a document that captures an important architectural decision made along with its context and consequences.
Format¶
We use the format proposed by Michael Nygard in his article Documenting Architecture Decisions:
- Title: A short noun phrase describing the decision
- Status: Proposed | Accepted | Deprecated | Superseded
- Context: What is the issue that we're seeing that is motivating this decision?
- Decision: What is the change that we're proposing and/or doing?
- Consequences: What becomes easier or more difficult to do because of this change?
ADR Lifecycle¶
- Proposed: The ADR is proposed and under discussion
- Accepted: The ADR has been accepted and is being implemented
- Deprecated: The ADR is no longer recommended but still in use
- Superseded: The ADR has been replaced by another ADR
Index¶
Accepted Architecture Decisions¶
- ADR-0010: Create Katana MCP Server for Claude Code Integration
- ADR-0016: Tool Interface Pattern
- ADR-0017: Automated Tool Documentation
- ADR-0018: SQLModel-backed Typed Cache for Transactional List Tools
- ADR-0019: MCP Tool Description and Batch-Field Conventions
- ADR-0021: Unified Direct-Apply Rail for Preview→Apply Cards — supersedes ADR-0015 (monorepo)
Proposed Architecture Decisions¶
Creating a New ADR¶
- Copy the template from the shared ADR directory:
-
Use the next number across all three ADR directories — the sequence is shared between
katana_public_api_client/docs/adr/(client package),docs/adr/(monorepo-level), and this directory (MCP-server-specific), not per-package. Check the highest existing number across all three. -
Decide which directory the ADR belongs in: client package decision →
katana_public_api_client/docs/adr/; monorepo / build / process →docs/adr/; MCP-server-specific architecture → here. -
Fill in the sections
-
Create a PR for discussion
-
After acceptance, update status to "Accepted"
Related Documentation¶
- Architecture Design - MCP architecture and patterns
- Development Guide - Development workflow
- Contributing Guide - Contribution guidelines
- Monorepo ADRs - Shared/monorepo-level ADRs