@parabolicfamily/mcp 0.1.4 → 0.1.5
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 +14 -9
- package/dist/config.d.ts +32 -8
- package/dist/config.js +54 -11
- package/dist/config.js.map +1 -1
- package/dist/curve.d.ts +1 -1
- package/dist/curve.js +1 -1
- package/dist/docs.d.ts +1 -1
- package/dist/docs.js +5 -5
- package/dist/docs.js.map +1 -1
- package/dist/parabolic.d.ts +1 -1
- package/dist/parabolic.js +8 -3
- package/dist/parabolic.js.map +1 -1
- package/package.json +1 -1
- package/src/config.ts +54 -13
- package/src/curve.ts +1 -1
- package/src/docs.ts +5 -5
- package/src/parabolic.ts +9 -3
package/README.md
CHANGED
|
@@ -16,24 +16,28 @@ The ABIs ship with the package, so it works offline against any Arc RPC you poin
|
|
|
16
16
|
|
|
17
17
|
## Configure
|
|
18
18
|
|
|
19
|
-
Nothing is required. Out of the box the server talks to
|
|
20
|
-
addresses already built in, so `npx -y @parabolicfamily/mcp` is a working install.
|
|
19
|
+
Nothing is required. Out of the box the server talks to the newest Arc chain it has addresses for,
|
|
20
|
+
with those addresses already built in, so `npx -y @parabolicfamily/mcp` is a working install. Since
|
|
21
|
+
0.1.5 that is **Arc mainnet** (5042), live since 16 September 2026; set `PARABOLIC_CHAIN_ID=5042002`
|
|
22
|
+
for Arc Testnet.
|
|
21
23
|
|
|
22
|
-
Set `PARABOLIC_CHAIN_ID` and the RPC and contract addresses for that chain follow it.
|
|
23
|
-
|
|
24
|
+
Set `PARABOLIC_CHAIN_ID` and the RPC and contract addresses for that chain follow it. Every unsigned
|
|
25
|
+
transaction the server builds carries its `chainId`, so a wallet cannot sign a testnet launch onto
|
|
26
|
+
mainnet by mistake, and `protocol_stats` reports the chain and RPC host the server is actually using.
|
|
24
27
|
|
|
25
28
|
| Variable | Meaning | Default |
|
|
26
29
|
|---|---|---|
|
|
27
|
-
| `PARABOLIC_CHAIN_ID` | 5042002 Arc Testnet, 5042 Arc mainnet | `
|
|
30
|
+
| `PARABOLIC_CHAIN_ID` | 5042002 Arc Testnet, 5042 Arc mainnet | `5042` |
|
|
28
31
|
| `PARABOLIC_RPC_URL` | Arc JSON-RPC endpoint | the public endpoint for the chain id |
|
|
29
32
|
| `PARABOLIC_FACTORY` | `ParabolicLaunchFactory`: coin lookups and launch transactions | the deployment for the chain id |
|
|
30
33
|
| `PARABOLIC_MEMO_ROUTER` | `ParabolicMemoRouter`: the atomic launch-and-buy and the referral-carrying buy | the deployment for the chain id |
|
|
31
34
|
| `PARABOLIC_EURC` | EURC address, only for EURC-quoted coins | the deployment for the chain id |
|
|
32
35
|
| `PARABOLIC_SUBGRAPH_URL` | Subgraph endpoint: richer listings, holders, 24h volume, protocol stats | unset (the public API is used instead) |
|
|
36
|
+
| `PARABOLIC_EXPLORER_URL` | Block explorer the address and transaction links are built from | Arcscan for the chain id; Arc mainnet's host is unconfirmed |
|
|
33
37
|
| `PARABOLIC_HOOK` | `ParabolicHook` address | read from `factory.memeHook()` |
|
|
34
38
|
| `PARABOLIC_ARC_MEMO` | Arc `Memo` system contract | `0x5294E9927c3306DcBaDb03fe70b92e01cCede505` |
|
|
35
39
|
| `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) |
|
|
36
|
-
| `PARABOLIC_LAUNCH_CONFIG_ID` | Factory launch-config index (0 = the $5K open / $
|
|
40
|
+
| `PARABOLIC_LAUNCH_CONFIG_ID` | Factory launch-config index (0 = the $5K open / $8,000 graduation curve) | `0` |
|
|
37
41
|
| `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 |
|
|
38
42
|
|
|
39
43
|
The API default follows the chain: Arc Testnet reads the testnet site (`https://parabolic-testnet.vercel.app/api/v1`,
|
|
@@ -58,8 +62,9 @@ The identity registry is **Arc's contract, not ours**: Arc deploys it, documents
|
|
|
58
62
|
It is an ERC-1967 proxy, so the implementation behind that address is upgradeable by Arc. Parabolic only
|
|
59
63
|
reads it (and builds the registration for your wallet to sign); nothing on the launchpad depends on it.
|
|
60
64
|
|
|
61
|
-
Arc mainnet (5042)
|
|
62
|
-
|
|
65
|
+
Arc mainnet (5042), deployed 16 September 2026 at block 21,105,294: factory
|
|
66
|
+
`0x27EAeC564fd049E6920C73323ffA7eb6a32A4B1e`, memo router `0x7d642150A222D0F6c98e2fC6bBe86E8Bb6DC90d0`,
|
|
67
|
+
source verified on Sourcify. Arc has published no identity registry for mainnet, so on chain 5042
|
|
63
68
|
`agent_status` says there is no registry rather than reporting a wallet as unregistered.
|
|
64
69
|
|
|
65
70
|
### Claude Code
|
|
@@ -199,7 +204,7 @@ coins launched from that wallet, and the site tags them `[ Agent ]`.
|
|
|
199
204
|
- Curve math is a port of `ParabolicBondingCurve` / `ParabolicBondingCurveMath` (and of `web/lib/curve.ts`): fee legs are taken off the buy input separately, the constant product is priced on `getReserves()`, and a buy that would take more than `sellableTokens()` is clamped to the last sellable tokens, charged the grossed-up price and refunded the rest; that buy graduates the coin, so give it extra gas. Sells take the fee off the gross quote output and close once the curve is ready to graduate.
|
|
200
205
|
- `minTokensOut` on the curve is a price bound (`spent × minTokensOut ≤ received × tokensOut`), so a clamped fill still honours the caller's terms.
|
|
201
206
|
- The snipe tax decays per second along `remaining² / window²`; a quote in the launch window overstates the tax a later block charges. Pass `buyer` to have the exemption checked.
|
|
202
|
-
- At graduation the curve still holds the reserved
|
|
207
|
+
- At graduation the curve still holds the reserved 38.46% of supply: ≈ 23.7% seeds the Uniswap v4 full-range position with the $8,000 raised at the same terminal price, and ≈ 14.8% is permanently locked. Fully diluted graduation market cap: $33,800.
|
|
203
208
|
- Fair launch: `ParabolicMemoRouter.launchAndBuy` / `launchAndBuyWithToken` put the creator's opening buy inside the launch transaction (snipe-tax exempt, before anyone else can trade). Called directly they work from any wallet; the router forwards no exemption list and rejects a `creatorFeeRecipient` other than zero or the signer.
|
|
204
209
|
- A memo-routed buy (`memo: { referral }`) wraps `ParabolicMemoRouter.buy` inside Arc's `Memo.memo(...)` so the referral code is attributed on-chain. It is **EOA-only** (the Memo contract's caller must be `tx.origin`) and forwards no value, so the router pulls whole 6-decimal USDC units through the ERC-20 view (`0x3600…0000`) and needs a one-time approval; smart-account wallets should use the direct buy. Memo-wrapped launches (referral on a launch) are not built here.
|
|
205
210
|
- Agent identity is ERC-8004 on Arc's own `IdentityRegistry` (an ERC-721 named `AgentIdentity`, symbol `AGENT`): `register(metadataURI)` mints one to the caller, `balanceOf` answers whether a wallet holds any. The registry is **not** ERC-721 Enumerable, so there is no way to list a wallet's agent ids without scanning `Transfer` logs, which public Arc RPCs cap and rate-limit; this server does not try. Arc can upgrade the registry behind its address (ERC-1967 proxy). Holding an identity is not an endorsement: registration is open to anyone.
|
package/dist/config.d.ts
CHANGED
|
@@ -5,16 +5,14 @@ export declare const ARC_MEMO_DEFAULT: Address;
|
|
|
5
5
|
export declare const USDC_VIEW: Address;
|
|
6
6
|
/** `address(0)` as the pair token means the curve is quoted in native USDC. */
|
|
7
7
|
export declare const NATIVE_QUOTE: Address;
|
|
8
|
-
export declare const DEFAULT_CHAIN_ID = 5042002;
|
|
9
8
|
export declare const DEFAULT_API_URL = "https://www.parabolic.family/api/v1";
|
|
10
9
|
/**
|
|
11
10
|
* Deployed Parabolic addresses per chain, so the server is useful with no configuration at all.
|
|
12
11
|
* The source repository is private; these are the same addresses the site publishes at
|
|
13
12
|
* https://www.parabolic.family/docs#contracts and that are verified on Arcscan.
|
|
14
13
|
*
|
|
15
|
-
* Arc mainnet (5042)
|
|
16
|
-
*
|
|
17
|
-
* needs the factory says so.
|
|
14
|
+
* Arc mainnet (5042) opened on 16 September 2026; Parabolic deployed at block 21,105,294 and these are
|
|
15
|
+
* the live addresses (contracts/deployments/5042.json). With them in place the default chain is Arc.
|
|
18
16
|
*/
|
|
19
17
|
export declare const DEPLOYMENTS: Record<number, {
|
|
20
18
|
rpcUrl: string;
|
|
@@ -32,6 +30,16 @@ export declare const DEPLOYMENTS: Record<number, {
|
|
|
32
30
|
*/
|
|
33
31
|
agentRegistry?: Address;
|
|
34
32
|
}>;
|
|
33
|
+
/**
|
|
34
|
+
* The chain an agent gets with no configuration at all: Arc mainnet once its addresses are in
|
|
35
|
+
* `DEPLOYMENTS`, Arc Testnet until then.
|
|
36
|
+
*
|
|
37
|
+
* This is derived rather than written down because the alternative is a second thing to remember on
|
|
38
|
+
* launch day. A hardcoded testnet default would survive the mainnet release and quietly hand every
|
|
39
|
+
* unconfigured agent a testnet factory, and a hardcoded mainnet default would break the server today,
|
|
40
|
+
* when chain 5042 has an RPC and no contracts. Filling in the 5042 entry moves the default with it.
|
|
41
|
+
*/
|
|
42
|
+
export declare const DEFAULT_CHAIN_ID: number;
|
|
35
43
|
export declare const DEFAULT_RPC_URL: string;
|
|
36
44
|
export type Config = {
|
|
37
45
|
/** JSON-RPC endpoint for Arc. */
|
|
@@ -59,7 +67,7 @@ export type Config = {
|
|
|
59
67
|
arcMemo: Address;
|
|
60
68
|
/** Arc's ERC-8004 IdentityRegistry. Optional; undefined on a chain where Arc has published none. */
|
|
61
69
|
agentRegistry?: Address;
|
|
62
|
-
/** Launch config index on the factory; preset 0 is the adopted $5K / $
|
|
70
|
+
/** Launch config index on the factory; preset 0 is the adopted $5K / $8,000 curve. */
|
|
63
71
|
launchConfigId: bigint;
|
|
64
72
|
/** First block to scan for `TokenLaunched` logs when listing without a subgraph. */
|
|
65
73
|
factoryStartBlock: bigint;
|
|
@@ -67,7 +75,23 @@ export type Config = {
|
|
|
67
75
|
/** Environment variables the server reads, with their meaning (also rendered by `parabolic.docs`). */
|
|
68
76
|
export declare const ENV_VARS: Array<[name: string, meaning: string]>;
|
|
69
77
|
export declare function configFromEnv(env?: Record<string, string | undefined>): Config;
|
|
70
|
-
export declare
|
|
71
|
-
/**
|
|
72
|
-
|
|
78
|
+
export declare function chainName(chainId: number): string;
|
|
79
|
+
/**
|
|
80
|
+
* The Parabolic site that serves this chain's deployment, with no trailing slash.
|
|
81
|
+
*
|
|
82
|
+
* Derived from the deployment's API URL so a coin link always points at the site where that coin
|
|
83
|
+
* actually exists: a testnet coin on the testnet site, a mainnet coin on parabolic.family. Hardcoding
|
|
84
|
+
* the mainnet host sent every testnet link to a page that has never heard of the coin.
|
|
85
|
+
*/
|
|
86
|
+
export declare function siteBase(chainId: number): string | undefined;
|
|
87
|
+
/**
|
|
88
|
+
* Arcscan base URL for the chain, undefined where there is no explorer (Anvil).
|
|
89
|
+
*
|
|
90
|
+
* Arc mainnet's host is a guess: Circle has published an explorer for Arc Testnet only, and
|
|
91
|
+
* `https://explorer.arc.io` is Circle's published explorer (16 Sep 2026), behind a login at launch. `PARABOLIC_EXPLORER_URL` overrides it so a wrong guess
|
|
92
|
+
* costs an environment variable rather than a republish of this package. Read from `process.env`
|
|
93
|
+
* directly, unlike every other setting here, because this is called from `arcChain()` which builds a
|
|
94
|
+
* viem chain from a chain id alone and never sees a Config.
|
|
95
|
+
*/
|
|
96
|
+
export declare function explorerBase(chainId: number): string | undefined;
|
|
73
97
|
export declare const explorerUrl: (chainId: number, kind: "address" | "tx", value: string) => string | undefined;
|
package/dist/config.js
CHANGED
|
@@ -5,16 +5,14 @@ export const ARC_MEMO_DEFAULT = "0x5294E9927c3306DcBaDb03fe70b92e01cCede505";
|
|
|
5
5
|
export const USDC_VIEW = "0x3600000000000000000000000000000000000000";
|
|
6
6
|
/** `address(0)` as the pair token means the curve is quoted in native USDC. */
|
|
7
7
|
export const NATIVE_QUOTE = "0x0000000000000000000000000000000000000000";
|
|
8
|
-
export const DEFAULT_CHAIN_ID = 5042002;
|
|
9
8
|
export const DEFAULT_API_URL = "https://www.parabolic.family/api/v1";
|
|
10
9
|
/**
|
|
11
10
|
* Deployed Parabolic addresses per chain, so the server is useful with no configuration at all.
|
|
12
11
|
* The source repository is private; these are the same addresses the site publishes at
|
|
13
12
|
* https://www.parabolic.family/docs#contracts and that are verified on Arcscan.
|
|
14
13
|
*
|
|
15
|
-
* Arc mainnet (5042)
|
|
16
|
-
*
|
|
17
|
-
* needs the factory says so.
|
|
14
|
+
* Arc mainnet (5042) opened on 16 September 2026; Parabolic deployed at block 21,105,294 and these are
|
|
15
|
+
* the live addresses (contracts/deployments/5042.json). With them in place the default chain is Arc.
|
|
18
16
|
*/
|
|
19
17
|
export const DEPLOYMENTS = {
|
|
20
18
|
5042002: {
|
|
@@ -27,25 +25,40 @@ export const DEPLOYMENTS = {
|
|
|
27
25
|
agentRegistry: "0x8004A818BFB912233c491871b3d84c89A494BD9e",
|
|
28
26
|
},
|
|
29
27
|
5042: {
|
|
30
|
-
rpcUrl: "https://rpc.arc.io",
|
|
28
|
+
rpcUrl: "https://rpc.mainnet.arc.io",
|
|
29
|
+
factory: "0x27EAeC564fd049E6920C73323ffA7eb6a32A4B1e",
|
|
30
|
+
memoRouter: "0x7d642150A222D0F6c98e2fC6bBe86E8Bb6DC90d0",
|
|
31
|
+
startBlock: 21105294,
|
|
31
32
|
apiUrl: DEFAULT_API_URL,
|
|
33
|
+
// No EURC pair is approved at launch and Arc has published no ERC-8004 registry for mainnet.
|
|
32
34
|
},
|
|
33
35
|
};
|
|
36
|
+
/**
|
|
37
|
+
* The chain an agent gets with no configuration at all: Arc mainnet once its addresses are in
|
|
38
|
+
* `DEPLOYMENTS`, Arc Testnet until then.
|
|
39
|
+
*
|
|
40
|
+
* This is derived rather than written down because the alternative is a second thing to remember on
|
|
41
|
+
* launch day. A hardcoded testnet default would survive the mainnet release and quietly hand every
|
|
42
|
+
* unconfigured agent a testnet factory, and a hardcoded mainnet default would break the server today,
|
|
43
|
+
* when chain 5042 has an RPC and no contracts. Filling in the 5042 entry moves the default with it.
|
|
44
|
+
*/
|
|
45
|
+
export const DEFAULT_CHAIN_ID = DEPLOYMENTS[5042].factory ? 5042 : 5042002;
|
|
34
46
|
export const DEFAULT_RPC_URL = DEPLOYMENTS[DEFAULT_CHAIN_ID].rpcUrl;
|
|
35
47
|
/** Environment variables the server reads, with their meaning (also rendered by `parabolic.docs`). */
|
|
36
48
|
export const ENV_VARS = [
|
|
37
49
|
["PARABOLIC_RPC_URL", `Arc JSON-RPC endpoint (default ${DEFAULT_RPC_URL})`],
|
|
38
|
-
["PARABOLIC_CHAIN_ID", `chain id (default ${DEFAULT_CHAIN_ID},
|
|
50
|
+
["PARABOLIC_CHAIN_ID", `chain id: 5042002 for Arc Testnet, 5042 for Arc (default ${DEFAULT_CHAIN_ID}, ${chainName(DEFAULT_CHAIN_ID)})`],
|
|
39
51
|
["PARABOLIC_FACTORY", "ParabolicLaunchFactory address (on-chain lookups, launch transactions, log-scan listing)"],
|
|
40
52
|
["PARABOLIC_MEMO_ROUTER", "ParabolicMemoRouter address (memo-routed buys carrying a referral code; EOA-only)"],
|
|
41
53
|
["PARABOLIC_SUBGRAPH_URL", "Parabolic subgraph endpoint (listing, holders, volume, protocol stats)"],
|
|
42
54
|
["PARABOLIC_EURC", "ERC-20 EURC address (EURC-quoted launches only)"],
|
|
43
55
|
["PARABOLIC_HOOK", "ParabolicHook address (optional; read from the factory when unset)"],
|
|
44
|
-
["PARABOLIC_API_URL", `Parabolic public read API for listings (default: the site that serves the chain's deployment, ${DEPLOYMENTS[DEFAULT_CHAIN_ID].apiUrl} on
|
|
56
|
+
["PARABOLIC_API_URL", `Parabolic public read API for listings (default: the site that serves the chain's deployment, ${DEPLOYMENTS[DEFAULT_CHAIN_ID].apiUrl} on ${chainName(DEFAULT_CHAIN_ID)}; "" to use a log scan instead)`],
|
|
45
57
|
["PARABOLIC_ARC_MEMO", `Arc Memo system contract (default ${ARC_MEMO_DEFAULT})`],
|
|
46
|
-
["PARABOLIC_AGENT_REGISTRY", `Arc's ERC-8004 IdentityRegistry (agent_status, build_register_agent_tx and the list_coins pair "Agents" filter
|
|
58
|
+
["PARABOLIC_AGENT_REGISTRY", `Arc's ERC-8004 IdentityRegistry (agent_status, build_register_agent_tx and the list_coins pair "Agents" filter). Arc's, not ours, and Arc has published one for Arc Testnet only, so on ${chainName(DEFAULT_CHAIN_ID)} the default is ${DEPLOYMENTS[DEFAULT_CHAIN_ID].agentRegistry ?? "none and those tools say so instead of answering"}`],
|
|
47
59
|
["PARABOLIC_LAUNCH_CONFIG_ID", "factory launch config index (default 0)"],
|
|
48
60
|
["PARABOLIC_FACTORY_START_BLOCK", "first block for the TokenLaunched log scan (default: the factory's deployment block for this chain)"],
|
|
61
|
+
["PARABOLIC_EXPLORER_URL", `block explorer base URL for building address and transaction links (default ${explorerBase(DEFAULT_CHAIN_ID) ?? "none for this chain"}; Arc mainnet's host is unconfirmed)`],
|
|
49
62
|
];
|
|
50
63
|
function addr(name, v) {
|
|
51
64
|
if (v === undefined || v.trim() === "")
|
|
@@ -86,9 +99,39 @@ export function configFromEnv(env = process.env) {
|
|
|
86
99
|
factoryStartBlock: BigInt(int("PARABOLIC_FACTORY_START_BLOCK", env.PARABOLIC_FACTORY_START_BLOCK, known?.startBlock ?? 0)),
|
|
87
100
|
};
|
|
88
101
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
102
|
+
// A function declaration, not a const: ENV_VARS above is built at module load and calls this.
|
|
103
|
+
export function chainName(chainId) {
|
|
104
|
+
return chainId === 5042002 ? "Arc Testnet" : chainId === 5042 ? "Arc" : `chain ${chainId}`;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* The Parabolic site that serves this chain's deployment, with no trailing slash.
|
|
108
|
+
*
|
|
109
|
+
* Derived from the deployment's API URL so a coin link always points at the site where that coin
|
|
110
|
+
* actually exists: a testnet coin on the testnet site, a mainnet coin on parabolic.family. Hardcoding
|
|
111
|
+
* the mainnet host sent every testnet link to a page that has never heard of the coin.
|
|
112
|
+
*/
|
|
113
|
+
export function siteBase(chainId) {
|
|
114
|
+
const api = DEPLOYMENTS[chainId]?.apiUrl;
|
|
115
|
+
if (!api)
|
|
116
|
+
return undefined;
|
|
117
|
+
const at = api.indexOf("/api/");
|
|
118
|
+
return at === -1 ? api.replace(/\/+$/, "") : api.slice(0, at);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Arcscan base URL for the chain, undefined where there is no explorer (Anvil).
|
|
122
|
+
*
|
|
123
|
+
* Arc mainnet's host is a guess: Circle has published an explorer for Arc Testnet only, and
|
|
124
|
+
* `https://explorer.arc.io` is Circle's published explorer (16 Sep 2026), behind a login at launch. `PARABOLIC_EXPLORER_URL` overrides it so a wrong guess
|
|
125
|
+
* costs an environment variable rather than a republish of this package. Read from `process.env`
|
|
126
|
+
* directly, unlike every other setting here, because this is called from `arcChain()` which builds a
|
|
127
|
+
* viem chain from a chain id alone and never sees a Config.
|
|
128
|
+
*/
|
|
129
|
+
export function explorerBase(chainId) {
|
|
130
|
+
const override = process.env.PARABOLIC_EXPLORER_URL?.trim();
|
|
131
|
+
if (override && /^https?:\/\//i.test(override))
|
|
132
|
+
return override.replace(/\/+$/, "");
|
|
133
|
+
return chainId === 5042002 ? "https://testnet.arcscan.app" : chainId === 5042 ? "https://explorer.arc.io" : undefined;
|
|
134
|
+
}
|
|
92
135
|
export const explorerUrl = (chainId, kind, value) => {
|
|
93
136
|
const base = explorerBase(chainId);
|
|
94
137
|
return base ? `${base}/${kind}/${value}` : undefined;
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAgB,MAAM,MAAM,CAAC;AAE3D,gHAAgH;AAChH,MAAM,CAAC,MAAM,gBAAgB,GAAY,4CAA4C,CAAC;AACtF,mGAAmG;AACnG,MAAM,CAAC,MAAM,SAAS,GAAY,4CAA4C,CAAC;AAC/E,+EAA+E;AAC/E,MAAM,CAAC,MAAM,YAAY,GAAY,4CAA4C,CAAC;AAElF,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/curve.d.ts
CHANGED
|
@@ -67,7 +67,7 @@ export declare const reservedTokensFor: (supply: bigint, phantomQuote: bigint, g
|
|
|
67
67
|
* Where the reserved tokens go at graduation. The v4 full-range position is seeded at the curve's terminal price
|
|
68
68
|
* ((phantom + threshold) / reserved) with the real quote raised, which takes reserved × threshold / (phantom + threshold)
|
|
69
69
|
* tokens; the rest, the phantom reserve's share, is permanently locked (GraduationTokensPermanentlyLocked).
|
|
70
|
-
* Adopted parameters:
|
|
70
|
+
* Adopted parameters: 38.46% reserved → ≈ 23.7% of supply seeds the pool, ≈ 14.8% is locked.
|
|
71
71
|
*/
|
|
72
72
|
export declare const graduationSplit: (reservedTokens: bigint, phantomQuote: bigint, graduationThreshold: bigint) => {
|
|
73
73
|
poolSeed: bigint;
|
package/dist/curve.js
CHANGED
|
@@ -80,7 +80,7 @@ export const reservedTokensFor = (supply, phantomQuote, graduationThreshold) =>
|
|
|
80
80
|
* Where the reserved tokens go at graduation. The v4 full-range position is seeded at the curve's terminal price
|
|
81
81
|
* ((phantom + threshold) / reserved) with the real quote raised, which takes reserved × threshold / (phantom + threshold)
|
|
82
82
|
* tokens; the rest, the phantom reserve's share, is permanently locked (GraduationTokensPermanentlyLocked).
|
|
83
|
-
* Adopted parameters:
|
|
83
|
+
* Adopted parameters: 38.46% reserved → ≈ 23.7% of supply seeds the pool, ≈ 14.8% is locked.
|
|
84
84
|
*/
|
|
85
85
|
export const graduationSplit = (reservedTokens, phantomQuote, graduationThreshold) => {
|
|
86
86
|
const denominator = phantomQuote + graduationThreshold;
|
package/dist/docs.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { type Config } from "./config.js";
|
|
2
|
-
/** Adopted product parameters (adopted 2026-09-06; published at https://www.parabolic.family/docs#parameters) and verified Arc facts, as text. */
|
|
2
|
+
/** Adopted product parameters (adopted 2026-09-06, graduation threshold revised to $8,000 on 2026-09-16; published at https://www.parabolic.family/docs#parameters) and verified Arc facts, as text. */
|
|
3
3
|
export declare function docsText(config: Config): string;
|
package/dist/docs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ARC_MEMO_DEFAULT, ENV_VARS, USDC_VIEW, chainName } from "./config.js";
|
|
2
2
|
import { endpointHost } from "./format.js";
|
|
3
|
-
/** Adopted product parameters (adopted 2026-09-06; published at https://www.parabolic.family/docs#parameters) and verified Arc facts, as text. */
|
|
3
|
+
/** Adopted product parameters (adopted 2026-09-06, graduation threshold revised to $8,000 on 2026-09-16; published at https://www.parabolic.family/docs#parameters) and verified Arc facts, as text. */
|
|
4
4
|
export function docsText(config) {
|
|
5
5
|
const set = (v) => v ?? "(not configured)";
|
|
6
6
|
return [
|
|
@@ -8,16 +8,16 @@ export function docsText(config) {
|
|
|
8
8
|
"parabolic.family · contact@parabolic.family · fork of the MIT-licensed pons V2 contracts (Robinhood Chain), ported to Arc.",
|
|
9
9
|
"Category: bonding-curve launchpad (pump.fun / fomo.family / pons), not a fundraising venue. Non-custodial: every launch and trade is a wallet-signed transaction; no custody, no warranties, no advice; coins are user-created and experimental.",
|
|
10
10
|
"",
|
|
11
|
-
"ADOPTED PARAMETERS (2026-09-06)",
|
|
11
|
+
"ADOPTED PARAMETERS (2026-09-06, graduation threshold revised 2026-09-16)",
|
|
12
12
|
"- Supply: 1,000,000,000 tokens (18 decimals), all minted to the curve.",
|
|
13
13
|
"- Quote asset: native USDC (Arc's gas token; 18-decimal native accounting). EURC (6-decimal ERC-20) pairs when approved on the factory.",
|
|
14
14
|
"- Opening: phantom quote reserve $5,000 against the full supply → ≈ $0.000005 per token, ≈ $5,000 opening market cap.",
|
|
15
|
-
"- Graduation: when the curve's real quote reserve reaches $
|
|
16
|
-
"- Reserved tokens: supply × phantom / (phantom + threshold) = 5,000 /
|
|
15
|
+
"- Graduation: when the curve's real quote reserve reaches $8,000. Terminal curve price = (5,000 + 8,000) / reservedTokens → fully diluted market cap at graduation = 13,000² / 5,000 = $33,800 (constant product over the whole 1e9 supply).",
|
|
16
|
+
"- Reserved tokens: supply × phantom / (phantom + threshold) = 5,000 / 13,000 ≈ 38.46% of supply is never sold on the curve and is still held by it at graduation. Of that, ≈ 23.7% of supply (reserved × 8,000 / 13,000) seeds the Uniswap v4 full-range position together with the $8,000 raised, at the same terminal price, and the remaining ≈ 14.8% of supply is permanently locked (GraduationTokensPermanentlyLocked). The position itself is locked forever in ParabolicLaunchLocker.",
|
|
17
17
|
"- Launch fee: $1.00 USDC (msg.value on launchToken) + ≈ $0.01 gas.",
|
|
18
18
|
"- Trade fee: 1.00% (100 bps) on the quote leg, before and after graduation (ParabolicHook takes it on the pool). Split: creator 50 / protocol 30 / buyback vault 20 (vault vests 5 years). On-chain: protocolFeeShareBps of the fee goes to protocol; buybackBurnBps of the remaining creator slice goes to the buyback.",
|
|
19
19
|
"- Creator tax: optional 0–5% (0–500 bps), fixed at launch, charged like the fee on buys and sells, paid entirely to the creator.",
|
|
20
|
-
"- Snipe tax: 93% (9,300 bps) at launch decaying to 0 over 5 s along a quadratic ease-out (remaining² / window²); capped at 10,000 − fee − creatorTax − 1 bps, which 9,300 stays below at every legal creator tax, so it is charged as written. Buys only. Only the
|
|
20
|
+
"- Snipe tax: 93% (9,300 bps) at launch decaying to 0 over 5 s along a quadratic ease-out (remaining² / window²); capped at 10,000 − fee − creatorTax − 1 bps, which 9,300 stays below at every legal creator tax, so it is charged as written. Buys only. Only the creator's own address is exempt, and it stays exempt for every buy inside the window, not just the opening one; there is no other exemption pathway. Snipe revenue is split like the base fee.",
|
|
21
21
|
"- Referral: a bytes8 referral code (first 8 bytes of the referrer's address) carried in the Arc memo of a routed buy earns 10% of the fee.",
|
|
22
22
|
"- Dev buy (fair launch): the creator's opening buy is snipe-tax exempt. ParabolicMemoRouter.launchAndBuy (native USDC; value = launch fee + buy) and launchAndBuyWithToken (ERC-20 quote; value = launch fee, buy pulled after an approval) place it inside the launch transaction, before anyone else can trade. The router forwards no exemption list and requires creatorFeeRecipient to be zero or the signer (FeeRecipientMustBeCreator); buyQuoteIn must be non-zero (ZeroBuyAmount). Without the router the buy is a second transaction to the new curve right after launch.",
|
|
23
23
|
"",
|
package/dist/docs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../src/docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAe,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../src/docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAe,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,wMAAwM;AACxM,MAAM,UAAU,QAAQ,CAAC,MAAc;IACrC,MAAM,GAAG,GAAG,CAAC,CAAqB,EAAE,EAAE,CAAC,CAAC,IAAI,kBAAkB,CAAC;IAC/D,OAAO;QACL,kDAAkD;QAClD,4HAA4H;QAC5H,kPAAkP;QAClP,EAAE;QACF,0EAA0E;QAC1E,wEAAwE;QACxE,yIAAyI;QACzI,uHAAuH;QACvH,8OAA8O;QAC9O,+dAA+d;QAC/d,oEAAoE;QACpE,0TAA0T;QAC1T,kIAAkI;QAClI,mcAAmc;QACnc,4IAA4I;QAC5I,qjBAAqjB;QACrjB,EAAE;QACF,0CAA0C;QAC1C,8MAA8M;QAC9M,2QAA2Q;QAC3Q,sKAAsK;QACtK,0JAA0J;QAC1J,6KAA6K;QAC7K,EAAE;QACF,kDAAkD;QAClD,8LAA8L;QAC9L,+FAA+F,SAAS,gFAAgF;QACxL,mMAAmM;QACnM,wCAAwC,gBAAgB,8IAA8I;QACtM,iLAAiL;QACjL,4IAA4I;QAC5I,8CAA8C;QAC9C,EAAE;QACF,aAAa;QACb,YAAY,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG;QAChG,cAAc,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,kBAAkB,YAAY,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,IAAI,IAAI,qBAAqB,wBAAwB,MAAM,CAAC,cAAc,GAAG;QAChS,qVAAqV;QACrV,yNAAyN;QACzN,8PAA8P,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,+BAA+B,gHAAgH;QAC1b,2NAA2N;QAC3N,EAAE;QACF,aAAa;QACb,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;KAC5C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
package/dist/parabolic.d.ts
CHANGED
package/dist/parabolic.js
CHANGED
|
@@ -4,13 +4,18 @@ import { curveAbi, factoryAbi, tokenAbi } from "./abi.js";
|
|
|
4
4
|
import { encodeRegisterAgent, readAgentOwners, readAgentStatus, AGENT_LOOKUP_MAX, MAX_METADATA_URI_BYTES } from "./agents.js";
|
|
5
5
|
import { mapLimit, viemRpc } from "./chain.js";
|
|
6
6
|
import { isNative, progressPct, sortCoins, summaryFromGql } from "./coins.js";
|
|
7
|
-
import { DEPLOYMENTS, NATIVE_QUOTE, chainName, explorerUrl } from "./config.js";
|
|
7
|
+
import { DEPLOYMENTS, NATIVE_QUOTE, chainName, explorerUrl, siteBase } from "./config.js";
|
|
8
8
|
import { applySlippage, graduationMarketCap, graduationSplit, marketCap, passesPriceBound, poolIdOf, priceImpact, quoteBuy, quoteSell, reservedTokensFor, spotPrice, toNumber } from "./curve.js";
|
|
9
9
|
import { docsText } from "./docs.js";
|
|
10
10
|
import { addrOf, amount, big, bool, endpointHost, num, parseAddress, parseAmount, safeMessage, str } from "./format.js";
|
|
11
11
|
import { RestApi } from "./restapi.js";
|
|
12
12
|
import { Subgraph } from "./subgraph.js";
|
|
13
13
|
import { encodeApprove, encodeBuy, encodeLaunch, encodeLaunchAndBuy, encodeMemoBuy, encodeSell } from "./tx.js";
|
|
14
|
+
/** A coin's page on the Parabolic site that serves this chain, or null on a chain with no site. */
|
|
15
|
+
const appLink = (chainId, token) => {
|
|
16
|
+
const base = siteBase(chainId);
|
|
17
|
+
return base ? `${base}/coin/${token}` : null;
|
|
18
|
+
};
|
|
14
19
|
export const PHASES = ["NotGraduated", "Swept", "PoolCreated", "Rescued"];
|
|
15
20
|
export const DEFAULT_SLIPPAGE_BPS = 100;
|
|
16
21
|
export const DEV_BUY_SLIPPAGE_BPS = 200n;
|
|
@@ -396,7 +401,7 @@ export class Parabolic {
|
|
|
396
401
|
windowEndsAt: launchedAt + windowSeconds,
|
|
397
402
|
windowOpen: currentSnipeBps > 0,
|
|
398
403
|
secondsRemaining: Math.max(0, launchedAt + windowSeconds - now),
|
|
399
|
-
exempt: "the creator only, for
|
|
404
|
+
exempt: "the creator's own address only, and for every buy inside the window, not just the opening one; there is no other exemption pathway. Check curve.snipeTaxExempt(address) or pass `buyer` to quote_buy",
|
|
400
405
|
},
|
|
401
406
|
pool: { poolId: poolId ?? null, poolFee: l.poolFee ?? null, tickSpacing: l.tickSpacing ?? null, hook: hook ?? null },
|
|
402
407
|
createdAt: launchedAt || null,
|
|
@@ -404,7 +409,7 @@ export class Parabolic {
|
|
|
404
409
|
logo: str(info[1]),
|
|
405
410
|
description: str(info[2]),
|
|
406
411
|
socials: { twitter: str(socials.twitter), telegram: str(socials.telegram), discord: str(socials.discord), website: str(socials.website), farcaster: str(socials.farcaster) },
|
|
407
|
-
links: { app:
|
|
412
|
+
links: { app: appLink(chainId, l.token), token: explorerUrl(chainId, "address", l.token) ?? null, curve: explorerUrl(chainId, "address", l.curve) ?? null, creator: explorerUrl(chainId, "address", l.deployer) ?? null },
|
|
408
413
|
source: l.source === "factory" ? "factory.getLaunchedToken + curve + token reads" : "subgraph lookup + curve + token reads",
|
|
409
414
|
};
|
|
410
415
|
}
|
package/dist/parabolic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parabolic.js","sourceRoot":"","sources":["../src/parabolic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parabolic.js","sourceRoot":"","sources":["../src/parabolic.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@parabolicfamily/mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "MCP server for Parabolic, the dollar-native token launchpad on Arc: discover coins, quote curve trades and build unsigned transactions. Never holds keys.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
package/src/config.ts
CHANGED
|
@@ -7,7 +7,6 @@ export const USDC_VIEW: Address = "0x3600000000000000000000000000000000000000";
|
|
|
7
7
|
/** `address(0)` as the pair token means the curve is quoted in native USDC. */
|
|
8
8
|
export const NATIVE_QUOTE: Address = "0x0000000000000000000000000000000000000000";
|
|
9
9
|
|
|
10
|
-
export const DEFAULT_CHAIN_ID = 5042002;
|
|
11
10
|
export const DEFAULT_API_URL = "https://www.parabolic.family/api/v1";
|
|
12
11
|
|
|
13
12
|
/**
|
|
@@ -15,9 +14,8 @@ export const DEFAULT_API_URL = "https://www.parabolic.family/api/v1";
|
|
|
15
14
|
* The source repository is private; these are the same addresses the site publishes at
|
|
16
15
|
* https://www.parabolic.family/docs#contracts and that are verified on Arcscan.
|
|
17
16
|
*
|
|
18
|
-
* Arc mainnet (5042)
|
|
19
|
-
*
|
|
20
|
-
* needs the factory says so.
|
|
17
|
+
* Arc mainnet (5042) opened on 16 September 2026; Parabolic deployed at block 21,105,294 and these are
|
|
18
|
+
* the live addresses (contracts/deployments/5042.json). With them in place the default chain is Arc.
|
|
21
19
|
*/
|
|
22
20
|
export const DEPLOYMENTS: Record<number, {
|
|
23
21
|
rpcUrl: string;
|
|
@@ -45,11 +43,25 @@ export const DEPLOYMENTS: Record<number, {
|
|
|
45
43
|
agentRegistry: "0x8004A818BFB912233c491871b3d84c89A494BD9e",
|
|
46
44
|
},
|
|
47
45
|
5042: {
|
|
48
|
-
rpcUrl: "https://rpc.arc.io",
|
|
46
|
+
rpcUrl: "https://rpc.mainnet.arc.io",
|
|
47
|
+
factory: "0x27EAeC564fd049E6920C73323ffA7eb6a32A4B1e",
|
|
48
|
+
memoRouter: "0x7d642150A222D0F6c98e2fC6bBe86E8Bb6DC90d0",
|
|
49
|
+
startBlock: 21105294,
|
|
49
50
|
apiUrl: DEFAULT_API_URL,
|
|
51
|
+
// No EURC pair is approved at launch and Arc has published no ERC-8004 registry for mainnet.
|
|
50
52
|
},
|
|
51
53
|
};
|
|
52
54
|
|
|
55
|
+
/**
|
|
56
|
+
* The chain an agent gets with no configuration at all: Arc mainnet once its addresses are in
|
|
57
|
+
* `DEPLOYMENTS`, Arc Testnet until then.
|
|
58
|
+
*
|
|
59
|
+
* This is derived rather than written down because the alternative is a second thing to remember on
|
|
60
|
+
* launch day. A hardcoded testnet default would survive the mainnet release and quietly hand every
|
|
61
|
+
* unconfigured agent a testnet factory, and a hardcoded mainnet default would break the server today,
|
|
62
|
+
* when chain 5042 has an RPC and no contracts. Filling in the 5042 entry moves the default with it.
|
|
63
|
+
*/
|
|
64
|
+
export const DEFAULT_CHAIN_ID = DEPLOYMENTS[5042].factory ? 5042 : 5042002;
|
|
53
65
|
export const DEFAULT_RPC_URL = DEPLOYMENTS[DEFAULT_CHAIN_ID].rpcUrl;
|
|
54
66
|
|
|
55
67
|
export type Config = {
|
|
@@ -78,7 +90,7 @@ export type Config = {
|
|
|
78
90
|
arcMemo: Address;
|
|
79
91
|
/** Arc's ERC-8004 IdentityRegistry. Optional; undefined on a chain where Arc has published none. */
|
|
80
92
|
agentRegistry?: Address;
|
|
81
|
-
/** Launch config index on the factory; preset 0 is the adopted $5K / $
|
|
93
|
+
/** Launch config index on the factory; preset 0 is the adopted $5K / $8,000 curve. */
|
|
82
94
|
launchConfigId: bigint;
|
|
83
95
|
/** First block to scan for `TokenLaunched` logs when listing without a subgraph. */
|
|
84
96
|
factoryStartBlock: bigint;
|
|
@@ -87,17 +99,18 @@ export type Config = {
|
|
|
87
99
|
/** Environment variables the server reads, with their meaning (also rendered by `parabolic.docs`). */
|
|
88
100
|
export const ENV_VARS: Array<[name: string, meaning: string]> = [
|
|
89
101
|
["PARABOLIC_RPC_URL", `Arc JSON-RPC endpoint (default ${DEFAULT_RPC_URL})`],
|
|
90
|
-
["PARABOLIC_CHAIN_ID", `chain id (default ${DEFAULT_CHAIN_ID},
|
|
102
|
+
["PARABOLIC_CHAIN_ID", `chain id: 5042002 for Arc Testnet, 5042 for Arc (default ${DEFAULT_CHAIN_ID}, ${chainName(DEFAULT_CHAIN_ID)})`],
|
|
91
103
|
["PARABOLIC_FACTORY", "ParabolicLaunchFactory address (on-chain lookups, launch transactions, log-scan listing)"],
|
|
92
104
|
["PARABOLIC_MEMO_ROUTER", "ParabolicMemoRouter address (memo-routed buys carrying a referral code; EOA-only)"],
|
|
93
105
|
["PARABOLIC_SUBGRAPH_URL", "Parabolic subgraph endpoint (listing, holders, volume, protocol stats)"],
|
|
94
106
|
["PARABOLIC_EURC", "ERC-20 EURC address (EURC-quoted launches only)"],
|
|
95
107
|
["PARABOLIC_HOOK", "ParabolicHook address (optional; read from the factory when unset)"],
|
|
96
|
-
["PARABOLIC_API_URL", `Parabolic public read API for listings (default: the site that serves the chain's deployment, ${DEPLOYMENTS[DEFAULT_CHAIN_ID].apiUrl} on
|
|
108
|
+
["PARABOLIC_API_URL", `Parabolic public read API for listings (default: the site that serves the chain's deployment, ${DEPLOYMENTS[DEFAULT_CHAIN_ID].apiUrl} on ${chainName(DEFAULT_CHAIN_ID)}; "" to use a log scan instead)`],
|
|
97
109
|
["PARABOLIC_ARC_MEMO", `Arc Memo system contract (default ${ARC_MEMO_DEFAULT})`],
|
|
98
|
-
["PARABOLIC_AGENT_REGISTRY", `Arc's ERC-8004 IdentityRegistry (agent_status, build_register_agent_tx and the list_coins pair "Agents" filter
|
|
110
|
+
["PARABOLIC_AGENT_REGISTRY", `Arc's ERC-8004 IdentityRegistry (agent_status, build_register_agent_tx and the list_coins pair "Agents" filter). Arc's, not ours, and Arc has published one for Arc Testnet only, so on ${chainName(DEFAULT_CHAIN_ID)} the default is ${DEPLOYMENTS[DEFAULT_CHAIN_ID].agentRegistry ?? "none and those tools say so instead of answering"}`],
|
|
99
111
|
["PARABOLIC_LAUNCH_CONFIG_ID", "factory launch config index (default 0)"],
|
|
100
112
|
["PARABOLIC_FACTORY_START_BLOCK", "first block for the TokenLaunched log scan (default: the factory's deployment block for this chain)"],
|
|
113
|
+
["PARABOLIC_EXPLORER_URL", `block explorer base URL for building address and transaction links (default ${explorerBase(DEFAULT_CHAIN_ID) ?? "none for this chain"}; Arc mainnet's host is unconfirmed)`],
|
|
101
114
|
];
|
|
102
115
|
|
|
103
116
|
function addr(name: string, v: string | undefined): Address | undefined {
|
|
@@ -138,11 +151,39 @@ export function configFromEnv(env: Record<string, string | undefined> = process.
|
|
|
138
151
|
};
|
|
139
152
|
}
|
|
140
153
|
|
|
141
|
-
|
|
154
|
+
// A function declaration, not a const: ENV_VARS above is built at module load and calls this.
|
|
155
|
+
export function chainName(chainId: number): string {
|
|
156
|
+
return chainId === 5042002 ? "Arc Testnet" : chainId === 5042 ? "Arc" : `chain ${chainId}`;
|
|
157
|
+
}
|
|
142
158
|
|
|
143
|
-
/**
|
|
144
|
-
|
|
145
|
-
|
|
159
|
+
/**
|
|
160
|
+
* The Parabolic site that serves this chain's deployment, with no trailing slash.
|
|
161
|
+
*
|
|
162
|
+
* Derived from the deployment's API URL so a coin link always points at the site where that coin
|
|
163
|
+
* actually exists: a testnet coin on the testnet site, a mainnet coin on parabolic.family. Hardcoding
|
|
164
|
+
* the mainnet host sent every testnet link to a page that has never heard of the coin.
|
|
165
|
+
*/
|
|
166
|
+
export function siteBase(chainId: number): string | undefined {
|
|
167
|
+
const api = DEPLOYMENTS[chainId]?.apiUrl;
|
|
168
|
+
if (!api) return undefined;
|
|
169
|
+
const at = api.indexOf("/api/");
|
|
170
|
+
return at === -1 ? api.replace(/\/+$/, "") : api.slice(0, at);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* Arcscan base URL for the chain, undefined where there is no explorer (Anvil).
|
|
175
|
+
*
|
|
176
|
+
* Arc mainnet's host is a guess: Circle has published an explorer for Arc Testnet only, and
|
|
177
|
+
* `https://explorer.arc.io` is Circle's published explorer (16 Sep 2026), behind a login at launch. `PARABOLIC_EXPLORER_URL` overrides it so a wrong guess
|
|
178
|
+
* costs an environment variable rather than a republish of this package. Read from `process.env`
|
|
179
|
+
* directly, unlike every other setting here, because this is called from `arcChain()` which builds a
|
|
180
|
+
* viem chain from a chain id alone and never sees a Config.
|
|
181
|
+
*/
|
|
182
|
+
export function explorerBase(chainId: number): string | undefined {
|
|
183
|
+
const override = process.env.PARABOLIC_EXPLORER_URL?.trim();
|
|
184
|
+
if (override && /^https?:\/\//i.test(override)) return override.replace(/\/+$/, "");
|
|
185
|
+
return chainId === 5042002 ? "https://testnet.arcscan.app" : chainId === 5042 ? "https://explorer.arc.io" : undefined;
|
|
186
|
+
}
|
|
146
187
|
|
|
147
188
|
export const explorerUrl = (chainId: number, kind: "address" | "tx", value: string): string | undefined => {
|
|
148
189
|
const base = explorerBase(chainId);
|
package/src/curve.ts
CHANGED
|
@@ -118,7 +118,7 @@ export const reservedTokensFor = (supply: bigint, phantomQuote: bigint, graduati
|
|
|
118
118
|
* Where the reserved tokens go at graduation. The v4 full-range position is seeded at the curve's terminal price
|
|
119
119
|
* ((phantom + threshold) / reserved) with the real quote raised, which takes reserved × threshold / (phantom + threshold)
|
|
120
120
|
* tokens; the rest, the phantom reserve's share, is permanently locked (GraduationTokensPermanentlyLocked).
|
|
121
|
-
* Adopted parameters:
|
|
121
|
+
* Adopted parameters: 38.46% reserved → ≈ 23.7% of supply seeds the pool, ≈ 14.8% is locked.
|
|
122
122
|
*/
|
|
123
123
|
export const graduationSplit = (reservedTokens: bigint, phantomQuote: bigint, graduationThreshold: bigint): { poolSeed: bigint; locked: bigint } => {
|
|
124
124
|
const denominator = phantomQuote + graduationThreshold;
|
package/src/docs.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ARC_MEMO_DEFAULT, ENV_VARS, USDC_VIEW, chainName, type Config } from "./config.js";
|
|
2
2
|
import { endpointHost } from "./format.js";
|
|
3
3
|
|
|
4
|
-
/** Adopted product parameters (adopted 2026-09-06; published at https://www.parabolic.family/docs#parameters) and verified Arc facts, as text. */
|
|
4
|
+
/** Adopted product parameters (adopted 2026-09-06, graduation threshold revised to $8,000 on 2026-09-16; published at https://www.parabolic.family/docs#parameters) and verified Arc facts, as text. */
|
|
5
5
|
export function docsText(config: Config): string {
|
|
6
6
|
const set = (v: string | undefined) => v ?? "(not configured)";
|
|
7
7
|
return [
|
|
@@ -9,16 +9,16 @@ export function docsText(config: Config): string {
|
|
|
9
9
|
"parabolic.family · contact@parabolic.family · fork of the MIT-licensed pons V2 contracts (Robinhood Chain), ported to Arc.",
|
|
10
10
|
"Category: bonding-curve launchpad (pump.fun / fomo.family / pons), not a fundraising venue. Non-custodial: every launch and trade is a wallet-signed transaction; no custody, no warranties, no advice; coins are user-created and experimental.",
|
|
11
11
|
"",
|
|
12
|
-
"ADOPTED PARAMETERS (2026-09-06)",
|
|
12
|
+
"ADOPTED PARAMETERS (2026-09-06, graduation threshold revised 2026-09-16)",
|
|
13
13
|
"- Supply: 1,000,000,000 tokens (18 decimals), all minted to the curve.",
|
|
14
14
|
"- Quote asset: native USDC (Arc's gas token; 18-decimal native accounting). EURC (6-decimal ERC-20) pairs when approved on the factory.",
|
|
15
15
|
"- Opening: phantom quote reserve $5,000 against the full supply → ≈ $0.000005 per token, ≈ $5,000 opening market cap.",
|
|
16
|
-
"- Graduation: when the curve's real quote reserve reaches $
|
|
17
|
-
"- Reserved tokens: supply × phantom / (phantom + threshold) = 5,000 /
|
|
16
|
+
"- Graduation: when the curve's real quote reserve reaches $8,000. Terminal curve price = (5,000 + 8,000) / reservedTokens → fully diluted market cap at graduation = 13,000² / 5,000 = $33,800 (constant product over the whole 1e9 supply).",
|
|
17
|
+
"- Reserved tokens: supply × phantom / (phantom + threshold) = 5,000 / 13,000 ≈ 38.46% of supply is never sold on the curve and is still held by it at graduation. Of that, ≈ 23.7% of supply (reserved × 8,000 / 13,000) seeds the Uniswap v4 full-range position together with the $8,000 raised, at the same terminal price, and the remaining ≈ 14.8% of supply is permanently locked (GraduationTokensPermanentlyLocked). The position itself is locked forever in ParabolicLaunchLocker.",
|
|
18
18
|
"- Launch fee: $1.00 USDC (msg.value on launchToken) + ≈ $0.01 gas.",
|
|
19
19
|
"- Trade fee: 1.00% (100 bps) on the quote leg, before and after graduation (ParabolicHook takes it on the pool). Split: creator 50 / protocol 30 / buyback vault 20 (vault vests 5 years). On-chain: protocolFeeShareBps of the fee goes to protocol; buybackBurnBps of the remaining creator slice goes to the buyback.",
|
|
20
20
|
"- Creator tax: optional 0–5% (0–500 bps), fixed at launch, charged like the fee on buys and sells, paid entirely to the creator.",
|
|
21
|
-
"- Snipe tax: 93% (9,300 bps) at launch decaying to 0 over 5 s along a quadratic ease-out (remaining² / window²); capped at 10,000 − fee − creatorTax − 1 bps, which 9,300 stays below at every legal creator tax, so it is charged as written. Buys only. Only the
|
|
21
|
+
"- Snipe tax: 93% (9,300 bps) at launch decaying to 0 over 5 s along a quadratic ease-out (remaining² / window²); capped at 10,000 − fee − creatorTax − 1 bps, which 9,300 stays below at every legal creator tax, so it is charged as written. Buys only. Only the creator's own address is exempt, and it stays exempt for every buy inside the window, not just the opening one; there is no other exemption pathway. Snipe revenue is split like the base fee.",
|
|
22
22
|
"- Referral: a bytes8 referral code (first 8 bytes of the referrer's address) carried in the Arc memo of a routed buy earns 10% of the fee.",
|
|
23
23
|
"- Dev buy (fair launch): the creator's opening buy is snipe-tax exempt. ParabolicMemoRouter.launchAndBuy (native USDC; value = launch fee + buy) and launchAndBuyWithToken (ERC-20 quote; value = launch fee, buy pulled after an approval) place it inside the launch transaction, before anyone else can trade. The router forwards no exemption list and requires creatorFeeRecipient to be zero or the signer (FeeRecipientMustBeCreator); buyQuoteIn must be non-zero (ZeroBuyAmount). Without the router the buy is a second transaction to the new curve right after launch.",
|
|
24
24
|
"",
|
package/src/parabolic.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { curveAbi, factoryAbi, tokenAbi } from "./abi.js";
|
|
|
4
4
|
import { encodeRegisterAgent, readAgentOwners, readAgentStatus, AGENT_LOOKUP_MAX, MAX_METADATA_URI_BYTES } from "./agents.js";
|
|
5
5
|
import { mapLimit, viemRpc, type Rpc } from "./chain.js";
|
|
6
6
|
import { isNative, progressPct, sortCoins, summaryFromGql, type CoinSummary, type SortKey, type StatusKey } from "./coins.js";
|
|
7
|
-
import { DEPLOYMENTS, NATIVE_QUOTE, chainName, explorerUrl, type Config } from "./config.js";
|
|
7
|
+
import { DEPLOYMENTS, NATIVE_QUOTE, chainName, explorerUrl, siteBase, type Config } from "./config.js";
|
|
8
8
|
import { applySlippage, graduationMarketCap, graduationSplit, marketCap, passesPriceBound, poolIdOf, priceImpact, quoteBuy, quoteSell, reservedTokensFor, spotPrice, toNumber, type CurveTerms } from "./curve.js";
|
|
9
9
|
import { docsText } from "./docs.js";
|
|
10
10
|
import { addrOf, amount, big, bool, endpointHost, num, parseAddress, parseAmount, safeMessage, str } from "./format.js";
|
|
@@ -12,6 +12,12 @@ import { RestApi, type PairFilter } from "./restapi.js";
|
|
|
12
12
|
import { Subgraph, type Fetch, type GqlCoin, type GqlDaily, type GqlProtocol } from "./subgraph.js";
|
|
13
13
|
import { encodeApprove, encodeBuy, encodeLaunch, encodeLaunchAndBuy, encodeMemoBuy, encodeSell, type Socials, type TokenParams } from "./tx.js";
|
|
14
14
|
|
|
15
|
+
/** A coin's page on the Parabolic site that serves this chain, or null on a chain with no site. */
|
|
16
|
+
const appLink = (chainId: number, token: string): string | null => {
|
|
17
|
+
const base = siteBase(chainId);
|
|
18
|
+
return base ? `${base}/coin/${token}` : null;
|
|
19
|
+
};
|
|
20
|
+
|
|
15
21
|
export const PHASES = ["NotGraduated", "Swept", "PoolCreated", "Rescued"] as const;
|
|
16
22
|
export const DEFAULT_SLIPPAGE_BPS = 100;
|
|
17
23
|
export const DEV_BUY_SLIPPAGE_BPS = 200n;
|
|
@@ -440,7 +446,7 @@ export class Parabolic {
|
|
|
440
446
|
windowEndsAt: launchedAt + windowSeconds,
|
|
441
447
|
windowOpen: currentSnipeBps > 0,
|
|
442
448
|
secondsRemaining: Math.max(0, launchedAt + windowSeconds - now),
|
|
443
|
-
exempt: "the creator only, for
|
|
449
|
+
exempt: "the creator's own address only, and for every buy inside the window, not just the opening one; there is no other exemption pathway. Check curve.snipeTaxExempt(address) or pass `buyer` to quote_buy",
|
|
444
450
|
},
|
|
445
451
|
pool: { poolId: poolId ?? null, poolFee: l.poolFee ?? null, tickSpacing: l.tickSpacing ?? null, hook: hook ?? null },
|
|
446
452
|
createdAt: launchedAt || null,
|
|
@@ -448,7 +454,7 @@ export class Parabolic {
|
|
|
448
454
|
logo: str(info[1]),
|
|
449
455
|
description: str(info[2]),
|
|
450
456
|
socials: { twitter: str(socials.twitter), telegram: str(socials.telegram), discord: str(socials.discord), website: str(socials.website), farcaster: str(socials.farcaster) },
|
|
451
|
-
links: { app:
|
|
457
|
+
links: { app: appLink(chainId, l.token), token: explorerUrl(chainId, "address", l.token) ?? null, curve: explorerUrl(chainId, "address", l.curve) ?? null, creator: explorerUrl(chainId, "address", l.deployer) ?? null },
|
|
452
458
|
source: l.source === "factory" ? "factory.getLaunchedToken + curve + token reads" : "subgraph lookup + curve + token reads",
|
|
453
459
|
};
|
|
454
460
|
}
|