Create an ACRCloud account and set up a recognition project — ACRCloud provides an access key and access secret per project, which are used to sign API requests
Construct an HMAC-SHA1 signature for each request: concatenate the HTTP method, endpoint path, access key, data type, signature version, and a Unix timestamp string with newlines between each value, then compute HMAC-SHA1 using your access secret as the key and base64-encode the result
Submit a recognition request by POSTing to the regional identification endpoint (e.g., 'https://identify-eu-west-1.acrcloud.com/v1/identify') with multipart/form-data fields: 'sample' (the audio segment), 'sample_bytes' (byte length of the sample), 'access_key', 'data_type' ('audio' or 'fingerprint'), 'signature_version' ('1'), 'signature', and 'timestamp'
Send audio clips of 10–15 seconds for best recognition accuracy — keep the sample file under 5 MB; ACRCloud recommends using their SDK to generate a compact fingerprint and set 'data_type' to 'fingerprint' to reduce bandwidth compared to sending raw audio
Parse the JSON response: a successful match returns 'status.code' of 0 with a 'metadata' object containing arrays of matching 'music', 'custom_files', or 'humming' results with title, artist, ISRC, and confidence fields; a 'status.code' of 1001 means no result found
For bulk file scanning rather than real-time identification, use ACRCloud's File Scanning API: upload files to a scanning container via POST to the console API and retrieve results asynchronously
Known gotchas
The HMAC-SHA1 signature must be recomputed for every request using the current Unix timestamp — cached or reused signatures will be rejected as replay attacks
ACRCloud's recognition endpoint is region-specific (eu-west-1, us-west-2, ap-southeast-1) — use the endpoint in the region where your project was created; cross-region requests will fail authentication
ACRCloud matches against its licensed music catalog — recognition results are limited to tracks in the catalog; niche or independent music not licensed to ACRCloud will return a 'no result' response even if the audio is a legitimate commercial recording
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp