naftiko: 1.0.0-alpha2 info: label: langfuse — Trace description: 'langfuse — Trace. 4 operations. Lead operation: Trace. Self-contained Naftiko capability covering one Langfuse business surface.' tags: - Langfuse - Trace created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: LANGFUSE_API_KEY: LANGFUSE_API_KEY capability: consumes: - type: http namespace: langfuse-trace baseUri: '' description: langfuse — Trace business capability. Self-contained, no shared references. resources: - name: api-public-traces path: /api/public/traces operations: - name: tracelist method: GET description: Get list of traces outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page in: query type: integer description: Page number, starts at 1 - name: limit in: query type: integer description: Limit of items per page. If you encounter api issues due to too large page sizes, try to reduce the limit. - name: userId in: query type: string - name: name in: query type: string - name: sessionId in: query type: string - name: fromTimestamp in: query type: string description: Optional filter to only include traces with a trace.timestamp on or after a certain datetime (ISO 8601) - name: toTimestamp in: query type: string description: Optional filter to only include traces with a trace.timestamp before a certain datetime (ISO 8601) - name: orderBy in: query type: string description: 'Format of the string [field].[asc/desc]. Fields: id, timestamp, name, userId, release, version, public, bookmarked, sessionId. Example: timestamp.asc' - name: tags in: query type: array description: Only traces that include all of these tags will be returned. - name: version in: query type: string description: Optional filter to only include traces with a certain version. - name: release in: query type: string description: Optional filter to only include traces with a certain release. - name: environment in: query type: array description: Optional filter for traces where the environment is one of the provided values. - name: fields in: query type: string description: 'Comma-separated list of fields to include in the response. Available field groups: ''core'' (always included), ''io'' (input, output, metadata), ''scores'', ''observat' - name: filter in: query type: string description: JSON string containing an array of filter conditions. When provided, this takes precedence over query parameter filters (userId, name, sessionId, tags, version, - name: tracedeletemultiple method: DELETE description: Delete multiple traces outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-public-traces-traceId path: /api/public/traces/{traceId} operations: - name: traceget method: GET description: Get a specific trace outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: traceId in: path type: string description: The unique langfuse identifier of a trace required: true - name: fields in: query type: string description: 'Comma-separated list of fields to include in the response. Available field groups: ''core'' (always included), ''io'' (input, output, metadata), ''scores'', ''observat' - name: tracedelete method: DELETE description: Delete a specific trace outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: traceId in: path type: string description: The unique langfuse identifier of the trace to delete required: true authentication: type: basic username: '{{env.LANGFUSE_USER}}' password: '{{env.LANGFUSE_PASS}}' exposes: - type: rest namespace: langfuse-trace-rest port: 8080 description: REST adapter for langfuse — Trace. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/public/traces name: api-public-traces description: REST surface for api-public-traces. operations: - method: GET name: tracelist description: Get list of traces call: langfuse-trace.tracelist with: page: rest.page limit: rest.limit userId: rest.userId name: rest.name sessionId: rest.sessionId fromTimestamp: rest.fromTimestamp toTimestamp: rest.toTimestamp orderBy: rest.orderBy tags: rest.tags version: rest.version release: rest.release environment: rest.environment fields: rest.fields filter: rest.filter outputParameters: - type: object mapping: $. - method: DELETE name: tracedeletemultiple description: Delete multiple traces call: langfuse-trace.tracedeletemultiple with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/public/traces/{traceid} name: api-public-traces-traceid description: REST surface for api-public-traces-traceId. operations: - method: GET name: traceget description: Get a specific trace call: langfuse-trace.traceget with: traceId: rest.traceId fields: rest.fields outputParameters: - type: object mapping: $. - method: DELETE name: tracedelete description: Delete a specific trace call: langfuse-trace.tracedelete with: traceId: rest.traceId outputParameters: - type: object mapping: $. - type: mcp namespace: langfuse-trace-mcp port: 9090 transport: http description: MCP adapter for langfuse — Trace. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-list-traces description: Get list of traces hints: readOnly: true destructive: false idempotent: true call: langfuse-trace.tracelist with: page: tools.page limit: tools.limit userId: tools.userId name: tools.name sessionId: tools.sessionId fromTimestamp: tools.fromTimestamp toTimestamp: tools.toTimestamp orderBy: tools.orderBy tags: tools.tags version: tools.version release: tools.release environment: tools.environment fields: tools.fields filter: tools.filter outputParameters: - type: object mapping: $. - name: delete-multiple-traces description: Delete multiple traces hints: readOnly: false destructive: true idempotent: true call: langfuse-trace.tracedeletemultiple with: body: tools.body outputParameters: - type: object mapping: $. - name: get-specific-trace description: Get a specific trace hints: readOnly: true destructive: false idempotent: true call: langfuse-trace.traceget with: traceId: tools.traceId fields: tools.fields outputParameters: - type: object mapping: $. - name: delete-specific-trace description: Delete a specific trace hints: readOnly: false destructive: true idempotent: true call: langfuse-trace.tracedelete with: traceId: tools.traceId outputParameters: - type: object mapping: $.