naftiko: 1.0.0-alpha2 info: label: langfuse — Sessions description: 'langfuse — Sessions. 2 operations. Lead operation: Sessions. Self-contained Naftiko capability covering one Langfuse business surface.' tags: - Langfuse - Sessions created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: LANGFUSE_API_KEY: LANGFUSE_API_KEY capability: consumes: - type: http namespace: langfuse-sessions baseUri: '' description: langfuse — Sessions business capability. Self-contained, no shared references. resources: - name: api-public-sessions path: /api/public/sessions operations: - name: sessionslist method: GET description: Get sessions 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: fromTimestamp in: query type: string description: Optional filter to only include sessions created on or after a certain datetime (ISO 8601) - name: toTimestamp in: query type: string description: Optional filter to only include sessions created before a certain datetime (ISO 8601) - name: environment in: query type: array description: Optional filter for sessions where the environment is one of the provided values. - name: api-public-sessions-sessionId path: /api/public/sessions/{sessionId} operations: - name: sessionsget method: GET description: Get a session. Please note that `traces` on this endpoint are not paginated, if you plan to fetch large sessions, consider `GET /api/public/traces?sessionId=` outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: string description: The unique id of a session required: true authentication: type: basic username: '{{env.LANGFUSE_USER}}' password: '{{env.LANGFUSE_PASS}}' exposes: - type: rest namespace: langfuse-sessions-rest port: 8080 description: REST adapter for langfuse — Sessions. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/public/sessions name: api-public-sessions description: REST surface for api-public-sessions. operations: - method: GET name: sessionslist description: Get sessions call: langfuse-sessions.sessionslist with: page: rest.page limit: rest.limit fromTimestamp: rest.fromTimestamp toTimestamp: rest.toTimestamp environment: rest.environment outputParameters: - type: object mapping: $. - path: /v1/api/public/sessions/{sessionid} name: api-public-sessions-sessionid description: REST surface for api-public-sessions-sessionId. operations: - method: GET name: sessionsget description: Get a session. Please note that `traces` on this endpoint are not paginated, if you plan to fetch large sessions, consider `GET /api/public/traces?sessionId=` call: langfuse-sessions.sessionsget with: sessionId: rest.sessionId outputParameters: - type: object mapping: $. - type: mcp namespace: langfuse-sessions-mcp port: 9090 transport: http description: MCP adapter for langfuse — Sessions. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-sessions description: Get sessions hints: readOnly: true destructive: false idempotent: true call: langfuse-sessions.sessionslist with: page: tools.page limit: tools.limit fromTimestamp: tools.fromTimestamp toTimestamp: tools.toTimestamp environment: tools.environment outputParameters: - type: object mapping: $. - name: get-session-please-note-that description: Get a session. Please note that `traces` on this endpoint are not paginated, if you plan to fetch large sessions, consider `GET /api/public/traces?sessionId=` hints: readOnly: true destructive: false idempotent: true call: langfuse-sessions.sessionsget with: sessionId: tools.sessionId outputParameters: - type: object mapping: $.