Tool Details: asset_pin

Basic Information

Tool Name:asset_pin
Asset Name:Pin Asset
Description:Snapshot any resolvable metadata value into your a/ content-addressed store. Idempotent — the same value produces the same hash. Use to freeze a venue op or workspace value at a specific version. Returns {ref, id}; historical {path, hash} aliases are also included.
Adapter:asset
Asset Hash:0x33117e91ab2c68d5e73b213ee383f33f8765e39ebca8294cec7173f7114dae9e
Input
PropertyTypeDescription
refstringSource metadata reference. Any resolvable asset address.
pathstringDeprecated alias for ref.
idstringDeprecated alias for ref.
Output
PropertyTypeDescription
refstringCaller's DID URL for the pinned asset
pathstringCompatibility alias for ref
hashstringCompatibility alias for id
idstringHex CAD3 hash of the pinned metadata

MCP Tool Usage Examples

This tool can be called via the MCP (Model Context Protocol) endpoint. Here are examples of how to use it:

JSON-RPC Call Example:

POST to https://venue-3.covia.ai/mcp

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "asset_pin",
    "arguments": {
      "input": "your input here"
    }
  }
}
cURL Example:
curl -X POST https://venue-3.covia.ai/mcp \\
  -H "Content-Type: application/json" \\
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "asset_pin",
      "arguments": {
        "input": "your input here"
      }
    }
  }'
Python Example:
import requests
import json

url = "https://venue-3.covia.ai/mcp"
payload = {
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
        "name": "asset_pin",
        "arguments": {
            "input": "your input here"
        }
    }
}

response = requests.post(url, json=payload)
result = response.json()
print(result)
JavaScript/Node.js Example:
const fetch = require('node-fetch');

const url = 'https://venue-3.covia.ai/mcp';
const payload = {
    jsonrpc: '2.0',
    id: 1,
    method: 'tools/call',
    params: {
        name: 'asset_pin',
        arguments: {
            input: 'your input here'
        }
    }
};

fetch(url, {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json'
    },
    body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data));

Asset Metadata

{
	"name": "Pin Asset",
	"description": "Snapshot any resolvable metadata value into your a/ content-addressed store. Idempotent — the same value produces the same hash. Use to freeze a venue op or workspace value at a specific version. Returns {ref, id}; historical {path, hash} aliases are also included.",
	"operation": {
		"adapter": "asset:pin",
		"readOnly": false,
		"toolName": "asset_pin",
		"input": {
			"type": "object",
			"properties": {
				"ref": { "type": "string", "description": "Source metadata reference. Any resolvable asset address." },
				"path": { "type": "string", "deprecated": true, "description": "Deprecated alias for ref." },
				"id": { "type": "string", "deprecated": true, "description": "Deprecated alias for ref." }
			},
			"anyOf": [{ "required": ["ref"] }, { "required": ["path"] }, { "required": ["id"] }]
		},
		"output": {
			"type": "object",
			"properties": {
				"ref": { "type": "string", "description": "Caller's DID URL for the pinned asset" },
				"id": { "type": "string", "description": "Hex CAD3 hash of the pinned metadata" },
				"path": { "type": "string", "deprecated": true, "description": "Compatibility alias for ref" },
				"hash": { "type": "string", "deprecated": true, "description": "Compatibility alias for id" }
			}
		}
	}
}

Navigation

Back to adapter details

Back to all adapters

Back to index