# Vealth MCP server for GMX v2, live — try it yourself, no signup

**URL:** <https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151>\
**Category:** Feature Discussion\
**Created:** [August 15, 2026, 10:46pm UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151 "2026-08-15T22:46:59Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![brawlaphant](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/brawlaphant/32/354_2.png) [@brawlaphant](https://gov.gmx.io/u/brawlaphant)\
**Post date:** [August 15, 2026, 10:46pm UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/1 "2026-08-15T22:46:59Z")

</div>

**GMX v2 MCP server, live — try it yourself, no signup**

* * *

brawlaphant here (EcoWealth / Vealth).

GMX’s own AI Agents docs say the official MCP server is **“under development and not yet available.”**

So we built one and put it live.

Try it right now — no signup, no key:

```auto
curl -X POST https://vealth.net/mcp \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"gmx_get_prices","arguments":{}}}'

```

That’s a real call against live GMX v2 Arbitrum oracle prices right now.

Point any MCP client at [Connect your AI · Vealth](https://vealth.net/mcp) .

The tools show up in `tools/list` alongside our other public tools.

**Five tools:**

- `gmx_get_positions`

- `gmx_get_orders`

- `gmx_get_prices`

Read-only and free.

- `prepare_gmx_order`

- `submit_gmx_order`

Non-custodial. We return unsigned transaction data, you sign with your own wallet, and we relay the already-signed transaction.

**We never hold or ask for a private key.**

Built directly against the documented contracts, not the official `@gmx-io/sdk` — that pulls in `react-native` transitively with real HIGH-severity vulnerabilities, an avoidable risk for a production trading backend.

**Zero new dependencies here.**

Repo’s private for now. Happy to open-source the tool itself or hand it to whoever’s picking up the official MCP work.

No ask attached — it’s live either way.

— **brawlaphant / EcoWealth**

> **[Vealth · Find useful work. Build a life from it.](https://vealth.net/)**
>
> Every job shows the place, the task, the proof, and the pay before you begin. Start today and grow toward mastery.

---

<div class="post-metadata">

**Author:** ![brawlaphant](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/brawlaphant/32/354_2.png) [@brawlaphant](https://gov.gmx.io/u/brawlaphant)\
**Post date:** [August 16, 2026, 9:27pm UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/2 "2026-08-16T21:27:06Z")

</div>

Follow-up to yesterday’s MCP post. Everything below now lives in one place, written specifically for this team:

> **[EcoWealth × GMX · the agent door, built and live](https://vealth.net/gmx/)**
>
> GMX's docs told agents the MCP server wasn't available. Holders built one and put it live, plus seven evidenced findings across the ecosystem, every fix drafted.

The server is still answering. Five GMX v2 tools, non-custodial, free to call, no API key:

```auto
curl -X POST https://vealth.net/mcp \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"gmx_get_prices","arguments":{}}}'

```

Reads are open: positions, orders, and oracle prices for any wallet.

Writes are prepare-unsigned: you sign, we relay the signed transaction. We never see a key. Entries are bounded to mark ±2%, with test coverage on the bound.

One concrete SDK issue worth someone’s afternoon:

A clean install of `@gmx-io/sdk@1.6.4` resolves 304 packages, and `npm audit` returns 16 findings, including 7 HIGH.

The entire HIGH chain exists to supply a `performance.now()` polyfill:

`@gmx-io/sdk → isomorphic-performance → react-native-performance → react-native → metro tooling → image-size`

Relevant advisories:

`GHSA-w3rx-r6r6-pgpr`  
`GHSA-5p2g-fcmc-qvqq`

Both are CVSS 7.5.

Any org gating CI on `npm audit` fails the moment it installs the official SDK. Replacing the `isomorphic-performance` branch is a one-dependency swap. Happy to file the reproducible issue on the repo if useful.

The site above carries the rest: seven findings with a source on every claim, the live demo, the full tool schemas, and the strengths the same reading found, because there were plenty.

Each page’s hash is anchored on Base through our public proof ledger, so what you read cannot quietly change afterward.

We would genuinely like feedback on this.

If you use the server, tell us what is missing. If a finding is wrong, say so on this thread and we will correct it and note the correction.

If the useful move is open-sourcing the tool or handing it to whoever picks up the official MCP work, one reply here starts it.

---

<div class="post-metadata">

**Author:** ![Saurabh](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/saurabh/32/1237_2.png) [@Saurabh](https://gov.gmx.io/u/Saurabh)\
**Post date:** [August 18, 2026, 10:32am UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/3 "2026-08-18T10:32:26Z")

</div>

Hey @brawlaphant, very interesting would love to talk more about it. Can you dm me on Tg: @saurabhd1

---

<div class="post-metadata">

**Author:** ![Jonezee](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/jonezee/32/1238_2.png) [@Jonezee](https://gov.gmx.io/u/Jonezee)\
**Post date:** [August 21, 2026, 11:19am UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/4 "2026-08-21T11:19:32Z")

</div>

Appreciate your efforts Brawly!

---

<div class="post-metadata">

**Author:** ![brawlaphant](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/brawlaphant/32/354_2.png) [@brawlaphant](https://gov.gmx.io/u/brawlaphant)\
**Post date:** [August 21, 2026, 8:36pm UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/5 "2026-08-21T20:36:33Z")

</div>

**@Jonezee** — thanks for the read.

One thing worth digging into is the `acceptablePrice` fix we found on entry orders. If you spin up the tool and prepare any order, you can decode the transaction with `abiCoder.decode()` and see it bound at ~2%.

The live trader that had this unbounded for 5+ months never caught it because the issue only surfaces when you **prepare a transaction** — not in the docs or from auditing the contract alone.

That’s the gap the tool exposes.

**@Saurabh** — the ecosystem findings are on-chain anchored: Base proof ledger, immutable timestamp, queryable records.

The SDK’s React Native transitive dependency includes real **HIGH CVEs**. The seven findings map directly to agent pain points where GMX v2 works, but the official path doesn’t.

We’re not offering feedback — we’re offering proof that agents can trade GMX v2 **right now** , without waiting.

**Why public, not just DMs:** other builders are hitting the same gaps. If GMX cares about agent adoption, the data is here.

**What we’re actually building:** an agent fleet that trades GMX v2 at scale.

We’re long on GMX — we have skin in the game. We want more agents spawning, more volume, and more token appreciation. Agents that leverage trade, take profits intelligently, and loop capital back into GMX.

A new buyer class built on perp volume.

**In parallel:** we’re building perp → EWP settlement.

Agents trade perps — Avantis on Base, Lighter on RH — and profits fund ecological work directly through single-chain routes.

That’s our core vision.

**The honest constraint:** GMX is on Arbitrum; EWP is on Base/RH.

We could route GMX profits through Relay to EWP today, but third-party bridges introduce systemic risk we’re not betting on yet. That’s research for later.

For now:

**GMX agents drive token appreciation.**  
**EWP agents drive work funding.**

Both fleets. Separate objectives. Both real.

We’re telling you because you’re reading the material, and we want you to know the vision is real and the commitment is solid.

> <https://x.com/ecowealth_eth/status/2090905900316033224?s=20>

---

<div class="post-metadata">

**Author:** ![brawlaphant](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/brawlaphant/32/354_2.png) [@brawlaphant](https://gov.gmx.io/u/brawlaphant)\
**Post date:** [September 17, 2026, 7:08pm UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/6 "2026-09-17T19:08:05Z")

</div>

Update from our side.

Saurabh originally reached out after we shipped the independent GMX MCP in August. We’ve kept building since then.

GMX’s agent surface has also moved substantially: gmx-ai skills are now public, the API/SDK surface has expanded, while the official MCP is still listed as under development.

We’ve been reviewing our implementation against that newer stack and found one material weakness in our own write path: our signed-transaction relay validation was not strict enough to guarantee that every material field matched the transaction Vealth originally prepared.

We’re fixing that rather than pretending it isn’t there.

The read-side MCP remains useful. For the write side we’re moving to canonical prepared intent + exact transaction reconstruction/validation, with a mutation suite that must reject changes to value, transfer legs, collateral, size, leverage, execution fee, acceptable price, receivers, order count and the other security-critical fields before relay.

Once that closes, we’ll have something more useful than another MCP demo: an independently built MCP implementation plus an adversarial test boundary for agent-generated GMX transactions.

Who currently owns the MCP / agent API work inside GM Labs?

Happy to compare implementations, contribute the tests, open the relevant component, or simply keep running ours independently.

---

<div class="post-metadata">

**Author:** ![brawlaphant](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/brawlaphant/32/354_2.png) [@brawlaphant](https://gov.gmx.io/u/brawlaphant)\
**Post date:** [September 17, 2026, 7:29pm UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/7 "2026-09-17T19:29:42Z")

</div>

One thing the ZZZ / autonomous-protocol work has made me think about:

I’m interested in the idea, but right now participating means manually taking another token position and entering another gated community, while the thing I actually want is agent-native participation through Claude or Codex.

I understand that side is still being built. We’re dealing with the same reality ourselves while hardening the GMX MCP.

So my question for GMX is simpler: **is GMX expected to become an early execution or proving ground for this broader autonomous-protocol work?**

That would be much more interesting to me than another isolated token position. GMX already has the markets, capital, APIs and increasingly the agent infrastructure. I’d like to see these things compound rather than fragment.

---

<div class="post-metadata">

**Author:** ![brawlaphant](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/brawlaphant/32/354_2.png) [@brawlaphant](https://gov.gmx.io/u/brawlaphant)\
**Post date:** [September 24, 2026, 11:34pm UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/8 "2026-09-24T23:34:12Z")

</div>

**Heads-up for whoever owns**

**gmx-ai**

Since the **v2.2c switch on Sept. 14** , the addresses in the official agent skills (gmx-io/gmx-ai) point to routers that no longer have permission.

On **Arbitrum** , all seven write routers currently listed there return false for CONTROLLER on the RoleStore, while the corresponding routers in gmx-interface config return true.

An agent following the current skills therefore hits:

Unauthorized(…, “ROUTER\_PLUGIN”)

across order, subaccount, gasless relay, GLV, and multichain calls.

**Avalanche has the same issue across nine addresses.**

We found this first in our own MCP: it was still using the old ExchangeRouter until today. We fixed that, deployed it, and then checked the official skills—which exposed the broader drift.

PR with the **18 corrected addresses** , each sourced from gmx-interface:

Our MCP is now on **v2.2c**. For example, prepare\_gmx\_order returns a transaction targeting:

0x7dE39FF2…83f1

The MCP is live here:

curl -X POST [Connect your AI · Vealth](https://vealth.net/mcp) \

-H ‘content-type: application/json’ \

-d ‘{“jsonrpc”:“2.0”,“id”:1,“method”:“tools/call”,“params”:{“name”:“gmx\_get\_prices”,“arguments”:{}}}’

Until the official MCP ships, we’re happy for the Vealth MCP to be listed in the AI-agents docs as a working option.

> <https://github.com/gmx-io/gmx-ai/pull/11>
>
> The contract addresses in these skills are the v2.2b set. Since the v2.2c switch… on 2026-09-14, the Arbitrum write routers listed here no longer hold the CONTROLLER role on the RoleStore (\`0x3c3d99FD298f679DBC2CEcd132b4eC4d0F5e6e72\`), so an agent following the skills builds orders that revert with \`Unauthorized(router, "ROUTER\_PLUGIN")\`.
> 
> This PR replaces the 18 addresses that differ from gmx-interface's own config (\`sdk/src/configs/contracts.ts\`, Arbitrum and Avalanche blocks) in all three copies of the skills. Nothing else changes.
> 
> Check any Arbitrum router in one call: \`RoleStore.hasRole(addr, keccak256(abi.encode("CONTROLLER")))\`. Old set false, new set true:
> 
> | Contract | Old (false) | New (true) |
> |---|---|---|
> | ExchangeRouter | \`0x1C3fa76e6E1088bCE750f23a5BFcffa1efEF6A41\` | \`0x7dE39FF2e232A2203196788d37e234cF8F1b83f1\` |
> | SubaccountRouter | \`0xdD00F639725E19a209880A44962Bc93b51B1B161\` | \`0x9c05880A2AaD7530c69e18e342eDC9E06cc757db\` |
> | GelatoRelayRouter | \`0xa9090E2fd6cD8Ee397cF3106189A7E1CFAE6C59C\` | \`0x5503b99308dB6923758F9A22d118207D633c4e87\` |
> | SubaccountGelatoRelayRouter | \`0x517602BaC704B72993997820981603f5E4901273\` | \`0xfD0596f708d9D950E0eF7b5d191e5F8e55b8a67f\` |
> | GlvRouter | \`0x7EAdEE2ca1b4D06a0d82fDF03D715550c26AA12F\` | \`0x167540D2DFF14120365CfDDF2F86e3045D4fa712\` |
> | MultichainOrderRouter | \`0xD38111f8aF1A7Cd809457C8A2303e15aE2170724\` | \`0xABFC734f7CFc9352AED7a97b1F6a236eae831e8A\` |
> | LayerZeroProvider | \`0xB6DE222dAef5029f31b8fABE498D34f3c491Ef85\` | \`0x0B33EBA531e5a5A331a3Ff9F418B8205F01C2869\` |
> 
> Botanix is not in the interface config, so it is untouched. \`gmx-synthetics\` \`deployments/arbitrum/ExchangeRouter.json\` on \`main\` and \`release-v2.2c\` still shows the retired router too.
> 
> Found while fixing the same stale router in our own GMX MCP (vealth.net/mcp).
> 
> 🤖 Generated with \[Claude Code\](https://claude.com/claude-code)
> 
> https://claude.ai/code/session\_01BC2hnZu7v1YBR6TbuVkiYi

---

<div class="post-metadata">

**Author:** ![Jonezee](https://sea2.discourse-cdn.com/flex020/user_avatar/gov.gmx.io/jonezee/32/1238_2.png) [@Jonezee](https://gov.gmx.io/u/Jonezee)\
**Post date:** [September 25, 2026, 10:05am UTC](https://gov.gmx.io/t/vealth-mcp-server-for-gmx-v2-live-try-it-yourself-no-signup/5151/9 "2026-09-25T10:05:00Z")

</div>

Thanks Brawly, we’ll address this asap.
