naftiko: 1.0.0-alpha2 info: label: LangWatch Dashboards API description: 'Create, reorder, and manage dashboards and their composed graphs. Self-contained Naftiko capability covering one LangWatch business surface.' tags: - LangWatch - Dashboards - Graphs created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: LANGWATCH_API_KEY: LANGWATCH_API_KEY capability: consumes: - type: http namespace: dashboards baseUri: https://app.langwatch.ai description: Create, reorder, and manage dashboards and their composed graphs. resources: - name: api-dashboards path: /api/dashboards operations: - name: listDashboards method: GET description: List dashboards. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createDashboard method: POST description: Create a dashboard. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: api-dashboards-reorder path: /api/dashboards/reorder operations: - name: reorderDashboards method: PUT description: Reorder dashboards. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: api-dashboards-id path: /api/dashboards/{id} operations: - name: getDashboard method: GET description: Get a dashboard. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: updateDashboard method: PATCH description: Update a dashboard. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deleteDashboard method: DELETE description: Delete a dashboard. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: api-graphs path: /api/graphs operations: - name: listGraphs method: GET description: List graphs. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createGraph method: POST description: Create a graph. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: api-graphs-id path: /api/graphs/{id} operations: - name: getGraph method: GET description: Get a graph. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: updateGraph method: PATCH description: Update a graph. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deleteGraph method: DELETE description: Delete a graph. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true authentication: type: bearer value: '{{env.LANGWATCH_API_KEY}}' placement: header exposes: - type: rest namespace: dashboards-rest port: 8080 description: REST adapter for LangWatch Dashboards API. resources: - path: /v1/api/dashboards name: listdashboards-resource description: REST surface for listDashboards. operations: - method: GET name: listDashboards description: List dashboards. call: dashboards.listDashboards outputParameters: - type: object mapping: $. - path: /v1/api/dashboards name: createdashboard-resource description: REST surface for createDashboard. operations: - method: POST name: createDashboard description: Create a dashboard. call: dashboards.createDashboard with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/dashboards/reorder name: reorderdashboards-resource description: REST surface for reorderDashboards. operations: - method: PUT name: reorderDashboards description: Reorder dashboards. call: dashboards.reorderDashboards with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/dashboards/{id} name: getdashboard-resource description: REST surface for getDashboard. operations: - method: GET name: getDashboard description: Get a dashboard. call: dashboards.getDashboard with: id: rest.path.id outputParameters: - type: object mapping: $. - path: /v1/api/dashboards/{id} name: updatedashboard-resource description: REST surface for updateDashboard. operations: - method: PATCH name: updateDashboard description: Update a dashboard. call: dashboards.updateDashboard with: id: rest.path.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/dashboards/{id} name: deletedashboard-resource description: REST surface for deleteDashboard. operations: - method: DELETE name: deleteDashboard description: Delete a dashboard. call: dashboards.deleteDashboard with: id: rest.path.id outputParameters: - type: object mapping: $. - path: /v1/api/graphs name: listgraphs-resource description: REST surface for listGraphs. operations: - method: GET name: listGraphs description: List graphs. call: dashboards.listGraphs outputParameters: - type: object mapping: $. - path: /v1/api/graphs name: creategraph-resource description: REST surface for createGraph. operations: - method: POST name: createGraph description: Create a graph. call: dashboards.createGraph with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/graphs/{id} name: getgraph-resource description: REST surface for getGraph. operations: - method: GET name: getGraph description: Get a graph. call: dashboards.getGraph with: id: rest.path.id outputParameters: - type: object mapping: $. - path: /v1/api/graphs/{id} name: updategraph-resource description: REST surface for updateGraph. operations: - method: PATCH name: updateGraph description: Update a graph. call: dashboards.updateGraph with: id: rest.path.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/graphs/{id} name: deletegraph-resource description: REST surface for deleteGraph. operations: - method: DELETE name: deleteGraph description: Delete a graph. call: dashboards.deleteGraph with: id: rest.path.id outputParameters: - type: object mapping: $. - type: mcp namespace: dashboards-mcp port: 9090 transport: http description: MCP adapter for LangWatch Dashboards API. One tool per consumed operation. tools: - name: langwatch-listDashboards description: List dashboards. hints: readOnly: true destructive: false idempotent: true call: dashboards.listDashboards outputParameters: - type: object mapping: $. - name: langwatch-createDashboard description: Create a dashboard. hints: readOnly: false destructive: false idempotent: false call: dashboards.createDashboard with: body: tools.body outputParameters: - type: object mapping: $. - name: langwatch-reorderDashboards description: Reorder dashboards. hints: readOnly: false destructive: false idempotent: true call: dashboards.reorderDashboards with: body: tools.body outputParameters: - type: object mapping: $. - name: langwatch-getDashboard description: Get a dashboard. hints: readOnly: true destructive: false idempotent: true call: dashboards.getDashboard with: id: tools.id outputParameters: - type: object mapping: $. - name: langwatch-updateDashboard description: Update a dashboard. hints: readOnly: false destructive: false idempotent: false call: dashboards.updateDashboard with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: langwatch-deleteDashboard description: Delete a dashboard. hints: readOnly: false destructive: true idempotent: true call: dashboards.deleteDashboard with: id: tools.id outputParameters: - type: object mapping: $. - name: langwatch-listGraphs description: List graphs. hints: readOnly: true destructive: false idempotent: true call: dashboards.listGraphs outputParameters: - type: object mapping: $. - name: langwatch-createGraph description: Create a graph. hints: readOnly: false destructive: false idempotent: false call: dashboards.createGraph with: body: tools.body outputParameters: - type: object mapping: $. - name: langwatch-getGraph description: Get a graph. hints: readOnly: true destructive: false idempotent: true call: dashboards.getGraph with: id: tools.id outputParameters: - type: object mapping: $. - name: langwatch-updateGraph description: Update a graph. hints: readOnly: false destructive: false idempotent: false call: dashboards.updateGraph with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: langwatch-deleteGraph description: Delete a graph. hints: readOnly: false destructive: true idempotent: true call: dashboards.deleteGraph with: id: tools.id outputParameters: - type: object mapping: $.