{
  "info": {
    "name": "Braintrust — mcp.ai",
    "description": "REST API for the Braintrust MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/braintrust",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "braintrust_create_dataset",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/dataset",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "dataset"
          ]
        },
        "description": "Create a named dataset under a Braintrust project, or return the existing dataset unchanged when its name already exists in that project.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"tags\": \"\",\n  \"metadata\": {},\n  \"project_id\": \"\",\n  \"description\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_create_experiment",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/experiment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "experiment"
          ]
        },
        "description": "Create an experiment under a Braintrust project. When its name already exists, Braintrust returns the existing experiment unchanged unless ensure_new is true, which creates an experiment with a unique",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"tags\": \"\",\n  \"public\": false,\n  \"metadata\": {},\n  \"dataset_id\": \"\",\n  \"ensure_new\": false,\n  \"project_id\": \"\",\n  \"description\": \"\",\n  \"dataset_version\": \"\",\n  \"base_experiment_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_create_project",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/project",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "project"
          ]
        },
        "description": "Create a Braintrust project, or return the existing project unchanged when its name already exists.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"org_name\": \"\",\n  \"description\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_create_prompt",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/prompt",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "prompt"
          ]
        },
        "description": "Upsert a versioned prompt configuration under a Braintrust project without invoking it. The same project and slug reuse the prompt ID but create a new version that replaces the stored prompt configura",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"slug\": \"\",\n  \"tags\": \"\",\n  \"project_id\": \"\",\n  \"description\": \"\",\n  \"prompt_data\": {},\n  \"function_type\": \"\",\n  \"template_format\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_delete_project",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/project",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "project"
          ]
        },
        "description": "Soft-delete a Braintrust project and return its deletion state.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"project_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_delete_resource",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/resource",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "resource"
          ]
        },
        "description": "Delete one Braintrust experiment, dataset, or prompt by UUID for explicit lifecycle cleanup.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"resource_id\": \"\",\n  \"resource_type\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_fetch_events",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/fetch/events",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "fetch",
            "events"
          ]
        },
        "description": "Fetch one newest-to-oldest page of project log, experiment, or dataset events.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"version\": \"\",\n  \"next_cursor\": \"\",\n  \"resource_id\": \"\",\n  \"resource_type\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_get_resource",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/resource",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "resource"
          ]
        },
        "description": "Get one project, experiment, dataset, prompt, or function by UUID.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"resource_id\": \"\",\n  \"resource_type\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_insert_dataset_events",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/insert/dataset/events",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "insert",
            "dataset",
            "events"
          ]
        },
        "description": "Upsert a batch of examples into an existing Braintrust dataset. New or omitted IDs insert events; an existing supplied ID replaces that event's current values.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"events\": \"\",\n  \"dataset_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_insert_experiment_events",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/insert/experiment/events",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "insert",
            "experiment",
            "events"
          ]
        },
        "description": "Upsert a batch of result events into an existing Braintrust experiment. New or omitted IDs insert events; an existing supplied ID replaces that event's current values.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"events\": \"\",\n  \"experiment_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_list_resources",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/resources",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "resources"
          ]
        },
        "description": "List and filter one page of projects, experiments, datasets, prompts, or functions visible to the connected Braintrust API key.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"ids\": \"\",\n  \"name\": \"\",\n  \"slug\": \"\",\n  \"limit\": 0,\n  \"version\": \"\",\n  \"org_name\": \"\",\n  \"project_id\": \"\",\n  \"environment\": \"\",\n  \"next_cursor\": \"\",\n  \"project_name\": \"\",\n  \"resource_type\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_query_data",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/query/data",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "query",
            "data"
          ]
        },
        "description": "Run one bounded synchronous read-only BTQL query over Braintrust project logs, an experiment, or a dataset. The first-page query must end with a positive LIMIT; continue later pages by passing the ret",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"query\": \"\",\n  \"version\": \"\",\n  \"lint_mode\": \"\",\n  \"tz_offset\": 0,\n  \"next_cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_summarize_resource",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/summarize/resource",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "summarize",
            "resource"
          ]
        },
        "description": "Return metadata and optional aggregate summaries for one Braintrust experiment or dataset.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"resource_id\": \"\",\n  \"resource_type\": \"\",\n  \"include_aggregates\": false,\n  \"comparison_experiment_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_update_dataset",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/dataset",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "dataset"
          ]
        },
        "description": "Update the name, description, tags, or metadata of a Braintrust dataset. At least one non-null mutable field is required.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"tags\": \"\",\n  \"metadata\": {},\n  \"dataset_id\": \"\",\n  \"description\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_update_experiment",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/experiment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "experiment"
          ]
        },
        "description": "Update selected metadata and linkage fields on a Braintrust experiment. At least one non-null mutable field is required.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"tags\": \"\",\n  \"public\": false,\n  \"metadata\": {},\n  \"dataset_id\": \"\",\n  \"description\": \"\",\n  \"experiment_id\": \"\",\n  \"dataset_version\": \"\",\n  \"base_experiment_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_update_project",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/project",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "project"
          ]
        },
        "description": "Update selected fields of a Braintrust project. At least one non-null mutable field is required: name, description, or settings.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"settings\": {},\n  \"project_id\": \"\",\n  \"description\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "braintrust_update_prompt",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/prompt",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "prompt"
          ]
        },
        "description": "Update a Braintrust prompt's metadata or configuration without invoking it. At least one non-null mutable field is required.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"slug\": \"\",\n  \"tags\": \"\",\n  \"prompt_id\": \"\",\n  \"description\": \"\",\n  \"prompt_data\": {},\n  \"template_format\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}