bitcoin 2.0 parsing engine
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


What is it?

  • Package of mastercoin related tools.
  • The intention is to help finalizing the mastercoin spec, and enable easy further coding.

Based on what?

Aim of this package

  • Live update - direct "realtime" interaction with the bitcoin network (using sx).
  • Multi platform - python runs on any arch.
  • No additional database is needed (obelisk has its own and can be used remotely, and the parser/validator use filesystem and a python dict).
  • Alternative code base - use libbitcoin instead of "satoshi client".
  • Simple cool and mobile friendly web UI.
  • Send transaction directly using a hybrid web wallet (not "Advisor").
  • Support for offline wallets.
  • Generate parsed data snapshots for download.
  • Low CPU requirement on server side (server serves static html files and json which are rendered on the client side).
  • API (json).

Let's see something

Already implemented

Example UI pages

TMSC on example address showing distributed exchange activity:

MSC on mastercoin-tools tips jar address:

Known forks There you could also find better detailed documentation for API (including wallet), json format, etc.

Parsing usage examples

$ python -h
Usage: [options]

  -h, --help            show this help message and exit
  -d, --debug           turn debug mode on
  -t SINGLE_TX, --transaction=SINGLE_TX
                        hash of a specific tx to parse
                        start the parsing at a specific block height (default
                        is last)
  -a, --archive-parsed-data
                        archive the parsed data of tx addr and general for
                        others to download
$ python -t aa64fd6088532156a37670e6cbd175c74bb101f1406517613a1a0ae6bc02fb02
[I] main: {'currency_type_str': 'Mastercoin', 'transaction_type_str': 'Simple send', 'currencyId': '00000001', 'transaction_method_str': 'multisig_simple', 'recipientAddress': '17RVTF3vJzsuaGh7a94DFkg4msJ7FcBYgX', 'padding': '000000', 'amount': '0000000002faf080', 'changeAddress': '182osbPxCo88oaSX4ReJwUr9uAcchmJVaL', 'formatted_amount': '0.50000000', 'baseCoin': '00', 'dataSequenceNum': '45', 'transactionType': '00000000'}
$ python -t 298a6af50089184f7b434c700f83f390d5dfdd5dac10b39b95f99036a5c66df7
[I] main: {'currency_type_str': 'Test Mastercoin', 'transaction_type_str': 'Simple send', 'currencyId': '00000002', 'transaction_method_str': 'multisig_simple', 'recipientAddress': '17RVTF3vJzsuaGh7a94DFkg4msJ7FcBYgX', 'padding': '000000', 'amount': '0000000000000003', 'changeAddress': '182osbPxCo88oaSX4ReJwUr9uAcchmJVaL', 'formatted_amount': '0.00000003', 'baseCoin': '00', 'dataSequenceNum': '45', 'transactionType': '00000000'}
$ python -h
Usage: [options]

  -h, --help   show this help message and exit
  -d, --debug  turn debug mode on


BTC/Mastercoins Tips Jar: