Introducing XCM Monitoring Server

We are pleased to announce the first release of the XCM Monitoring Server.

You can run the server using Docker and subscribe to multiple origin and destination chains to receive notifications when XCM interactions of your interest are executed on the destination chain. The server facilitates connection through both RPC and smoldot.

For more details, please visit our repository: GitHub - sodazone/xcm-monitoring: XCM Monitoring Server

Happy to answer any questions!

1 Like

Do you have an example deployment or something to show the features?

Is this a library, or an app, or both?

Does it able to detect, and help debug the recent Kusama XCM issue? XCM Upgrade To v3

It is a server that can be deployed within your infrastructure, and we’ve facilitated the process by providing Docker images for easy setup.

This server enables you to connect to multiple chains using either RPC or Smoldot. Here’s an example configuration in TOML format:

name = "polkadot"
id = 0
throttle = 1_000

  type = "smoldot"

name = "asset_hub"
id = 1_000
relay = "polkadot"

  type = "rpc"
  url = "wss://"

name = "acala"
id = 2_000
relay = "polkadot"
throttle = 1_000

  type = "smoldot"
  spec = "./chain-specs/acala.json"

Once the server is running, you can subscribe to receive notifications for XCM executions by providing a webhook endpoint. For instance:

curl '' \
--header 'Content-Type: application/json' \
--data '[{
    "id": "acala-transfers",
    "origin": 2000,
    "senders": "*",
    "destinations": [0, 1000],
    "notify": {
        "type": "webhook",
        "url": ""

You can find more details in the documentation here:

Currently, notifications are triggered only upon receival, matched to a send. If you have subscriptions to the involved chains with a wildcard address, you’ll notice the absence of notifications on the destination chains.

We have plans in the near future to expand the types of events you can receive during the XCM journey, e.g. SEND, RECEIVE, and HOP.