@parabolicfamily/mcp 0.1.8 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -10
- package/abi/ParabolicAggregatorRouter.json +2259 -0
- package/abi/ParabolicLaunchFactoryV2.json +2542 -0
- package/abi/ParabolicPairProbe.json +429 -0
- package/abi/ParabolicRouterV2.json +1171 -0
- package/abi/ParabolicSessionModule.json +1955 -0
- package/abi/deployments.json +258 -0
- package/dist/abi.d.ts +3 -1
- package/dist/abi.js +3 -1
- package/dist/abi.js.map +1 -1
- package/dist/chain.d.ts +12 -1
- package/dist/chain.js +13 -4
- package/dist/chain.js.map +1 -1
- package/dist/chains.d.ts +17 -10
- package/dist/chains.js +21 -16
- package/dist/chains.js.map +1 -1
- package/dist/config.d.ts +36 -11
- package/dist/config.js +98 -20
- package/dist/config.js.map +1 -1
- package/dist/deployed.d.ts +80 -0
- package/dist/deployed.js +95 -0
- package/dist/deployed.js.map +1 -0
- package/dist/docs.d.ts +13 -0
- package/dist/docs.js +68 -12
- package/dist/docs.js.map +1 -1
- package/dist/parabolic.d.ts +17 -0
- package/dist/parabolic.js +55 -8
- package/dist/parabolic.js.map +1 -1
- package/dist/quote-unit.js +49 -28
- package/dist/quote-unit.js.map +1 -1
- package/dist/referrals.d.ts +77 -0
- package/dist/referrals.js +55 -0
- package/dist/referrals.js.map +1 -0
- package/dist/restapi.d.ts +4 -3
- package/dist/restapi.js +19 -4
- package/dist/restapi.js.map +1 -1
- package/dist/routed.d.ts +389 -0
- package/dist/routed.js +413 -0
- package/dist/routed.js.map +1 -0
- package/dist/server.d.ts +1 -1
- package/dist/server.js +84 -6
- package/dist/server.js.map +1 -1
- package/dist/tx.d.ts +6 -0
- package/dist/tx.js +12 -2
- package/dist/tx.js.map +1 -1
- package/dist/venues.d.ts +49 -0
- package/dist/venues.js +44 -0
- package/dist/venues.js.map +1 -0
- package/package.json +1 -1
- package/src/abi.ts +3 -1
- package/src/chain.ts +19 -4
- package/src/chains.ts +33 -20
- package/src/config.ts +112 -22
- package/src/deployed.ts +128 -0
- package/src/docs.ts +70 -12
- package/src/parabolic.ts +59 -8
- package/src/quote-unit.ts +47 -6
- package/src/referrals.ts +61 -0
- package/src/restapi.ts +18 -4
- package/src/routed.ts +499 -0
- package/src/server.ts +116 -6
- package/src/tx.ts +13 -2
- package/src/venues.ts +93 -0
package/README.md
CHANGED
|
@@ -22,6 +22,44 @@ and whether `<ticker>.parabolic.family` is free. It is advice and not a gate —
|
|
|
22
22
|
unique symbol — and the hostname is the one exclusive thing, held by the oldest coin with that ticker. The
|
|
23
23
|
ticker is normalised the way the site normalises it, so an impossible one is refused before a request is spent.
|
|
24
24
|
|
|
25
|
+
## What changed in 0.2.0
|
|
26
|
+
|
|
27
|
+
Five tools for coins made on **other launchpads** (pons on Robinhood Chain, SolonPad on Arc), traded through
|
|
28
|
+
Parabolic's aggregator router; every call that worked in 0.1.9 works unchanged.
|
|
29
|
+
|
|
30
|
+
- `parabolic.list_venue_coins` reads that launchpad's subgraph when `PARABOLIC_SUBGRAPH_URL_PONS_RHC` (or
|
|
31
|
+
`..._SOLONPAD_ARC`) is set.
|
|
32
|
+
- `parabolic.quote_routed_buy` / `quote_routed_sell` and `build_routed_buy_tx` / `build_routed_sell_tx` encode
|
|
33
|
+
`ParabolicAggregatorRouter.buy` / `sell` byte for byte as the site does, with no fee voucher and, for an ERC-20
|
|
34
|
+
input, an exact-amount approval of the router in place of the site's Permit2 signature. The coin lives on the
|
|
35
|
+
other launchpad's contracts; the router charges Parabolic's routed fee (its `defaultFeeBps`, 60 bps at deploy)
|
|
36
|
+
on top of that launchpad's own, and every answer shows both.
|
|
37
|
+
- They refuse, by name, until the chain's deployment record carries the router under `aggregator`, when the
|
|
38
|
+
router has the launchpad switched off, when the coin is not that launchpad's, and when any read fails.
|
|
39
|
+
|
|
40
|
+
## What changed in 0.1.9
|
|
41
|
+
|
|
42
|
+
0.1.9 makes **Robinhood Chain (4663) a chain this server serves**. Every call that worked before works
|
|
43
|
+
unchanged and means the same chain it meant: an unqualified address is still Arc, permanently.
|
|
44
|
+
|
|
45
|
+
- **Set `PARABOLIC_CHAIN_ID=4663` and nothing else.** The chain's public RPC, its factory and its start
|
|
46
|
+
block ship with the package, read from the deploy's own record rather than typed in. Until 0.1.9 the
|
|
47
|
+
server answered `chain: "rhc"` with "Parabolic is not deployed on Robinhood Chain yet", which had been
|
|
48
|
+
false since 19 September 2026, and an operator who set the chain id got Arc's RPC and no factory.
|
|
49
|
+
- **`list_coins` reaches that board.** One site serves both, and it answers for its own chain when nothing
|
|
50
|
+
names one, so the listing now names the chain (`?chain=rhc`) the way the Telegram bot does. Arc's URLs
|
|
51
|
+
are byte-identical to what they have always been, because Arc's prefix is empty.
|
|
52
|
+
- **No routed buy there yet.** The chain deploys `ParabolicRouter`, which takes the referral code and the
|
|
53
|
+
note as arguments; `ParabolicMemoRouter` is Arc's and the two share no function selector, so this
|
|
54
|
+
package encodes no routed call on chain 4663. `build_buy_tx` goes straight to the curve and
|
|
55
|
+
`build_launch_tx` to the factory, which is the same call on every chain. The referral share itself is
|
|
56
|
+
paid on that chain, credited by the indexer through the same ledger as Arc's memo, so what is missing
|
|
57
|
+
here is the encoder and not the payout: `parabolic.docs` and the buy payload both say so, and passing
|
|
58
|
+
`memo` is refused by name rather than by asking for a variable that must stay unset.
|
|
59
|
+
- **`parabolic.docs` states Arc mainnet as live.** It described chain 5042 as "unofficial until Circle
|
|
60
|
+
publishes it" and Arc's launch fee as 1e18; mainnet has been public since 16 September 2026 and the fee
|
|
61
|
+
has been 0 since the 19th. The fee is read from the factory and never written down.
|
|
62
|
+
|
|
25
63
|
## What changed in 0.1.7 (for an existing consumer: nothing has to)
|
|
26
64
|
|
|
27
65
|
0.1.7 makes the server chain-aware. **Every call that worked in 0.1.6 works unchanged and means the same
|
|
@@ -52,13 +90,13 @@ mainnet by mistake, and `protocol_stats` reports the chain and RPC host the serv
|
|
|
52
90
|
|
|
53
91
|
| Variable | Meaning | Default |
|
|
54
92
|
|---|---|---|
|
|
55
|
-
| `PARABOLIC_CHAIN_ID` | 5042002 Arc Testnet,
|
|
56
|
-
| `PARABOLIC_RPC_URL` |
|
|
93
|
+
| `PARABOLIC_CHAIN_ID` | 5042 Arc mainnet, 5042002 Arc Testnet, 4663 Robinhood Chain | `5042` |
|
|
94
|
+
| `PARABOLIC_RPC_URL` | JSON-RPC endpoint | the public endpoint for the chain id |
|
|
57
95
|
| `PARABOLIC_FACTORY` | `ParabolicLaunchFactory`: coin lookups and launch transactions | the deployment for the chain id |
|
|
58
|
-
| `PARABOLIC_MEMO_ROUTER` | `ParabolicMemoRouter`: the atomic launch-and-buy and the referral-carrying buy | the deployment for the chain id |
|
|
96
|
+
| `PARABOLIC_MEMO_ROUTER` | `ParabolicMemoRouter`: the atomic launch-and-buy and the referral-carrying buy. Refused on a chain whose record deploys `ParabolicRouter` and no memo router, because the two share no function selector and a routed build against that address would revert | the deployment for the chain id |
|
|
59
97
|
| `PARABOLIC_EURC` | EURC address, only for EURC-quoted coins | the deployment for the chain id |
|
|
60
98
|
| `PARABOLIC_SUBGRAPH_URL` | Subgraph endpoint: richer listings, holders, 24h volume, protocol stats | unset (the public API is used instead) |
|
|
61
|
-
| `PARABOLIC_EXPLORER_URL` | Block explorer the address and transaction links are built from |
|
|
99
|
+
| `PARABOLIC_EXPLORER_URL` | Block explorer the address and transaction links are built from | the explorer for the chain id |
|
|
62
100
|
| `PARABOLIC_HOOK` | `ParabolicHook` address | read from `factory.memeHook()` |
|
|
63
101
|
| `PARABOLIC_ARC_MEMO` | Arc `Memo` system contract | `0x5294E9927c3306DcBaDb03fe70b92e01cCede505` |
|
|
64
102
|
| `PARABOLIC_AGENT_REGISTRY` | Arc's ERC-8004 `IdentityRegistry`: `agent_status`, `build_register_agent_tx` and the `pair: "Agents"` listing filter | the registry Arc publishes for the chain id (Arc Testnet only, today) |
|
|
@@ -66,7 +104,8 @@ mainnet by mistake, and `protocol_stats` reports the chain and RPC host the serv
|
|
|
66
104
|
| `PARABOLIC_FACTORY_START_BLOCK` | First block of the `TokenLaunched` scan, used only when neither a subgraph nor the API is available | the factory's deployment block |
|
|
67
105
|
|
|
68
106
|
The API default follows the chain: Arc Testnet reads the testnet site (`https://parabolic-testnet.vercel.app/api/v1`,
|
|
69
|
-
live testnet data), Arc
|
|
107
|
+
live testnet data), Arc and Robinhood Chain both read `https://www.parabolic.family/api/v1`, which serves
|
|
108
|
+
both boards and is asked for the right one by name. Running against a fork or your own
|
|
70
109
|
factory: the server skips the site's API automatically whenever `PARABOLIC_FACTORY` differs from the
|
|
71
110
|
built-in address for the chain or `PARABOLIC_RPC_URL` points anywhere but the chain's own endpoint, and
|
|
72
111
|
reads the chain instead. To force that for any other reason, set `PARABOLIC_API_URL=""`.
|
|
@@ -77,11 +116,11 @@ with source, before you sign anything:
|
|
|
77
116
|
|
|
78
117
|
| Contract | Arc Testnet (5042002) |
|
|
79
118
|
|---|---|
|
|
80
|
-
| `ParabolicLaunchFactory` | [`0x2E06eD99bD7D164458847D186B282B23700b2C63`](https://testnet.
|
|
81
|
-
| `ParabolicMemoRouter` | [`0x1381567ea31a094e64f6B39Bd880d0b59c48e08F`](https://testnet.
|
|
82
|
-
| EURC (test token) | [`0x89B50855Aa3bE2F677cD6303Cec089B5F319D72a`](https://testnet.
|
|
83
|
-
| Arc `Memo` (system) | [`0x5294E9927c3306DcBaDb03fe70b92e01cCede505`](https://testnet.
|
|
84
|
-
| ERC-8004 `IdentityRegistry` (Arc's) | [`0x8004A818BFB912233c491871b3d84c89A494BD9e`](https://testnet.
|
|
119
|
+
| `ParabolicLaunchFactory` | [`0x2E06eD99bD7D164458847D186B282B23700b2C63`](https://explorer.testnet.arc.io/address/0x2E06eD99bD7D164458847D186B282B23700b2C63) |
|
|
120
|
+
| `ParabolicMemoRouter` | [`0x1381567ea31a094e64f6B39Bd880d0b59c48e08F`](https://explorer.testnet.arc.io/address/0x1381567ea31a094e64f6B39Bd880d0b59c48e08F) |
|
|
121
|
+
| EURC (test token) | [`0x89B50855Aa3bE2F677cD6303Cec089B5F319D72a`](https://explorer.testnet.arc.io/address/0x89B50855Aa3bE2F677cD6303Cec089B5F319D72a) |
|
|
122
|
+
| Arc `Memo` (system) | [`0x5294E9927c3306DcBaDb03fe70b92e01cCede505`](https://explorer.testnet.arc.io/address/0x5294E9927c3306DcBaDb03fe70b92e01cCede505) |
|
|
123
|
+
| ERC-8004 `IdentityRegistry` (Arc's) | [`0x8004A818BFB912233c491871b3d84c89A494BD9e`](https://explorer.testnet.arc.io/address/0x8004A818BFB912233c491871b3d84c89A494BD9e) |
|
|
85
124
|
|
|
86
125
|
The identity registry is **Arc's contract, not ours**: Arc deploys it, documents it and can change it.
|
|
87
126
|
It is an ERC-1967 proxy, so the implementation behind that address is upgradeable by Arc. Parabolic only
|
|
@@ -92,6 +131,12 @@ Arc mainnet (5042), deployed 16 September 2026 at block 21,105,294: factory
|
|
|
92
131
|
source verified on Sourcify. Arc has published no identity registry for mainnet, so on chain 5042
|
|
93
132
|
`agent_status` says there is no registry rather than reporting a wallet as unregistered.
|
|
94
133
|
|
|
134
|
+
Robinhood Chain (4663), deployed 19 September 2026: factory
|
|
135
|
+
`0x25c9cFa179256A29f84b9Fd0DcF7cB2ff24b473d`, quoted in USDG (`0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168`,
|
|
136
|
+
six decimals, Paxos), gas paid in ETH, source verified on Sourcify. Gas there is not a dollar, so a launch
|
|
137
|
+
fee or a balance on that chain is never a figure in dollars, and no identity registry exists. The chain's
|
|
138
|
+
`ParabolicRouter` is deliberately not configured here; see 0.1.9 above.
|
|
139
|
+
|
|
95
140
|
### Claude Code
|
|
96
141
|
|
|
97
142
|
```sh
|