Moralis · Capability
EVM API — Get Metadata
EVM API — Get Metadata. 4 operations. Lead operation: Get ERC20 token metadata by contract. Self-contained Naftiko capability covering one Moralis business surface.
What You Can Do
GET
Gettokenmetadata
— Get ERC20 token metadata by contract
/v1/erc20/metadata
GET
Gettokenmetadatabysymbol
— Get ERC20 token metadata by symbols
/v1/erc20/metadata/symbols
GET
Getnftmetadata
— Get NFT metadata
/v1/nft/{address}/{token-id}
GET
Resyncmetadata
— Resync NFT metadata
/v1/nft/{address}/{token-id}/metadata/resync
MCP Tools
get-erc20-token-metadata-contract
Get ERC20 token metadata by contract
read-only
idempotent
get-erc20-token-metadata-symbols
Get ERC20 token metadata by symbols
read-only
idempotent
get-nft-metadata
Get NFT metadata
read-only
idempotent
resync-nft-metadata
Resync NFT metadata
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: EVM API — Get Metadata
description: 'EVM API — Get Metadata. 4 operations. Lead operation: Get ERC20 token metadata by contract. Self-contained
Naftiko capability covering one Moralis business surface.'
tags:
- Moralis
- Get Metadata
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
MORALIS_API_KEY: MORALIS_API_KEY
capability:
consumes:
- type: http
namespace: evm-get-metadata
baseUri: https://deep-index.moralis.io/api/v2.2
description: EVM API — Get Metadata business capability. Self-contained, no shared references.
resources:
- name: erc20-metadata
path: /erc20/metadata
operations:
- name: gettokenmetadata
method: GET
description: Get ERC20 token metadata by contract
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: chain
in: query
type: string
description: The chain to query
- name: addresses
in: query
type: array
description: The addresses to get metadata for
required: true
- name: erc20-metadata-symbols
path: /erc20/metadata/symbols
operations:
- name: gettokenmetadatabysymbol
method: GET
description: Get ERC20 token metadata by symbols
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: chain
in: query
type: string
description: The chain to query
- name: symbols
in: query
type: array
description: The symbols to get metadata for
required: true
- name: nft-address-token_id
path: /nft/{address}/{token_id}
operations:
- name: getnftmetadata
method: GET
description: Get NFT metadata
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: chain
in: query
type: string
description: The chain to query
- name: address
in: path
type: string
description: The address of the NFT contract
required: true
- name: token_id
in: path
type: string
description: The ID of the token
required: true
- name: format
in: query
type: string
description: The format of the token ID
- name: normalizeMetadata
in: query
type: boolean
description: Should normalized metadata be returned?
- name: media_items
in: query
type: boolean
description: Should preview media data be returned?
- name: include_prices
in: query
type: boolean
description: Should NFT last sale prices be included in the result?
- name: nft-address-token_id-metadata-resync
path: /nft/{address}/{token_id}/metadata/resync
operations:
- name: resyncmetadata
method: GET
description: Resync NFT metadata
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: chain
in: query
type: string
description: The chain to query
- name: address
in: path
type: string
description: The address of the NFT contract
required: true
- name: token_id
in: path
type: string
description: The ID of the token
required: true
- name: flag
in: query
type: string
description: The type of resync to operate
- name: mode
in: query
type: string
description: To define the behaviour of the endpoint
authentication:
type: apikey
key: X-API-Key
value: '{{env.MORALIS_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: evm-get-metadata-rest
port: 8080
description: REST adapter for EVM API — Get Metadata. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/erc20/metadata
name: erc20-metadata
description: REST surface for erc20-metadata.
operations:
- method: GET
name: gettokenmetadata
description: Get ERC20 token metadata by contract
call: evm-get-metadata.gettokenmetadata
with:
chain: rest.chain
addresses: rest.addresses
outputParameters:
- type: object
mapping: $.
- path: /v1/erc20/metadata/symbols
name: erc20-metadata-symbols
description: REST surface for erc20-metadata-symbols.
operations:
- method: GET
name: gettokenmetadatabysymbol
description: Get ERC20 token metadata by symbols
call: evm-get-metadata.gettokenmetadatabysymbol
with:
chain: rest.chain
symbols: rest.symbols
outputParameters:
- type: object
mapping: $.
- path: /v1/nft/{address}/{token-id}
name: nft-address-token-id
description: REST surface for nft-address-token_id.
operations:
- method: GET
name: getnftmetadata
description: Get NFT metadata
call: evm-get-metadata.getnftmetadata
with:
chain: rest.chain
address: rest.address
token_id: rest.token_id
format: rest.format
normalizeMetadata: rest.normalizeMetadata
media_items: rest.media_items
include_prices: rest.include_prices
outputParameters:
- type: object
mapping: $.
- path: /v1/nft/{address}/{token-id}/metadata/resync
name: nft-address-token-id-metadata-resync
description: REST surface for nft-address-token_id-metadata-resync.
operations:
- method: GET
name: resyncmetadata
description: Resync NFT metadata
call: evm-get-metadata.resyncmetadata
with:
chain: rest.chain
address: rest.address
token_id: rest.token_id
flag: rest.flag
mode: rest.mode
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: evm-get-metadata-mcp
port: 9090
transport: http
description: MCP adapter for EVM API — Get Metadata. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: get-erc20-token-metadata-contract
description: Get ERC20 token metadata by contract
hints:
readOnly: true
destructive: false
idempotent: true
call: evm-get-metadata.gettokenmetadata
with:
chain: tools.chain
addresses: tools.addresses
outputParameters:
- type: object
mapping: $.
- name: get-erc20-token-metadata-symbols
description: Get ERC20 token metadata by symbols
hints:
readOnly: true
destructive: false
idempotent: true
call: evm-get-metadata.gettokenmetadatabysymbol
with:
chain: tools.chain
symbols: tools.symbols
outputParameters:
- type: object
mapping: $.
- name: get-nft-metadata
description: Get NFT metadata
hints:
readOnly: true
destructive: false
idempotent: true
call: evm-get-metadata.getnftmetadata
with:
chain: tools.chain
address: tools.address
token_id: tools.token_id
format: tools.format
normalizeMetadata: tools.normalizeMetadata
media_items: tools.media_items
include_prices: tools.include_prices
outputParameters:
- type: object
mapping: $.
- name: resync-nft-metadata
description: Resync NFT metadata
hints:
readOnly: true
destructive: false
idempotent: true
call: evm-get-metadata.resyncmetadata
with:
chain: tools.chain
address: tools.address
token_id: tools.token_id
flag: tools.flag
mode: tools.mode
outputParameters:
- type: object
mapping: $.