Naftiko · Capability

Blpapi Data License Billing Tagged Capability

A capability over BLPAPI Data License that tags every read with billing metadata so per-team attribution is automatic.

Run with Naftiko NaftikoBloombergBLPAPIBilling

What You Can Do

POST
Query tagged — Submit a billing-tagged BLPAPI request.
/query

MCP Tools

query-tagged

get-response

read-only

Capability Spec

blpapi-data-license-billing-tagged-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  title: Blpapi Data License Billing Tagged Capability
  description: A capability over BLPAPI Data License that tags every read with billing metadata so per-team attribution is automatic.
  tags: [Naftiko, Bloomberg, BLPAPI, Billing]
  created: '2026-05-01'
  modified: '2026-05-04'
binds:
- namespace: bloomberg-env
  keys: {BLOOMBERG_TOKEN: BLOOMBERG_TOKEN}
capability:
  consumes:
  - namespace: blpapi
    type: http
    baseUri: https://api.bloomberg.com
    authentication: {type: bearer, token: '{{BLOOMBERG_TOKEN}}'}
    resources:
    - {name: requests, path: /eap/dl/v1/requests, operations: [{name: create-data-request, method: POST}]}
    - name: request
      path: /eap/dl/v1/requests/{{request_id}}
      operations:
      - {name: get-request, method: GET, inputParameters: [{name: request_id, in: path}]}
    - name: responses
      path: /eap/dl/v1/responses/{{response_id}}
      operations:
      - {name: get-response, method: GET, inputParameters: [{name: response_id, in: path}]}
  exposes:
  - type: rest
    address: 0.0.0.0
    port: 8080
    namespace: blpapi-data-license-billing-tagged-capability-rest
    description: REST surface for billing-tagged BLPAPI data reads.
    resources:
    - {name: query, path: /query, operations: [{method: POST, name: query-tagged, description: Submit a billing-tagged BLPAPI request., call: blpapi.create-data-request}]}
  - type: mcp
    address: 0.0.0.0
    port: 3010
    namespace: blpapi-data-license-billing-tagged-capability-mcp
    description: MCP for tagged BLPAPI reads.
    tools:
    - {name: query-tagged, call: blpapi.create-data-request}
    - name: get-response
      hints: {readOnly: true}
      inputParameters: [{name: response_id, type: string, required: true}]
      call: blpapi.get-response
  - type: skill
    address: 0.0.0.0
    port: 3011
    namespace: blpapi-data-license-billing-tagged-capability-skills
    description: Skill for billing-tagged BLPAPI.
    skills:
    - name: blpapi-data-license-billing-tagged-capability
      description: Billing-tagged BLPAPI Data License reads.
      location: file:///opt/naftiko/skills/blpapi-data-license-billing-tagged-capability
      allowed-tools: query-tagged,get-response
      tools:
      - {name: query-tagged, from: {sourceNamespace: blpapi-data-license-billing-tagged-capability-mcp, action: query-tagged}}
      - {name: get-response, from: {sourceNamespace: blpapi-data-license-billing-tagged-capability-mcp, action: get-response}}