CloudBoosterDocs

aws_best_practices_for

Get AWS best-practice recommendations for a workload

aws_best_practices_for

Get AWS best-practice recommendations for a workload.

Returns curated knowledge chunks that describe how CloudBooster recommends building a given workload on AWS — the patterns that typically work, the trade-offs to be aware of, and the primitives that usually appear together. Use this early in planning, before you have a concrete component list.

  • Family: knowledge
  • Source: cbx-mcp/src/cbx_mcp/tools/knowledge.py::aws_best_practices_for
  • Backend: GET /v1/knowledge/aws/practices?workload={workload}

Input schema

{
  "type": "object",
  "properties": {
    "workload": {
      "type": "string",
      "description": "Workload type, e.g. 'static-site', 'static-site-plus-api', 'containerized-api', 'event-driven'."
    }
  },
  "required": ["workload"]
}

The backend matches workload against its catalogue of known workload types. Unknown values return an empty chunks list rather than an error.

Output schema

On success the tool returns the backend's PublicKnowledgeResponse wrapped in the standard MCP envelope:

{
  "type": "object",
  "properties": {
    "isError": { "type": "boolean" },
    "result": {
      "type": "object",
      "properties": {
        "kb_version": { "type": "integer" },
        "chunks": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "doc_path":    { "type": "string" },
              "heading":     { "type": ["string", "null"] },
              "chunk_text":  { "type": "string" },
              "chunk_index": { "type": "integer" },
              "token_count": { "type": "integer" },
              "category":    { "type": "string" },
              "type_ids":    { "type": "array", "items": { "type": "string" } },
              "tags":        { "type": "array", "items": { "type": "string" } }
            },
            "required": [
              "doc_path",
              "chunk_text",
              "chunk_index",
              "token_count",
              "category"
            ]
          }
        }
      },
      "required": ["kb_version"]
    },
    "error": { "type": "string" }
  },
  "required": ["isError"]
}

Each chunk's category identifies the kind of guidance it carries — typically values like pattern, tradeoff, or composition_hint. type_ids lists the primitives the chunk references, so callers can pivot directly into aws_lookup_primitive for any primitive that looks promising.

Example call

{
  "name": "aws_best_practices_for",
  "arguments": {
    "workload": "static-site-plus-api"
  }
}

Example result

Illustrative — real responses include several chunks across patterns, trade-offs, and composition hints.

{
  "isError": false,
  "result": {
    "kb_version": 12,
    "chunks": [
      {
        "doc_path": "resources/aws/workloads/static-site-plus-api/pattern.md",
        "heading": "Static site + API on AWS",
        "chunk_text": "The canonical shape: S3 + CloudFront for the assets, API Gateway + Lambda for the API...",
        "chunk_index": 0,
        "token_count": 220,
        "category": "pattern",
        "type_ids": [
          "aws:s3/bucket@v1",
          "aws:cloudfront/distribution@v1",
          "aws:apigateway/rest_api@v1",
          "aws:lambda/function@v1"
        ],
        "tags": ["serverless", "static-site", "api"]
      }
    ]
  }
}

On this page