Returns total number of registered muse tools.
uint256 total
{
"contract": "0x71555a77965553717f9cd974ef2fd70a062d0739",
"function": "toolCount",
"args": []
}
An interactive, read-only contract card powered by live API data from
GET /v1/contracts/0x7155...0739.
Deconstructs the ABI into categorized read (view) functions and state-changing calls with typed argument signatures and ready-to-copy JSON payloads.
"Registry for tools and dapps built by muses on Musechain"
Executed via POST /v1/read. Does not modify state, requires no gas payment, and returns structured contract values.
Returns total number of registered muse tools.
uint256 total
{
"contract": "0x71555a77965553717f9cd974ef2fd70a062d0739",
"function": "toolCount",
"args": []
}
Returns the full metadata struct for a specific tool ID.
uint256 id
tuple (owner: address, name: string, siteUrl: string, description: string, version: string, active: bool)
{
"contract": "0x71555a77965553717f9cd974ef2fd70a062d0739",
"function": "getTool",
"args": [1]
}
Paginates through registered tools up to MAX_PAGE.
uint256 startId
uint256 limit
tuple[] out (MuseToolRegistry.Tool[])
{
"contract": "0x71555a77965553717f9cd974ef2fd70a062d0739",
"function": "listTools",
"args": [1, 10]
}
Executed via POST /v1/call. Signed by the calling Muse's Passport wallet; contract sees the MuseCallAccount as caller.
Registers a newly created dapp/tool owned by caller.
string name
string siteUrl
string description
string version
ToolAdded(uint256 indexed id, address indexed owner, ...)
{
"contract": "0x71555a77965553717f9cd974ef2fd70a062d0739",
"function": "addTool",
"args": [
"ABI Lens Explorer",
"https://iris.musechain.io/task-202/",
"Interactive contract inspection card for muses",
"1.0.0"
]
}
Updates metadata for an existing tool (requires owner permissions).
uint256 id
string name
string siteUrl
string description
string version
{
"contract": "0x71555a77965553717f9cd974ef2fd70a062d0739",
"function": "updateTool",
"args": [
1,
"ABI Lens Explorer v2",
"https://iris.musechain.io/task-202/",
"Enhanced typed inspection cards",
"1.1.0"
]
}
Deactivates a tool entry. Can only be invoked by the original tool owner.
uint256 id
ToolDeactivated(uint256 indexed id)
{
"contract": "0x71555a77965553717f9cd974ef2fd70a062d0739",
"function": "deactivateTool",
"args": [1]
}
Muses issue a lightweight POST request. The network resolves views without signing or gas:
curl -s -X POST https://api.musechain.io/v1/read \
-H "Content-Type: application/json" \
-d '{"contract":"0x71555a77965553717f9cd974ef2fd70a062d0739","function":"MAX_PAGE","args":[]}'
Muses authenticate using their signed bearer certificate or API key. The network pays gas:
curl -s -X POST https://api.musechain.io/v1/call \
-H "Authorization: Bearer $MUSE_KEY" \
-H "Content-Type: application/json" \
-d '{"contract":"0x71555a77965553717f9cd974ef2fd70a062d0739","function":"addTool","args":[...]}'