Moralis · Capability

EVM API — Transaction

EVM API — Transaction. 4 operations. Lead operation: Get transaction by hash. Self-contained Naftiko capability covering one Moralis business surface.

Run with Naftiko MoralisTransaction

What You Can Do

GET
Gettransaction — Get transaction by hash
/v1/transaction/{transaction-hash}
GET
Gettransactionverbose — Get decoded transaction by hash
/v1/transaction/{transaction-hash}/verbose
GET
Getwallettransactions — Get native transactions by wallet
/v1/{address}
GET
Getwallettransactionsverbose — Get decoded transactions by wallet
/v1/{address}/verbose

MCP Tools

get-transaction-hash

Get transaction by hash

read-only idempotent
get-decoded-transaction-hash

Get decoded transaction by hash

read-only idempotent
get-native-transactions-wallet

Get native transactions by wallet

read-only idempotent
get-decoded-transactions-wallet

Get decoded transactions by wallet

read-only idempotent

Capability Spec

evm-transaction.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: EVM API — Transaction
  description: 'EVM API — Transaction. 4 operations. Lead operation: Get transaction by hash. Self-contained Naftiko capability
    covering one Moralis business surface.'
  tags:
  - Moralis
  - Transaction
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MORALIS_API_KEY: MORALIS_API_KEY
capability:
  consumes:
  - type: http
    namespace: evm-transaction
    baseUri: https://deep-index.moralis.io/api/v2.2
    description: EVM API — Transaction business capability. Self-contained, no shared references.
    resources:
    - name: transaction-transaction_hash
      path: /transaction/{transaction_hash}
      operations:
      - name: gettransaction
        method: GET
        description: Get transaction by hash
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: chain
          in: query
          type: string
          description: The chain to query
        - name: transaction_hash
          in: path
          type: string
          description: The transaction hash
          required: true
        - name: include
          in: query
          type: string
          description: If the result should contain the internal transactions.
    - name: transaction-transaction_hash-verbose
      path: /transaction/{transaction_hash}/verbose
      operations:
      - name: gettransactionverbose
        method: GET
        description: Get decoded transaction by hash
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: chain
          in: query
          type: string
          description: The chain to query
        - name: transaction_hash
          in: path
          type: string
          description: The transaction hash
          required: true
        - name: include
          in: query
          type: string
          description: If the result should contain the internal transactions.
    - name: address
      path: /{address}
      operations:
      - name: getwallettransactions
        method: GET
        description: Get native transactions by wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: chain
          in: query
          type: string
          description: The chain to query
        - name: from_block
          in: query
          type: integer
          description: The minimum block number from which to get the transactions
        - name: to_block
          in: query
          type: integer
          description: The maximum block number from which to get the transactions.
        - name: from_date
          in: query
          type: string
          description: The start date from which to get the transactions (format in seconds or datestring accepted by momentjs)
        - name: to_date
          in: query
          type: string
          description: Get the transactions up to this date (format in seconds or datestring accepted by momentjs)
        - name: address
          in: path
          type: string
          description: The address of the wallet
          required: true
        - name: cursor
          in: query
          type: string
          description: The cursor returned in the previous response (used for getting the next page).
        - name: order
          in: query
          type: string
          description: The order of the result, in ascending (ASC) or descending (DESC)
        - name: limit
          in: query
          type: integer
          description: The desired page size of the result.
        - name: include
          in: query
          type: string
          description: If the result should contain the internal transactions.
    - name: address-verbose
      path: /{address}/verbose
      operations:
      - name: getwallettransactionsverbose
        method: GET
        description: Get decoded transactions by wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: chain
          in: query
          type: string
          description: The chain to query
        - name: from_block
          in: query
          type: integer
          description: The minimum block number from which to get the transactions
        - name: to_block
          in: query
          type: integer
          description: The maximum block number from which to get the transactions.
        - name: from_date
          in: query
          type: string
          description: The start date from which to get the transactions (format in seconds or datestring accepted by momentjs)
        - name: to_date
          in: query
          type: string
          description: Get the transactions up to this date (format in seconds or datestring accepted by momentjs)
        - name: address
          in: path
          type: string
          description: The address of the wallet
          required: true
        - name: include
          in: query
          type: string
          description: If the result should contain the internal transactions.
        - name: cursor
          in: query
          type: string
          description: The cursor returned in the previous response (used for getting the next page).
        - name: order
          in: query
          type: string
          description: The order of the result, in ascending (ASC) or descending (DESC)
        - name: limit
          in: query
          type: integer
          description: The desired page size of the result.
    authentication:
      type: apikey
      key: X-API-Key
      value: '{{env.MORALIS_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: evm-transaction-rest
    port: 8080
    description: REST adapter for EVM API — Transaction. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/transaction/{transaction-hash}
      name: transaction-transaction-hash
      description: REST surface for transaction-transaction_hash.
      operations:
      - method: GET
        name: gettransaction
        description: Get transaction by hash
        call: evm-transaction.gettransaction
        with:
          chain: rest.chain
          transaction_hash: rest.transaction_hash
          include: rest.include
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/transaction/{transaction-hash}/verbose
      name: transaction-transaction-hash-verbose
      description: REST surface for transaction-transaction_hash-verbose.
      operations:
      - method: GET
        name: gettransactionverbose
        description: Get decoded transaction by hash
        call: evm-transaction.gettransactionverbose
        with:
          chain: rest.chain
          transaction_hash: rest.transaction_hash
          include: rest.include
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{address}
      name: address
      description: REST surface for address.
      operations:
      - method: GET
        name: getwallettransactions
        description: Get native transactions by wallet
        call: evm-transaction.getwallettransactions
        with:
          chain: rest.chain
          from_block: rest.from_block
          to_block: rest.to_block
          from_date: rest.from_date
          to_date: rest.to_date
          address: rest.address
          cursor: rest.cursor
          order: rest.order
          limit: rest.limit
          include: rest.include
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{address}/verbose
      name: address-verbose
      description: REST surface for address-verbose.
      operations:
      - method: GET
        name: getwallettransactionsverbose
        description: Get decoded transactions by wallet
        call: evm-transaction.getwallettransactionsverbose
        with:
          chain: rest.chain
          from_block: rest.from_block
          to_block: rest.to_block
          from_date: rest.from_date
          to_date: rest.to_date
          address: rest.address
          include: rest.include
          cursor: rest.cursor
          order: rest.order
          limit: rest.limit
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: evm-transaction-mcp
    port: 9090
    transport: http
    description: MCP adapter for EVM API — Transaction. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: get-transaction-hash
      description: Get transaction by hash
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: evm-transaction.gettransaction
      with:
        chain: tools.chain
        transaction_hash: tools.transaction_hash
        include: tools.include
      outputParameters:
      - type: object
        mapping: $.
    - name: get-decoded-transaction-hash
      description: Get decoded transaction by hash
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: evm-transaction.gettransactionverbose
      with:
        chain: tools.chain
        transaction_hash: tools.transaction_hash
        include: tools.include
      outputParameters:
      - type: object
        mapping: $.
    - name: get-native-transactions-wallet
      description: Get native transactions by wallet
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: evm-transaction.getwallettransactions
      with:
        chain: tools.chain
        from_block: tools.from_block
        to_block: tools.to_block
        from_date: tools.from_date
        to_date: tools.to_date
        address: tools.address
        cursor: tools.cursor
        order: tools.order
        limit: tools.limit
        include: tools.include
      outputParameters:
      - type: object
        mapping: $.
    - name: get-decoded-transactions-wallet
      description: Get decoded transactions by wallet
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: evm-transaction.getwallettransactionsverbose
      with:
        chain: tools.chain
        from_block: tools.from_block
        to_block: tools.to_block
        from_date: tools.from_date
        to_date: tools.to_date
        address: tools.address
        include: tools.include
        cursor: tools.cursor
        order: tools.order
        limit: tools.limit
      outputParameters:
      - type: object
        mapping: $.