SnapAPI · Capability

SnapAPI Metadata

Extract title, description, Open Graph tags, Twitter Cards, favicons, and all meta tags from any URL. Self-contained Naftiko capability covering the SnapAPI metadata business surface.

Run with Naftiko SnapAPIMetadataOpen GraphTwitter CardsSEO

What You Can Do

POST
Extractmetadata — Extract metadata from a URL
/v1/api/metadata

MCP Tools

extract-metadata

Extract title, description, Open Graph, Twitter Cards, favicon, and meta tags from any URL

read-only idempotent

Capability Spec

metadata.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: SnapAPI Metadata
  description: Extract title, description, Open Graph tags, Twitter Cards, favicons, and all meta tags from any URL. Self-contained Naftiko capability covering the SnapAPI metadata business surface.
  tags:
    - SnapAPI
    - Metadata
    - Open Graph
    - Twitter Cards
    - SEO
  created: '2026-05-27'
  modified: '2026-05-27'
binds:
  - namespace: env
    keys:
      SNAPAPI_API_KEY: SNAPAPI_API_KEY
capability:
  consumes:
    - type: http
      namespace: snapapi-metadata
      baseUri: https://snap.michaelcli.com
      description: SnapAPI metadata extraction business capability. Self-contained, no shared references.
      resources:
        - name: metadata
          path: /api/metadata
          operations:
            - name: extractMetadata
              method: POST
              description: Extract metadata (title, description, OG, Twitter, meta tags) from a URL
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Metadata extraction request body with target URL (JSON).
                  required: true
      authentication:
        type: bearer
        token: '{{env.SNAPAPI_API_KEY}}'
        header: X-API-Key
  exposes:
    - type: rest
      namespace: snapapi-metadata-rest
      port: 8080
      description: REST adapter for SnapAPI Metadata. One Spectral-compliant resource per consumed operation, prefixed with /v1.
      resources:
        - path: /v1/api/metadata
          name: metadata
          description: REST surface for the metadata endpoint.
          operations:
            - method: POST
              name: extractMetadata
              description: Extract metadata from a URL
              call: snapapi-metadata.extractMetadata
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
    - type: mcp
      namespace: snapapi-metadata-mcp
      port: 9090
      transport: http
      description: MCP adapter for SnapAPI Metadata. One tool per consumed operation, routed inline through this capability's consumes block.
      tools:
        - name: extract-metadata
          description: Extract title, description, Open Graph, Twitter Cards, favicon, and meta tags from any URL
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: snapapi-metadata.extractMetadata
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.