naftiko: 1.0.0-alpha2 info: label: GreyNoise API — IP Lookup description: 'IP Lookup surface of GreyNoise API. 2 operations. Lead operation: IP Lookup - Multi. Self-contained Naftiko capability covering one GreyNoise business surface.' tags: - GreyNoise - Security - IP Lookup created: '2026-05-30' modified: '2026-05-30' binds: - namespace: env keys: GREYNOISE_API_KEY: GREYNOISE_API_KEY capability: consumes: - type: http namespace: greynoise-ip-lookup baseUri: https://api.greynoise.io description: GreyNoise API — IP Lookup business capability. Self-contained, no shared references. authentication: type: apikey key: key value: '{{env.GREYNOISE_API_KEY}}' placement: header resources: - name: v3-ip path: /v3/ip operations: - name: V3MultiIP method: POST description: IP Lookup - Multi inputParameters: - name: quick in: query type: boolean required: false description: If true, the response will only include the IP address and the classification or trust level. - name: workspace_labels in: query type: string required: false description: Comma-separated list of dataset scopes to include in the query. - name: body in: body type: object required: true description: Request body. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v3-ip-ip path: /v3/ip/{ip} operations: - name: V3IP method: GET description: IP Lookup inputParameters: - name: ip in: path type: string required: true description: IP address to query - name: quick in: query type: boolean required: false description: If true, the response will only include the IP address and the classification or trust level. - name: workspace_labels in: query type: string required: false description: Comma-separated list of dataset scopes to include in the query. outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: greynoise-ip-lookup-rest port: 8080 description: REST adapter for GreyNoise API — IP Lookup. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/ip name: v1-ip description: REST surface for IP Lookup - Multi. operations: - method: POST name: V3MultiIP description: IP Lookup - Multi call: greynoise-ip-lookup.V3MultiIP with: quick: rest.quick workspace_labels: rest.workspace_labels body: rest.body outputParameters: - type: object mapping: $. - path: /v1/ip/{ip} name: v1-ip-ip description: REST surface for IP Lookup. operations: - method: GET name: V3IP description: IP Lookup call: greynoise-ip-lookup.V3IP with: ip: rest.ip quick: rest.quick workspace_labels: rest.workspace_labels outputParameters: - type: object mapping: $. - type: mcp namespace: greynoise-ip-lookup-mcp port: 9090 transport: http description: MCP adapter for GreyNoise API — IP Lookup. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: ip-lookup-multi description: IP Lookup - Multi hints: readOnly: true destructive: false idempotent: false call: greynoise-ip-lookup.V3MultiIP with: quick: tools.quick workspace_labels: tools.workspace_labels body: tools.body outputParameters: - type: object mapping: $. - name: ip-lookup description: IP Lookup hints: readOnly: true destructive: false idempotent: true call: greynoise-ip-lookup.V3IP with: ip: tools.ip quick: tools.quick workspace_labels: tools.workspace_labels outputParameters: - type: object mapping: $.