IPGeolocation.io · Capability

IPGeolocation.io — Astronomy

IPGeolocation.io Astronomy. 2 operations. Lead operation: Astronomy lookup. Self-contained Naftiko capability covering one IPGeolocation.io business surface.

Run with Naftiko IPGeolocationIP IntelligenceAstronomy

What You Can Do

GET
Lookupastronomy — Astronomy lookup
/v1/astronomy
GET
Lookupastronomytimeseries — Astronomy time series lookup
/v1/astronomy/timeseries

MCP Tools

astronomy-lookup

Astronomy lookup

read-only idempotent
astronomy-time-series-lookup

Astronomy time series lookup

read-only idempotent

Capability Spec

astronomy-astronomy.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: IPGeolocation.io — Astronomy
  description: 'IPGeolocation.io Astronomy. 2 operations. Lead operation: Astronomy lookup. Self-contained Naftiko capability covering one IPGeolocation.io business surface.'
  tags:
  - IPGeolocation
  - IP Intelligence
  - Astronomy
  created: '2026-05-29'
  modified: '2026-05-29'
binds:
- namespace: env
  keys:
    IPGEOLOCATION_API_KEY: IPGEOLOCATION_API_KEY
capability:
  consumes:
  - type: http
    namespace: astronomy-astronomy
    baseUri: https://api.ipgeolocation.io
    description: IPGeolocation.io — Astronomy business capability. Self-contained, no shared references.
    authentication:
      type: apikey
      key: apiKey
      value: '{{env.IPGEOLOCATION_API_KEY}}'
      placement: query
    resources:
    - name: astronomy
      path: /v3/astronomy
      operations:
      - name: lookupAstronomy
        method: GET
        description: Astronomy lookup
        inputParameters:
        - name: lat
          in: query
          type: number
          required: false
          description: Latitude coordinate of the location. Must be provided together with
        - name: long
          in: query
          type: number
          required: false
          description: Longitude coordinate of the location. Must be provided together with
        - name: location
          in: query
          type: string
          required: false
          description: Address or location name used to determine the astronomical
        - name: ip
          in: query
          type: string
          required: false
          description: An IPv4 or IPv6 address used to resolve the location for the
        - name: date
          in: query
          type: string
          required: false
          description: Date for which to retrieve astronomical information.
        - name: elevation
          in: query
          type: number
          required: false
          description: Elevation of the location above sea level in meters. Used to
        - name: time_zone
          in: query
          type: string
          required: false
          description: IANA timezone identifier used to convert all astronomical event
        - name: lang
          in: query
          type: string
          required: false
          description: Language code for translated location names in the `location` object.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: astronomy-timeseries
      path: /v3/astronomy/timeSeries
      operations:
      - name: lookupAstronomyTimeSeries
        method: GET
        description: Astronomy time series lookup
        inputParameters:
        - name: lat
          in: query
          type: number
          required: false
          description: Latitude coordinate of the location. Must be provided together with
        - name: long
          in: query
          type: number
          required: false
          description: Longitude coordinate of the location. Must be provided together with
        - name: location
          in: query
          type: string
          required: false
          description: Address or location name used to determine the astronomical
        - name: ip
          in: query
          type: string
          required: false
          description: An IPv4 or IPv6 address used to resolve the location for the
        - name: dateStart
          in: query
          type: string
          required: true
          description: Start date of the time series range.
        - name: dateEnd
          in: query
          type: string
          required: true
          description: End date of the time series range.
        - name: elevation
          in: query
          type: number
          required: false
          description: Elevation of the location above sea level in meters. Used to
        - name: time_zone
          in: query
          type: string
          required: false
          description: IANA timezone identifier used to convert all astronomical event
        - name: lang
          in: query
          type: string
          required: false
          description: Language code for translated location names in the `location` object.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    namespace: astronomy-astronomy-rest
    port: 8080
    description: REST adapter for IPGeolocation.io — Astronomy. One Spectral-compliant resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/astronomy
      name: astronomy
      description: REST surface for /v3/astronomy.
      operations:
      - method: GET
        name: lookupAstronomy
        description: Astronomy lookup
        call: astronomy-astronomy.lookupAstronomy
        with:
          lat: rest.lat
          long: rest.long
          location: rest.location
          ip: rest.ip
          date: rest.date
          elevation: rest.elevation
          time_zone: rest.time_zone
          lang: rest.lang
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/astronomy/timeseries
      name: astronomy-timeseries
      description: REST surface for /v3/astronomy/timeSeries.
      operations:
      - method: GET
        name: lookupAstronomyTimeSeries
        description: Astronomy time series lookup
        call: astronomy-astronomy.lookupAstronomyTimeSeries
        with:
          lat: rest.lat
          long: rest.long
          location: rest.location
          ip: rest.ip
          dateStart: rest.dateStart
          dateEnd: rest.dateEnd
          elevation: rest.elevation
          time_zone: rest.time_zone
          lang: rest.lang
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: astronomy-astronomy-mcp
    port: 9090
    transport: http
    description: MCP adapter for IPGeolocation.io — Astronomy. One tool per consumed operation, routed inline through this capability's consumes block.
    tools:
    - name: astronomy-lookup
      description: Astronomy lookup
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: astronomy-astronomy.lookupAstronomy
      with:
        lat: tools.lat
        long: tools.long
        location: tools.location
        ip: tools.ip
        date: tools.date
        elevation: tools.elevation
        time_zone: tools.time_zone
        lang: tools.lang
      outputParameters:
      - type: object
        mapping: $.
    - name: astronomy-time-series-lookup
      description: Astronomy time series lookup
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: astronomy-astronomy.lookupAstronomyTimeSeries
      with:
        lat: tools.lat
        long: tools.long
        location: tools.location
        ip: tools.ip
        dateStart: tools.dateStart
        dateEnd: tools.dateEnd
        elevation: tools.elevation
        time_zone: tools.time_zone
        lang: tools.lang
      outputParameters:
      - type: object
        mapping: $.