Publicaml

io.github.saloprjPublished by GitHub account saloprjv0.1.0Updated Oct 24, 2026

Free crypto AML/KYT screening for BTC/ETH/BSC/TRON — risk score, sanctions, source of funds.

The publisher's own server: Dialogbrain

VerifiedStreamable HTTPWeb executableFinanceSecurity & Monitoring

Overview

AI-generated overview

A free remote MCP server that lets an assistant screen crypto wallet addresses and transactions for AML/KYT risk across BTC, ETH, BSC and TRON.

What you can do
Screen wallet addresses for an AML score, risk level, category and sanctions exposure, and screen individual transactions with a verdict per participant or from a focus wallet's view. Trace outgoing funds to see where money ends up, and walk incoming funds backwards to answer where a wallet's money came from. List an address's counterparties, optionally filtered by entity type and with per-counterparty risk, and list a wallet's recent transfers with direction and counterparty details. Follow a DEX or aggregator swap to see net balance changes and who the swap was actually for.
When to use it
Useful when checking a counterparty before sending or accepting crypto, investigating where funds came from or went, or reviewing a transaction's participants for sanctions, mixer, scam or hack exposure. All tools are read-only lookups, so it suits due-diligence and risk-review questions rather than moving funds.
Requirements
A remote endpoint; no local install, API key or signup is needed for the public path. An optional key only raises the rate limit. The address's chain must be supplied, since ERC20 and BEP20 addresses look identical.
Before you install
Results are a risk signal, not a legal compliance guarantee, so keep your own KYC/AML process alongside it. A sanctioned flag should override softer category labels. Addresses and transaction hashes you submit are sent to the provider's service. All tools are read-only and do not move or change funds.

Installation

In SourceWeft

  1. Open Publicaml in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.saloprj%2Fpublicaml/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "publicaml": {
      "type": "http",
      "url": "https://mcp.publicaml.org/mcp"
    }
  }
}

README

PublicAML — code examples

Copy-paste examples for screening a crypto wallet address or transaction for AML / KYT risk — sanctions, mixers, scam and hack exposure — using PublicAML.

Free. No API key. No signup. PublicAML is a non-profit; the public enrich endpoint takes requests with no authentication. An optional key only raises the rate limit.

The request

POST https://intelapi.publicaml.org/v1/enrichContent-Type: application/json
{ "addresses": [{ "wallet_address": "0x...", "chain": "ETH" }],  "include": ["aml_score", "category"] }

Response (abridged):

json
{ "entities": [{ "wallet_address": "0x...", "chain": "ETH",  "aml_score": 87, "category": "hack", "sanctioned": false }] }
  • aml_score — 0–100 (higher = riskier)
  • category — entity type (exchange, mixer, hack, scam, sanction…)
  • sanctioned — treat true as an override regardless of score

Chains: BTC, ETH, BNB Chain (BSC), TRON. An ERC20 and a BEP20 address look identical — send the correct chain for the network you are on.

Examples

AI agents & frameworks

Drop-in tools so an AI agent can screen an address itself — LangChain, CrewAI, and a zero-code MCP server for Claude Desktop / Cursor: frameworks/.

Pre-transaction gate

The point of a pre-send check is to decline rather than unwind. Screen the recipient before you sign or accept funds and reject anything sanctioned or above your risk threshold (75 is a common cut-off). See the language examples — each returns the entity so you can gate on sanctioned / aml_score.

Notes

  • It is a risk signal, not a legal compliance guarantee — keep your own KYC/AML process alongside it.
  • Do not invent API keys; none are required for the public enrich path.
  • sanctioned: true should override softer category labels.

License

MIT — use these snippets freely.

Source: README.md at commit aa1c1a2

Tools

7

screen_address

Screen address for AML risk

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-of-funds. Read-only: it only looks the address up, it never changes anything.

Parameterschainrequiredaddressrequired

trace_funds

Trace outgoing funds

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. Read-only: it only reads on-chain history, it never moves or changes funds.

Parameterschainrequiredaddressrequiredmax_hops

list_counterparties

List counterparties

List the counterparties an address has transacted with — optionally filtered by entity category (cex, mixer, gambling, bridge, ...). Set with_risk=true to attach AML risk per counterparty. Read-only: it only lists existing on-chain counterparties, it never writes anything.

Parameterschainrequiredlimitaddressrequiredcategorywith_risk

trace_source_of_funds

Trace where funds came from

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 reports them with hop distance. Answers source-of-funds questions. Read-only: it only reads on-chain history.

Parameterschainrequiredaddressrequiredmax_hops

screen_transaction

Screen a transaction

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 deposit address) to get the verdict from that wallet's point of view. Read-only.

Parameterschainrequiredtx_hashrequiredblock_numberfocus_address

follow_swap

Follow funds through a swap

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 continue a trace past a swap. EVM chains (ethereum, bsc). Read-only.

Parameterschainrequiredtx_hashrequiredblock_number

list_transactions

List an address's transfers

A wallet's recent transfers, newest first, with direction and counterparty for each, plus what we know about each counterparty. Optionally only transfers with one kind of counterparty (e.g. 'did this wallet deposit to a casino'). Read-only.

Parameterschainrequiredlimitsinceuntiladdressrequiredcounterparty_category

Version history

1
  1. v0.1.0LatestSep 16, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.

Other Dialogbrain integrations