Polymarket Positions Held by One Wallet (Up to 50)
omnial/polymarket-wallet-positions
Given a Polymarket wallet address, returns up to 50 of that wallet's positions: for each, the market's question and condition ID, the outcome held, the number of shares, the average entry price and current price, the current value, the cash profit or loss and the realized profit or loss, and whether the position can be redeemed.
Price
Up to $0.0328 per call; you pay what the call used
The price shown is the price you pay. No monthly minimum. Top-ups start at $5.
Data source
Polymarket
Data from Polymarket.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/polymarket-wallet-positions" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/polymarket-wallet-positions" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/polymarket-wallet-positions", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/polymarket-wallet-positions", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0328 |
- Updated
- Oct 14, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"address"
],
"properties": {
"limit": {
"enum": [
50
],
"type": "integer",
"default": 50,
"description": "Positions returned: up to 50. The only value offered."
},
"offset": {
"enum": [
0
],
"type": "integer",
"default": 0,
"description": "Positions skipped: 0, the first page. The only value offered."
},
"address": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$",
"description": "The Polymarket proxy wallet address to look up (the address on the trader's Polymarket profile, not the wallet they sign in with): 0x followed by 40 hex characters."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"size": {
"type": "number",
"description": "Shares of the outcome held."
},
"cash_pnl": {
"type": "number",
"description": "Cash profit or loss on the position."
},
"question": {
"type": "string",
"description": "The market's question."
},
"avg_price": {
"type": "number",
"description": "Average entry price per share."
},
"cur_price": {
"type": "number",
"description": "Current price per share."
},
"redeemable": {
"type": "boolean",
"description": "Whether the position can be redeemed now."
},
"condition_id": {
"type": "string",
"description": "The market's condition ID, a 0x-prefixed hex string."
},
"realized_pnl": {
"type": "number",
"description": "Realized profit or loss."
},
"current_value": {
"type": "number",
"description": "Current value of the shares held."
},
"outcome_label": {
"type": "string",
"description": "The outcome held, such as Yes or No."
}
}
},
"description": "Up to 50 positions held by the wallet."
}
},
"description": "The wallet's positions, as returned after shaping."
}