naftiko: 1.0.0-alpha2 info: label: Architecture Pattern API description: API providing access to a curated reference library of architecture patterns for distributed systems, microservices, cloud-native applications, and enterprise software. tags: - Architecture - Pattern - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: architecture-pattern baseUri: https://api.apievangelist.com/v1/architecture-patterns description: Architecture Pattern API HTTP API. resources: - name: patterns path: /patterns operations: - name: listpatterns method: GET description: List architecture patterns inputParameters: - name: domain in: query type: string description: Filter by pattern domain - name: tag in: query type: string - name: limit in: query type: integer - name: offset in: query type: integer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: patterns-patternid path: /patterns/{patternId} operations: - name: getpattern method: GET description: Get architecture pattern details inputParameters: - name: patternId in: path type: string required: true description: The unique pattern identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: patterns-patternid-variants path: /patterns/{patternId}/variants operations: - name: getpatternvariants method: GET description: Get variants of an architecture pattern inputParameters: - name: patternId in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: domains path: /domains operations: - name: listdomains method: GET description: List pattern domains outputRawFormat: json outputParameters: - name: result type: object value: $. - name: tradeoffs path: /tradeoffs operations: - name: listtradeoffs method: GET description: List pattern trade-offs inputParameters: - name: patternId in: query type: string description: Filter trade-offs by pattern outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: architecture-pattern-rest description: REST adapter for Architecture Pattern API. resources: - path: /patterns name: listpatterns operations: - method: GET name: listpatterns description: List architecture patterns call: architecture-pattern.listpatterns outputParameters: - type: object mapping: $. - path: /patterns/{patternId} name: getpattern operations: - method: GET name: getpattern description: Get architecture pattern details call: architecture-pattern.getpattern with: patternId: rest.patternId outputParameters: - type: object mapping: $. - path: /patterns/{patternId}/variants name: getpatternvariants operations: - method: GET name: getpatternvariants description: Get variants of an architecture pattern call: architecture-pattern.getpatternvariants with: patternId: rest.patternId outputParameters: - type: object mapping: $. - path: /domains name: listdomains operations: - method: GET name: listdomains description: List pattern domains call: architecture-pattern.listdomains outputParameters: - type: object mapping: $. - path: /tradeoffs name: listtradeoffs operations: - method: GET name: listtradeoffs description: List pattern trade-offs call: architecture-pattern.listtradeoffs outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: architecture-pattern-mcp transport: http description: MCP adapter for Architecture Pattern API for AI agent use. tools: - name: listpatterns description: List architecture patterns hints: readOnly: true destructive: false idempotent: true call: architecture-pattern.listpatterns with: domain: tools.domain tag: tools.tag limit: tools.limit offset: tools.offset inputParameters: - name: domain type: string description: Filter by pattern domain - name: tag type: string description: tag - name: limit type: integer description: limit - name: offset type: integer description: offset outputParameters: - type: object mapping: $. - name: getpattern description: Get architecture pattern details hints: readOnly: true destructive: false idempotent: true call: architecture-pattern.getpattern with: patternId: tools.patternId inputParameters: - name: patternId type: string description: The unique pattern identifier required: true outputParameters: - type: object mapping: $. - name: getpatternvariants description: Get variants of an architecture pattern hints: readOnly: true destructive: false idempotent: true call: architecture-pattern.getpatternvariants with: patternId: tools.patternId inputParameters: - name: patternId type: string description: patternId required: true outputParameters: - type: object mapping: $. - name: listdomains description: List pattern domains hints: readOnly: true destructive: false idempotent: true call: architecture-pattern.listdomains outputParameters: - type: object mapping: $. - name: listtradeoffs description: List pattern trade-offs hints: readOnly: true destructive: false idempotent: true call: architecture-pattern.listtradeoffs with: patternId: tools.patternId inputParameters: - name: patternId type: string description: Filter trade-offs by pattern outputParameters: - type: object mapping: $.