Felix MCP
NPM · FELIX-MCP · SCANNED SEP 25
Non-custodial trading infrastructure for AI agents across prediction markets, crypto, and options.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 35 of 125 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency19
- Repository check failed: no source repository is declared. See how to fix → View diagnostics → Fail
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 22 days ago).Pass
- Security-disclosure policy not yet verified: we couldn't inspect the source repository.Unverified
Schema Quality & AI Usability88
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 12534 tokens (~94/item across 132 items; 125 tools + 7 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management80
- Stability observed for 24 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 7 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 126 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the Felix MCP server?
Felix MCP runs locally as an npm package, launched with npx -y felix-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · felix-mcp
claude mcp add trade-felix-mcp -- npx -y felix-mcp
{
"mcpServers": {
"trade-felix-mcp": {
"command": "npx",
"args": [
"-y",
"felix-mcp"
]
}
}
} {
"servers": {
"trade-felix-mcp": {
"command": "npx",
"args": [
"-y",
"felix-mcp"
]
}
}
} codex mcp add trade-felix-mcp -- npx -y felix-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"trade-felix-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"felix-mcp"
],
"enabled": true
}
}
} openclaw mcp add trade-felix-mcp --command npx --arg -y --arg felix-mcp
mcp_servers:
trade-felix-mcp:
command: "npx"
args: ["-y", "felix-mcp"] {
"McpServers": {
"trade-felix-mcp": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"felix-mcp"
]
}
}
} assistant mcp add trade-felix-mcp -t stdio -c npx -a -y felix-mcp
{
"mcpServers": {
"trade-felix-mcp": {
"command": "npx",
"args": [
"-y",
"felix-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 24 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 73 to 77. That category is still filling its 30-day observation window: 22 days of observed history at the previous scan, 23 at this one. The score rises as the window fills, whether or not the server changes.
- 22 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.
- 18 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.
- 15 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 25 Sept 2026 · Analysed npm/felix-mcp@2.0.110
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Dependencies 125 packages
| Packages resolved | 125 |
|---|---|
| Stale | 35 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
get_option_chain ~75
Option chain for BTC, ETH, SOL, etc: expiries, strikes, greeks, IV, quotes, and tightest_round_trip candidates ranked by quoted spread. Always use preview_order for an exact executable cost check before trading.
| Name | Type | Req | Description |
|---|---|---|---|
| underlying | string | yes | Underlying symbol, e.g. BTC, ETH, SOL. |
No output schema declared.
No examples provided.
get_order_status ~55
Poll a caller-owned Hyperliquid or Derive live-order intent after an ambiguous venue response. Retry only when safe_to_retry is true.
| Name | Type | Req | Description |
|---|---|---|---|
| intent_id | string | yes | Hyperliquid or Derive live-order intent UUID. |
No output schema declared.
No examples provided.
get_orderbook ~53
Top-of-book/orderbook view for a tradeable instrument.
| Name | Type | Req | Description |
|---|---|---|---|
| instrument | string | yes | Instrument, e.g. BTC, NVDA, option:BTC-20260711-70000-C, pm:<slug>. |
No output schema declared.
No examples provided.
get_pnl ~31
Realized/unrealized PnL, fees, net PnL, and open/closed counts.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_polymarket_order_status ~45
Reconcile a client-signed Polymarket intent after an uncertain or delayed venue response.
| Name | Type | Req | Description |
|---|---|---|---|
| intent_id | string | yes | Polymarket live-order intent UUID. |
No output schema declared.
No examples provided.
get_polymarket_wallet ~62
Read the caller-owned Polymarket deposit wallet and setup state without deploying, approving, signing, or spending gas. Pass account_id to inspect an owned child account instead of the active one.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional owned child account UUID. |
No output schema declared.
No examples provided.
get_portfolio ~19
Portfolio summary: deployed paper capital and live balances.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_positions ~21
Open paper and live positions, scoped to the key's account.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_quote ~96
Price for one instrument. Listed equity tickers can resolve to a live equity-perpetual execution mark rather than the delayed cash share price; inspect product_type, price_role, venue, tradeable, and data_class before using it. research_market provides cash-equity historical context.
| Name | Type | Req | Description |
|---|---|---|---|
| instrument | string | yes | Instrument, e.g. BTC, NVDA, option:BTC-20260711-70000-C, pm:<slug>. |
No output schema declared.
No examples provided.
get_situation ~89
Get one canonical operating snapshot: agents, positions, marks, PnL, money, pending operations, recent decisions, and active risk blocks. Partial sources are explicitly unavailable, never silently zero.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_limit | integer | – | Maximum agents, 1-100. Defaults to 25. |
| decision_limit | integer | – | Maximum recent decisions, 1-100. Defaults to 20. |
No output schema declared.
No examples provided.
get_status ~52
Fast public platform, local MCP, and current-key status. Set deep:true before onboarding or diagnosing funding to include the sanitized readiness result.
| Name | Type | Req | Description |
|---|---|---|---|
| deep | boolean | – | Include deep launch-readiness checks. Defaults to false. |
No output schema declared.
No examples provided.
get_strategy_guide ~71
Return the bundled think(ctx) API and hand-written strategy examples without an API key, network request, or generation quota. The same content is published as felix://strategy/ctx-api and felix://strategy/examples.
| Name | Type | Req | Description |
|---|---|---|---|
| section | string | – | api, examples, or all. Defaults to all. |
No output schema declared.
No examples provided.
get_subscription ~18
Current subscription/tier for the key's account.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_support_ticket ~34
Read one caller-owned support ticket and its complete two-way message thread.
| Name | Type | Req | Description |
|---|---|---|---|
| ticket_id | string | yes | Support ticket UUID. |
No output schema declared.
No examples provided.
get_tiers ~16
Pricing tiers and included API limits.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_wallet_onboarding ~42
Read a caller-owned Safe onboarding request status.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional child account UUID. |
| onboarding_id | string | yes | Onboarding UUID. |
No output schema declared.
No examples provided.
init_hyperliquid_onboarding ~93
Prepare Hyperliquid approveAgent typed data for the caller-owned main wallet. Felix creates only a scoped API wallet that cannot withdraw or transfer funds.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional caller-owned Felix subaccount UUID. |
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| main_address | string | yes | Caller-owned Hyperliquid main-wallet address. |
No output schema declared.
No examples provided.
init_wallet_onboarding ~197
Start advanced client-owned Safe onboarding. The owner key must be generated and retained outside Felix; only public addresses are sent. Read felix://getting-started before implementing the signing flow.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional child account UUID. |
| daily_limit_usd | number | – | Maximum autonomous daily total. Defaults to 500. |
| delegation_days | integer | – | Owner-signed agent delegation lifetime. Defaults to 30 days; maximum 90. |
| home_address | string | – | Optional fixed sweep-home address. Defaults to owner. |
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| lifetime_limit_usd | number | – | Maximum cumulative autonomous total for this module. Defaults to daily limit multiplied by delegation days. |
| max_operation_usd | number | – | Maximum autonomous operation size. Defaults to 100. |
| owner_address | string | yes | Client-owned EVM address. |
No output schema declared.
No examples provided.
list_accounts ~91
List isolated child accounts owned by the launcher account. Archived accounts are hidden unless requested. When next_cursor is non-null, call again with that cursor until it is null; page order is opaque and is not creation order.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | – | Optional account UUID cursor. |
| include_archived | boolean | – | Include safely archived child accounts. |
| limit | integer | – | Maximum accounts. Defaults to 50. |
No output schema declared.
No examples provided.
list_agents ~95
List this account's agents, including paused/error recovery instructions. Results are owner-scoped, bounded, and omit strategy source and encrypted state.
| Name | Type | Req | Description |
|---|---|---|---|
| before | string | – | Optional ISO-8601 created-at cursor returned as next_before. |
| limit | integer | – | Maximum agents, 1-100. Defaults to 20. |
| mode | string | – | Optional execution-mode filter. |
| status | string | – | Optional status filter. |
No output schema declared.
No examples provided.
list_exit_plans ~47
List this account's exit plans and trigger state.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | Maximum plans to return. Defaults to 100. |
| status | string | – | Optional plan status filter. |
No output schema declared.
No examples provided.
list_feedback ~31
List feedback reports belonging to this Felix account.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum reports, 1-50. |
No output schema declared.
No examples provided.
list_markets ~138
Page deterministically through a venue's complete market catalog, including active, future, resolved, or inactive markets. Follow next_cursor until complete is true.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | – | Opaque next_cursor from the previous page. |
| kind | string | – | Optional venue product filter: Hyperliquid perp|spot; Derive option|perp|erc20. |
| limit | integer | – | Page size, 1-200. Defaults to 100. |
| q | string | – | Optional text filter within the paginated catalog. |
| status | string | – | Lifecycle filter. Defaults to active. |
| venue | string | yes | Venue catalog. |
No output schema declared.
No examples provided.
list_recent_operations ~49
List durable local money operations for the active account, including progress, terminal results, and exact recovery instructions.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum operations, 1-100. Defaults to 20. |
No output schema declared.
No examples provided.
list_support_tickets ~49
List encrypted support tickets for the active Felix account.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum tickets, 1-50. Defaults to 20. |
| status | string | – | Optional ticket status. |
No output schema declared.
No examples provided.
list_webhooks ~17
List active webhooks for this account.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_withdrawal_addresses ~57
List allowlisted withdrawal addresses and owner-authorization status. A launcher manage key may target one owned child with account_id.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional owned child account UUID. Reload the launcher key before targeting a child. |
No output schema declared.
No examples provided.
make_market ~113
Reserved two-sided quote tool. Live use is disabled until compensated two-leg execution ships.
| Name | Type | Req | Description |
|---|---|---|---|
| ask_price | number | yes | Ask price. Must be above bid_price. |
| bid_price | number | yes | Bid price. |
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| instrument | string | yes | Instrument, e.g. BTC, NVDA, option:BTC-20260711-70000-C, pm:<slug>. |
| size | number | yes | Contract/share amount. |
No output schema declared.
No examples provided.
migrate_wallet_to_v3 ~198
Migrate a caller-owned legacy Safe to Felix V3 in one resumable local workflow: prove ownership, deploy only the V3 policy, locally execute enable/fallback/disable-V2, and confirm atomic account promotion.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional child account UUID. |
| daily_limit_usd | number | – | Maximum autonomous daily total. Defaults to the legacy wallet limit. |
| delegation_days | integer | – | Owner-signed V3 agent delegation lifetime. Defaults to 30 days; maximum 90. |
| idempotency_key | string | yes | Required durable workflow key, 1-128 printable ASCII characters. |
| lifetime_limit_usd | number | – | Maximum cumulative autonomous total for this V3 module. |
| max_operation_usd | number | – | Maximum autonomous operation size. Defaults to the legacy wallet limit. |
| resume_reconciliation | boolean | – | Set true to resume the exact migration after checking an interrupted owner transaction. |
No output schema declared.
No examples provided.
onboard_hyperliquid ~57
Complete Hyperliquid approveAgent onboarding for a child account (needed after the account is funded before it can trade). The owner key signs the approval locally and never reaches Felix.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | Child account UUID. |
No output schema declared.
No examples provided.
panic ~57
Emergency stop: block new exposure, cancel and flatten where possible, and revoke every active key for this account. Set confirm=true; there is no hidden phrase or waiting period.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm | boolean | yes | Set true to execute the emergency stop immediately. |
No output schema declared.
No examples provided.
place_batch_orders ~139
Place orders in one explicit mode. mode:live executes real-money orders; mode:paper simulates every item. Mixed or implicit modes are rejected. The schema accepts up to 50 items, but the active tier's order-per-minute allowance applies to the entire batch (10 on free). Processing stops before later live items after the first failure.
| Name | Type | Req | Description |
|---|---|---|---|
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| mode | string | yes | Required batch mode: live or paper. |
| orders | array | yes | Orders: {instrument, side, size_usd, type?, limit_price?, allow_leverage?}. |
No output schema declared.
No examples provided.
place_order ~634
Place a real-money order by default, optionally funding the selected venue first and attaching a server-monitored OCO exit plan. Set auto_fund:true for one-call local-signing fund-then-trade; it requires an idempotency_key and never exposes the owner key. Set paper:true explicitly to simulate. Leveraged Hyperliquid exposure is blocked unless allow_leverage:true is explicit.
| Name | Type | Req | Description |
|---|---|---|---|
| allow_leverage | boolean | – | Set true only after reviewing collateral. Omitted or false blocks orders whose notional exceeds free Hyperliquid collateral. |
| auto_fund | boolean | – | When true, preflight and locally sign the minimum owner-to-venue funding needed before placing the live order. |
| auto_swap_native_usdc | boolean | – | Allow the auto-funding workflow to convert only the needed Polygon native USDC to USDC.e. Defaults to true. |
| break_even_after_pct | number | – | After this profit fraction, close if price returns to entry. |
| idempotency_key | string | – | Optional retry-safety key; required when attaching an exit plan. |
| instrument | string | yes | Instrument, e.g. BTC, NVDA, option:BTC-20260711-70000-C, pm:<slug>. |
| limit_price | number | – | Optional paper limit price. For live Polymarket market/FOK orders, this is an explicit maximum buy price or minimum sell price that Felix must match exactly; type:"limit" remains paper-only. |
| max_auto_fund_usd | number | – | Optional hard ceiling on venue funding. When omitted, auto_fund may move only the minimum amount disclosed by preview_order.auto_fund_plan; the separately disclosed network fee still applies. |
| max_holding_minutes | number | – | Close after this many minutes regardless of PnL. |
| max_round_trip_loss_pct | number | – | Maximum projected immediate round-trip loss for live Derive orders. Defaults to the server safety threshold. |
| paper | boolean | – | Set true explicitly for a paper simulation. Omitted or false means real-money execution and requires a live-enabled key. |
| reduce_only | boolean | – | Only reduce an existing live position when supported. |
| resume_reconciliation | boolean | – | Resume this exact auto-funded order only after confirming its saved workflow state and current balances. Never use a new idempotency key. |
| side | string | yes | buy|sell|long|short|yes|no |
| size_usd | number | yes | Dollar notional to spend or trade. |
| stop_loss_pct | number | – | Close when loss from entry reaches this decimal fraction, e.g. 0.05 for 5%. |
| take_profit_pct | number | – | Close when profit from entry reaches this decimal fraction, e.g. 0.10 for 10%. |
| trailing_activation_pct | number | – | Optional profit fraction required before the trailing stop arms. Defaults to immediate. |
| trailing_stop_pct | number | – | Ratchet behind the favorable price by this decimal fraction. |
| type | string | – | market|limit. Live supports market only; limit is paper-simulation only. |
No output schema declared.
No examples provided.
prepare_derive_onboarding ~114
Prepare exact Derive-chain transactions for the verified owner wallet to send. Felix never receives the owner key.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional owned child account UUID. |
| expiry_days | number | – | Session lifetime in days, 1-30. Defaults to 30. |
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| max_deposit_usd | number | yes | Exact maximum Derive USDC allowance, up to the $1B protocol range. |
No output schema declared.
No examples provided.
prepare_polymarket_withdrawal_grant ~100
Build the exact fixed-home Polymarket withdrawal message for the client-owned wallet to sign. This never signs or moves funds.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional child account UUID. |
| expires_in_seconds | integer | – | Grant lifetime from 120 to 86400 seconds. |
| max_operation_usd | number | – | Optional owner-authorized pUSD moved home per operation. Defaults to the $1B protocol range. |
No output schema declared.
No examples provided.
prepare_wallet_policy ~111
Prepare an owner-signed Safe V3 pause, resume, renewal, or emergency lockdown. Lockdown atomically pauses the agent and revokes fixed Polymarket approvals.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional child account UUID. |
| action | string | yes | pause|resume|renew|lockdown. |
| delegation_days | integer | – | Renewal lifetime in days. Valid only for renew; maximum 90. |
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
No output schema declared.
No examples provided.
prepare_withdrawal ~140
Prepare an exact Safe withdrawal transaction after allowlist checks. USDC.e means bridged USDC.e on Polygon, which many centralized exchanges do not support; prefer a self-custody Polygon wallet and convert before an exchange deposit. Returns EIP-712 data for the owner to sign locally; no money moves yet.
| Name | Type | Req | Description |
|---|---|---|---|
| amount | number | yes | Amount in token units. |
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| to | string | yes | Confirmed allowlisted Polygon destination. |
| token | string | – | USDC.e|USDC|pUSD. Defaults to USDC.e. |
No output schema declared.
No examples provided.
preview_fee_settlement ~78
Deprecated compatibility alias for preview_fee_top_up. It previews prepaid execution-fee credit and never exposes the collection address.
| Name | Type | Req | Description |
|---|---|---|---|
| amount_usd | number | yes | USDC.e amount to prepay for future live execution fees. |
| idempotency_key | string | yes | Required workflow replay key. Reuse this exact key for settle_fees. |
No output schema declared.
No examples provided.
preview_fee_top_up ~86
Preview an owner-signed execution-fee credit top-up without signing or exposing Felix's collection address. Nothing moves until top_up_fee_balance is called.
| Name | Type | Req | Description |
|---|---|---|---|
| amount_usd | number | yes | USDC.e amount to prepay for future live execution fees. |
| idempotency_key | string | yes | Required workflow replay key. Reuse this exact key for top_up_fee_balance. |
No output schema declared.
No examples provided.
preview_order ~296
Preview an order before placing it. No money moves; returns estimated fill, fees, live minimum, collateral, selected venue, and projected Hyperliquid leverage. Set auto_fund:true to include the exact owner-to-venue funding plan without executing it.
| Name | Type | Req | Description |
|---|---|---|---|
| allow_leverage | boolean | – | Set true only after reviewing collateral. Omitted or false blocks orders whose notional exceeds free Hyperliquid collateral. |
| auto_fund | boolean | – | Include a read-only funding plan when venue collateral is short. This preview never moves money. |
| instrument | string | yes | Instrument, e.g. BTC, NVDA, option:BTC-20260711-70000-C, pm:<slug>. |
| limit_price | number | – | Optional paper limit price. For live Polymarket market/FOK orders, this is an explicit maximum buy price or minimum sell price that Felix must match exactly; type:"limit" remains paper-only. |
| max_round_trip_loss_pct | number | – | Maximum projected immediate round-trip loss for live Derive orders. Defaults to the server safety threshold. |
| reduce_only | boolean | – | Only reduce an existing live position when supported. |
| side | string | yes | buy|sell|long|short|yes|no |
| size_usd | number | yes | Dollar notional to spend or trade. |
| type | string | – | market|limit. Live supports market only; limit is paper-simulation only. |
No output schema declared.
No examples provided.
reconcile_polymarket_order ~102
Resume the side-effect-free Felix commit/reconciliation step when Polymarket returned an order hash but the API response was interrupted. This never posts a venue order.
| Name | Type | Req | Description |
|---|---|---|---|
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| intent_id | string | yes | Polymarket live-order intent UUID. |
| order_id | string | yes | Exact 0x-prefixed Polymarket order hash returned by the local signer. |
No output schema declared.
No examples provided.
reload_launcher_key ~42
Reload the current launcher API key and owner signer from macOS Keychain, validate their encrypted workflow journal, and explicitly leave any child account. No secret is returned.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
repair_derive_session ~113
Renew an expired or missing Derive session in one local, owner-signed workflow while preserving the existing subaccount and funds.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional owned child account UUID. |
| expiry_days | number | – | Renewed session lifetime in days. Defaults to 30. |
| idempotency_key | string | yes | Required stable workflow key. Reuse it after interruption. |
| max_deposit_usd | number | – | Owner-authorized Derive allowance; defaults to the $1B protocol range. |
No output schema declared.
No examples provided.
reply_support_ticket ~68
Add an encrypted message to an open caller-owned support ticket.
| Name | Type | Req | Description |
|---|---|---|---|
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| message | string | yes | Reply text, 1-4000 characters. |
| ticket_id | string | yes | Support ticket UUID. |
No output schema declared.
No examples provided.
report_feedback ~100
Report a Felix bug, product issue, or request. Content is encrypted at rest and never logged.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | yes | Problem area. |
| context | object | – | Optional diagnostic identifiers only; never include secrets. |
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
| message | string | yes | Problem description, 10-4000 characters. |
| severity | string | – | Severity. Defaults to medium. |
No output schema declared.
No examples provided.
research_market ~88
Real historical research cards and agent-ready market signals without using the strategy-generation token budget.
| Name | Type | Req | Description |
|---|---|---|---|
| bars | integer | – | Historical bars. Free supports 750; paid tiers expose their larger limit in get_subscription. |
| interval | string | – | Research timeframe. Defaults to 1h. |
| symbol | string | yes | Ticker such as BTC, ETH, AAPL, SPY, or NVDA. |
No output schema declared.
No examples provided.
resolve_network_fee ~175
Resolve one exact funding-fee obligation. action=release is allowed only when Felix proves no owner funds moved; action=pay locally signs the fixed gas-wallet fee only after a verified owner-value funding transaction.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional owned child account UUID. |
| action | string | – | Resolution action. Defaults to release for backward compatibility. |
| confirm_no_owner_funds_moved | boolean | – | Must be true for action=release after inspecting get_network_fee_status. |
| fee_obligation_id | string | yes | Obligation UUID returned by get_network_fee_status. |
| idempotency_key | string | yes | Required retry-safety key. Reuse it after any timeout. |
| max_payment_usd | number | – | Required caller-approved ceiling for action=pay. The exact fixed gas-wallet fee must not exceed it. |
No output schema declared.
No examples provided.
resume_backtest_operation ~50
Resume a durable backtest only after its operation lease expired, typically after an API restart. The encrypted original request is reused.
| Name | Type | Req | Description |
|---|---|---|---|
| operation_id | string | yes | Operation id returned by start_backtest. |
No output schema declared.
No examples provided.
resume_money_operation ~93
Resume an interrupted asynchronous money operation with its original encrypted arguments and idempotency key. When a prior send may have happened, confirm_reconciled:true is required.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_reconciled | boolean | – | Set true only after reconciling balances/hashes when the status reports money_moved true or unknown. |
| operation_id | string | yes | Operation id returned by start_fund_market or start_bring_home. |
No output schema declared.
No examples provided.
revoke_polymarket_withdrawal_grant ~62
Revoke the stored Polymarket fixed-home withdrawal authorization for the account.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | – | Optional child account UUID. |
| idempotency_key | string | – | Optional retry-safety key. Auto-generated when omitted. |
No output schema declared.
No examples provided.
What is the Felix MCP server?
Felix MCP is listed in the public MCP registry as trade.felix/mcp. Non-custodial trading infrastructure for AI agents across prediction markets, crypto, and options. This page covers its npm package (felix-mcp).
Is the Felix MCP server safe to use?
Felix MCP scores 78 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 25 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Felix MCP server expose?
Felix MCP exposes 125 tools: get_status, get_health, get_metrics, get_custody_recovery_status, get_strategy_guide, and 120 more. Their descriptions and schemas cost roughly 12,375 tokens of context every time the server is loaded.
Is the Felix MCP server still maintained?
Felix MCP is still listed as active in the MCP registry. We last reached this channel on 25 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Felix MCP server under?
Felix MCP declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.