{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_pcb4yaktp873","handle":"publicaml","url":"https://wellknown.network/agents/publicaml","links":{"self":"https://wellknown.network/agents/publicaml/record.json","html":"https://wellknown.network/agents/publicaml","markdown":"https://wellknown.network/agents/publicaml/record.md","api":"https://wellknown.network/api/v1/agents/publicaml","status":"https://wellknown.network/api/v1/agents/publicaml/status","claim":"https://wellknown.network/agents/publicaml/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/publicaml/claim.json","badge":"https://wellknown.network/agents/publicaml/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/publicaml/history","tools":"https://wellknown.network/api/v1/agents/publicaml/tools"},"ard":{"identifier":"urn:air:mcp.publicaml.org:server:publicaml","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"publicaml","summary":"Free crypto AML/KYT screening for BTC/ETH/BSC/TRON — risk score, sanctions, source of funds.","description":"Free crypto AML/KYT screening for BTC/ETH/BSC/TRON — risk score, sanctions, source of funds.","publisher":{"name":"saloprj","url":null},"homepage":"https://publicaml.org","repository":"https://github.com/saloprj/publicaml-examples","version":"0.1.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://mcp.publicaml.org/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-08-29T08:43:48.949563Z","publishedAt":"2026-08-29T08:43:48.949563Z","registryName":"io.github.saloprj/publicaml"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"finance.markets","name":"Markets & Trading","confidence":1,"provenance":"derived"},{"slug":"finance.banking","name":"Banking","confidence":0.583,"provenance":"derived"},{"slug":"knowledge.knowledge-graph","name":"Knowledge Graphs","confidence":0.525,"provenance":"derived"}],"categories":["finance","knowledge"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 5h ago.","lastOkAt":"2026-10-10T00:29:28.844Z","lastProbedAt":"2026-10-10T00:29:28.844Z","statusComputedAt":"2026-10-10T00:30:12.018Z","reliability30d":{"probes":110,"successRate":1,"p50Ms":117,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":109,"ok":109,"authBoundaryOk":0,"serviceOk":109,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-10T00:29:28.844Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":113,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T18:26:15.227Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":112,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T11:25:57.548Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":112,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T04:28:49.275Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":137,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T21:23:39.523Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":112,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T15:23:21.904Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":203,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T08:28:08.339Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":135,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T01:22:24.279Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":89,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T19:24:23.622Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":92,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T12:31:17.940Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":111,"error":null,"detail":{"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"toolCount":7,"toolsHash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","serverName":"publicaml","capabilities":["tools"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"screen_address","description":"Screen a crypto wallet address for AML/KYT risk. Returns an AML score (0-100), risk_level (LOW/MEDIUM/HIGH/CRITICAL), category, sanctioned exposure and source-o"},{"name":"trace_funds","description":"Follow the OUTGOING funds from an address across the chain and report where the money ends up (exchanges, mixers, sanctioned wallets) and how many hops away. Re"},{"name":"list_counterparties","description":"List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attac"},{"name":"trace_source_of_funds","description":"Walk an address's INCOMING funds backwards to answer 'where did this wallet's money come from'. Stops at labelled entities (exchanges, mixers, services) and rep"},{"name":"screen_transaction","description":"Screen one transaction by hash: what moved, who took part, a label and AML risk for every participant, and an overall verdict. Pass focus_address (e.g. your own"},{"name":"follow_swap","description":"For one transaction that went through a DEX or aggregator, show the net balance change per address and asset and flag who the swap was actually for. Use it to c"},{"name":"list_transactions","description":"A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with o"}],"package":null,"toolSurface":{"id":"ts_dsswmc2xb3z8","endpointId":"ep_tnegrg4z9bxh","hash":"524156be23bd97694e4aef68f6fd868ac1bf9161725f354ecd52e85db36bddf4","toolCount":7,"serverName":"publicaml","serverVersion":"1.1.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-29T20:25:52.899Z","lastSeenAt":"2026-10-10T00:29:28.851Z","observations":39,"toolNames":["screen_address","trace_funds","list_counterparties","trace_source_of_funds","screen_transaction","follow_swap","list_transactions"],"distinctSurfaces":2},"endpointFacts":[{"id":"ep_tnegrg4z9bxh","url":"https://mcp.publicaml.org/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-08T08:28:08.358Z","auth":{"observedAt":"2026-10-08T08:28:08.414Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-08T08:28:08.432Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"publicaml.org","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-03T15:50:40.000Z","validTo":"2026-12-02T16:50:38.000Z","daysToExpiry":53,"sanCount":2,"fingerprint256":"58:C6:45:E5:B5:DC:EE:D3:DD:85:61:36:CC:EF:C5:0D:B9:77:71:30:8D:3C:40:87:3E:42:26:2B:15:38:CA:CB"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.saloprj/publicaml","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.saloprj%2Fpublicaml","firstSeenAt":"2026-09-07T02:19:07.524Z","fetchedAt":"2026-10-08T08:22:39.792Z","normalizedAt":"2026-10-08T08:22:39.792Z"}]},"firstSeenAt":"2026-09-07T02:19:07.524Z","updatedAt":"2026-10-10T00:31:27.121Z"}