# Nyx Fund Developer Platform — Full API Reference > Machine-readable full reference for AI agents and coding assistants. Every fact here > is generated from the same registries that power https://nyxchain.org/developers and the > live `/api/v1/*` routes — it cannot drift from what those surfaces actually serve. > See https://nyxchain.org/llms.txt for the shorter product-level summary. ## Trust Centre - [Trust Centre](https://nyxchain.org/trust): vendor due-diligence questionnaire, NAV & valuation methodology, business & data continuity statement, and security & compliance roadmap — each document is also a downloadable PDF. ## Fund Data API (read-only — Authorization: Bearer ) Base URL: https://nyxchain.org/api/v1. Reflects Nyx's own shadow NAV, reconciled against your fund administrator — never an official book of record. A published demo key works against every endpoint below with a synthetic fixture fund, zero signup required. ### GET /api/v1/fund/overview — Fund Overview The fund's base currency, inception date, AUM target, share classes, and latest NAV summary. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: (no parameters) Sample response (truncated): ```json { "fund": { "baseCurrency": "USD", "inceptionDate": "2024-03-01", "aumTarget": "25000000.00" }, "shareClasses": [ { "name": "Class A", "currency": "USD", "mgmtFeeAnnualRate": "0.02", "perfFeeRate": "0.20", "hurdleAnnualRate": null, "crystallizationFrequency": "quarterly", "feeExempt": false, "status": "open" } ], "latestNav": { "valuationDate": "2026-07-20", "status": "complete", "grossAssetValue": "18624531.12", "netAssetValue": "18450210.44" } } ``` ### GET /api/v1/fund/positions — Positions The fund's current row-level live positions (never paper-trading holdings). Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: (no parameters) Sample response (truncated): ```json { "totalValueUsd": "18450210.44", "positionCount": 6, "truncated": false, "rows": [ { "asset": "BTC", "quantity": "112.35000000", "priceUsd": "64000.00", "valueUsd": "7190400.00", "sourceType": "exchange", "source": "Binance" }, { "asset": "ETH", "quantity": "1850.00000000", "priceUsd": "3400.00", "valueUsd": "6290000.00", "sourceType": "exchange", "source": "Coinbase" }, { "asset": "USDC", "quantity": "2650000.00000000", "priceUsd": "1.00", "valueUsd": "2650000.00", "sourceType": "wallet", "source": "Ethereum wallet" }, { … (truncated) ``` ### GET /api/v1/fund/breakdown — Portfolio Breakdown The fund's current portfolio breakdown by asset, source type, and venue. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: (no parameters) Sample response (truncated): ```json { "total_aum": 18450210.44, "rows": [ { "asset": "BTC", "quantity": 112.35, "price_usd": 64000, "value_usd": 7190400, "source": "Binance", "source_type": "exchange" }, { "asset": "ETH", "quantity": 1850, "price_usd": 3400, "value_usd": 6290000, "source": "Coinbase", "source_type": "exchange" }, { "asset": "USDC", "quantity": 2650000, "price_usd": 1, "value_usd": 2650000, "source": "Ethereum wallet", "source_type": "wallet" }, { "asset": "SOL", "quantity": 9800, … (truncated) ``` ### GET /api/v1/fund/exposure — Current Exposure The fund's current gross/net/long/short/cash exposure snapshot. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: (no parameters) Sample response (truncated): ```json { "totalValueUsd": 18450210.44, "cashUsd": 2833810.44, "longUsd": 15616400, "shortUsd": 0, "grossUsd": 15616400, "netUsd": 15616400, "byAssetClass": [ { "key": "crypto", "longUsd": 15616400, "shortUsd": 0, "grossUsd": 15616400, "netUsd": 15616400, "pctOfGross": 1 }, { "key": "stablecoin", "longUsd": 2650000, "shortUsd": 0, "grossUsd": 2650000, "netUsd": 2650000, "pctOfGross": 0.16969339924694551 }, { "key": "fiat", "longUsd": 183810.44, "shortUsd": 0, "grossUsd": 183810.44, "netUsd": 183810.44, … (truncated) ``` ### GET /api/v1/fund/exposure/series — Exposure Series The fund's exposure evolution over a trailing window of days. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: - days (integer, optional): — Sample response (truncated): ```json [ { "date": "2026-06-21", "navRunId": "demo-nav-run-2026-06-21", "runStatus": "complete", "grossUsd": 15020000, "netUsd": 15020000, "longUsd": 15020000, "shortUsd": 0, "cashUsd": 2500000, "unpricedCount": 0 }, { "date": "2026-07-05", "navRunId": "demo-nav-run-2026-07-05", "runStatus": "complete", "grossUsd": 15340000, "netUsd": 15340000, "longUsd": 15340000, "shortUsd": 0, "cashUsd": 2580000, "unpricedCount": 0 }, { "date": "2026-07-20", "navRunId": "demo-nav-run-2026-07-20", "runStatus": "complete", "grossUsd": 15616400, "netUsd": 15616400, "longUsd": 15616400, … (truncated) ``` ### GET /api/v1/fund/nav/history — NAV History The fund's daily NAV history with BTC/ETH reference prices. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: - days (integer, optional): — Sample response (truncated): ```json [ { "date": "2026-06-20", "nav_usd": 17510230.1, "btc_price": 61200, "eth_price": 3280 }, { "date": "2026-07-05", "nav_usd": 17960120.55, "btc_price": 62850, "eth_price": 3340 }, { "date": "2026-07-20", "nav_usd": 18450210.44, "btc_price": 64000, "eth_price": 3400 } ] ``` ### GET /api/v1/fund/pnl/attribution — P&L Attribution P&L attribution between the NAV run on a given date and the immediately preceding usable run. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: - date (string, required): — Sample response (truncated): ```json { "status": "ok", "fromDate": "2026-07-19", "toDate": "2026-07-20", "fromRunId": "demo-nav-run-2026-07-19", "toRunId": "demo-nav-run-2026-07-20", "navFromUsd": "18321810.12", "navToUsd": "18450210.44", "deltaNavUsd": "128400.32", "lines": [ { "key": "price_effect", "amountUsd": "104200.00", "amountNum": 104200 }, { "key": "fee_effect", "amountUsd": "-14200.18", "amountNum": -14200.18 }, { "key": "new_position_effect", "amountUsd": "32400.50", "amountNum": 32400.5 }, { "key": "residual", "amountUsd": "6000.00", "amountNum": 6000 } … (truncated) ``` ### GET /api/v1/fund/risk/var — Value at Risk (VaR) A parametric Value-at-Risk estimate for the live portfolio. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: - confidence (0.95 | 0.99, optional): — - horizonDays (1 | 10, optional): — - method ("sample" | "ewma", optional): — - windowDays (integer, optional): — Sample response (truncated): ```json { "simulated": true, "var": { "confidence": 0.95, "horizonDays": 1, "method": "sample", "varUsd": "742300.00", "navIncludedUsd": "18450210.44", "totalNavUsd": "18450210.44", "portfolioVolDaily": 0.032, "perAssetVol": [ { "asset": "BTC", "volDaily": 0.0328, "observations": 180 }, { "asset": "ETH", "volDaily": 0.0403, "observations": 180 }, { "asset": "SOL", "volDaily": 0.0498, "observations": 180 } ], "correlations": [ { "a": "BTC", … (truncated) ``` ### GET /api/v1/fund/trial-balance — Trial Balance The fund's trial balance as of a given date. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: - asOf (string, optional): — Sample response (truncated): ```json { "asOf": "2026-07-20", "truncated": false, "totalDebit": "18450210.44", "totalCredit": "18450210.44", "rows": [ { "code": "1000", "name": "Cash", "type": "asset", "normalSide": "debit", "totalDebit": "2650000.00", "totalCredit": "0.00", "balance": "2650000.00" }, { "code": "1190", "name": "Digital Assets", "type": "asset", "normalSide": "debit", "totalDebit": "15800210.44", "totalCredit": "0.00", "balance": "15800210.44" }, { "code": "2000", "name": "LP Capital", "type": "equity", "normalSide": "credit", "totalDebit": "0.00", … (truncated) ``` ### GET /api/v1/fund/capital-accounts — Capital Accounts Per-investor capital accounts for the fund's latest complete NAV run. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: (no parameters) Sample response (truncated): ```json { "status": "ok", "navRunId": "demo-nav-run-2026-07-20", "valuationDate": "2026-07-20", "rows": [ { "fee_account_id": "demo-series-a", "valuation_date": "2026-07-20", "lot_units": "10000.000000000000000000", "pfn_per_unit": "1848.09604400", "pre_fee_capital": "18480960.44000000", "own_mgmt_accrued": "30750.00000000", "own_perf_accrued": "0.00000000", "own_perf_banked": "0.00000000", "own_fees_total": "30750.00000000", "closing_capital": "18450210.44000000", "per_series_nav_per_unit": "1845.02104400" } ] } ``` ### GET /api/v1/fund/expenses — Expenses The fund's expense accruals/payments. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: - limit (integer, optional): — Sample response (truncated): ```json { "truncated": false, "rows": [ { "expenseId": "demo-exp-001", "category": "fund_admin", "memo": "Q3 fund administration fee", "entryDate": "2026-07-01", "accruedUsd": "4200.00", "paidUsd": "4200.00", "outstandingUsd": "0.00", "reversed": false }, { "expenseId": "demo-exp-002", "category": "audit", "memo": null, "entryDate": "2026-07-05", "accruedUsd": "3000.00", "paidUsd": "0.00", "outstandingUsd": "3000.00", "reversed": false }, { "expenseId": "demo-exp-003", "category": "custody", "memo": "Monthly custody fee", "entryDate": "2026-07-10", "accruedUsd": "850.00", "paidUsd": "850.00", … (truncated) ``` ### GET /api/v1/fund/fee-terms — Fee Terms The fund's configured management/performance fee terms and share classes. Auth: Requires an Authorization: Bearer header (a nyx_dk_… developer key, minted from the developer console at /developers/console). Reflects Nyx's shadow NAV, reconciled against your fund administrator. Parameters: (no parameters) Sample response (truncated): ```json { "configured": true, "mgmtFeePct": "2.00", "perfFeePct": "20.00", "hurdleRatePct": null, "crystallizationFrequency": "quarterly", "mgmtFeeFrequency": "monthly", "unitBasePrice": "1000.00", "mgmtFeeBase": "pre_fee_nav", "shareClasses": [ { "id": "demo-class-a", "name": "Class A", "currency": "USD", "mgmtFeePct": "2.00", "perfFeePct": "20.00", "hurdleRatePct": null, "crystallizationFrequency": "quarterly", "feeExempt": false, "status": "open" } ] } ``` ## Calculator API (no authentication) Base URL: https://nyxchain.org/api/v1/calc. Stateless, illustrative fund-math endpoints — every figure is computed only from the arguments passed in that single call, never stored, never tied to a real fund. ### POST /api/v1/calc/fund-health-check — Fund Health Check A free, 60-second operational health score for your crypto fund. Illustrative estimate only, not accounting/tax/investment advice. No authentication required. Parameters: - aumUsd (number, optional): — - positionsCsv (string, optional): — - mgmtFeePct (number, optional): — - perfFeePct (number, optional): — - hasHwm (boolean, optional): — - hurdlePct (unknown, optional): — - navFrequency ("daily" | "weekly" | "monthly" | "quarterly", optional): — - reconFrequency ("daily" | "weekly" | "monthly" | "rarely", optional): — - lpReportingFrequency ("monthly" | "quarterly" | "adhoc", optional): — - backOfficeHeadcount (number, optional): — - hasFundAdmin (boolean, optional): — - hasAnnualAudit (boolean, optional): — Sample request: ```json { "aumUsd": 25000000, "positionsCsv": "", "mgmtFeePct": 2, "perfFeePct": 20, "hasHwm": true, "hurdlePct": null, "navFrequency": "monthly", "reconFrequency": "monthly", "lpReportingFrequency": "quarterly", "backOfficeHeadcount": 1, "hasFundAdmin": true, "hasAnnualAudit": false } ``` Docs page: https://nyxchain.org/developers/calculators/fund-health-check · Try it: https://nyxchain.org/tools/fund-health-check ### POST /api/v1/calc/exposure-analysis — Exposure Analysis Paste your positions, see gross, net, and concentration exposure instantly. Illustrative estimate only, not accounting/tax/investment advice. No authentication required. Parameters: - positionsCsv (string, optional): — - navUsd (unknown, optional): — Sample request: ```json { "positionsCsv": "Asset,Value,Venue,Class\nBTC,320000,Coinbase,crypto\nETH,190000,Coinbase,crypto\nSPY,220000,Alpaca,etf\nAAPL,140000,Alpaca,equity\nTLT,90000,Alpaca,etf\nGC,60000,Manual,commodity\nUSDC,130000,Coinbase,stablecoin\nSeries B Private Co,50000,Manual,private", "navUsd": null } ``` Docs page: https://nyxchain.org/developers/calculators/exposure-analysis · Try it: https://nyxchain.org/tools/exposure-analysis ### POST /api/v1/calc/nav-validator — NAV Validator Check your month-end NAV roll-forward for arithmetic and fee errors in seconds. Illustrative estimate only, not accounting/tax/investment advice. No authentication required. Parameters: - periodStart (string, optional): — - periodEnd (string, optional): — - openingNavUsd (number, optional): — - contributionsUsd (number, optional): — - withdrawalsUsd (number, optional): — - grossPnlUsd (number, optional): — - mgmtFeeUsd (number, optional): — - perfFeeUsd (number, optional): — - otherExpensesUsd (number, optional): — - reportedClosingNavUsd (number, optional): — - mgmtFeePct (number, optional): — - perfFeePct (number, optional): — - hasHwm (boolean, optional): — - lpRowsCsv (string, optional): — Sample request: ```json { "periodStart": "2026-06-01", "periodEnd": "2026-06-30", "openingNavUsd": 25000000, "contributionsUsd": 500000, "withdrawalsUsd": 0, "grossPnlUsd": 750000, "mgmtFeeUsd": 41667, "perfFeeUsd": 141667, "otherExpensesUsd": 10000, "reportedClosingNavUsd": 26056666, "mgmtFeePct": 2, "perfFeePct": 20, "hasHwm": true, "lpRowsCsv": "" } ``` Docs page: https://nyxchain.org/developers/calculators/nav-validator · Try it: https://nyxchain.org/tools/nav-validator ### POST /api/v1/calc/fee-calculator — Hedge Fund Fee Calculator See exactly what a 2/20 (or any) fee structure costs an LP over time. Illustrative estimate only, not accounting/tax/investment advice. No authentication required. Parameters: - startingNavUsd (number, optional): — - annualGrossReturnPct (number, optional): — - mgmtFeePct (number, optional): — - perfFeePct (number, optional): — - hurdlePct (number | null, optional): — - hasHwm (boolean, optional): — - crystallization ("annual" | "quarterly", optional): — - horizonYears (number, optional): — Sample request: ```json { "startingNavUsd": 25000000, "annualGrossReturnPct": 15, "mgmtFeePct": 2, "perfFeePct": 20, "hurdlePct": null, "hasHwm": true, "crystallization": "annual", "horizonYears": 5 } ``` Docs page: https://nyxchain.org/developers/calculators/fee-calculator · Try it: https://nyxchain.org/tools/fee-calculator ### POST /api/v1/calc/operating-cost-calculator — Fund Operating Cost Calculator Add up what your fund's back office actually costs every year. Illustrative estimate only, not accounting/tax/investment advice. No authentication required. Parameters: - financeHireUsd (number, optional): — - fundAdminUsd (number, optional): — - complianceUsd (number, optional): — - riskDeskUsd (number, optional): — - lpReportsPerYear (number, optional): — - costPerReportUsd (number, optional): — - auditUsd (number, optional): — - legalUsd (number, optional): — - softwareUsd (number, optional): — - aumUsd (number, optional): — Sample request: ```json { "financeHireUsd": 120000, "fundAdminUsd": 100000, "complianceUsd": 80000, "riskDeskUsd": 40000, "lpReportsPerYear": 12, "costPerReportUsd": 8000, "auditUsd": 0, "legalUsd": 0, "softwareUsd": 0, "aumUsd": 25000000 } ``` Docs page: https://nyxchain.org/developers/calculators/operating-cost-calculator · Try it: https://nyxchain.org/tools/operating-cost-calculator ### POST /api/v1/calc/back-office-savings — Back-Office Savings Calculator See what part of your back-office spend is realistically automatable. Illustrative estimate only, not accounting/tax/investment advice. No authentication required. Parameters: - financeHireUsd (number, optional): — - fundAdminUsd (number, optional): — - complianceUsd (number, optional): — - riskDeskUsd (number, optional): — - lpReportsPerYear (number, optional): — - costPerReportUsd (number, optional): — - auditUsd (number, optional): — - legalUsd (number, optional): — - softwareUsd (number, optional): — - aumUsd (number, optional): — Sample request: ```json { "financeHireUsd": 120000, "fundAdminUsd": 100000, "complianceUsd": 80000, "riskDeskUsd": 40000, "lpReportsPerYear": 12, "costPerReportUsd": 8000, "auditUsd": 0, "legalUsd": 0, "softwareUsd": 0, "aumUsd": 25000000 } ``` Docs page: https://nyxchain.org/developers/calculators/back-office-savings · Try it: https://nyxchain.org/tools/back-office-savings ### POST /api/v1/calc/lp-report-grader — LP Report Grader Grade your monthly LP update against what institutional investors expect. Illustrative estimate only, not accounting/tax/investment advice. No authentication required. Parameters: - reportText (string, optional): — - reportingFrequency ("monthly" | "quarterly" | "adhoc", optional): — Sample request: ```json { "reportText": "", "reportingFrequency": "monthly" } ``` Docs page: https://nyxchain.org/developers/calculators/lp-report-grader · Try it: https://nyxchain.org/tools/lp-report-grader ## MCP servers - Public server (no auth): https://nyxchain.org/api/mcp/public — streamable HTTP, JSON-RPC 2.0. Tools: calc_fund_health_check, calc_exposure_analysis, calc_nav_validator, calc_fee_calculator, calc_operating_cost_calculator, calc_back_office_savings, calc_lp_report_grader, search_docs. - Fund-scoped server (your own fund's real data, Authorization: Bearer ): https://nyxchain.org/api/mcp. - Setup pages: https://nyxchain.org/developers/mcp ## Pricing - Free ($0): 500 calculator requests per day; Public MCP server access; No card required — https://nyxchain.org/developers - Developer ($49/mo): 100k calculator requests included per month; then $0.50 per 1,000 requests; API keys and a usage dashboard — https://nyxchain.org/signup - Platform (Included with any Nyx Fund platform plan): Fund Data API: 250k requests included per month; then $0.75 per 1,000 requests; Everything in Developer — https://nyxchain.org/pricing - Enterprise (From $499/mo): Custom request volume; Dedicated support; Contact us to scope your fund data needs — https://nyxchain.org/contact ## Frequently asked questions ### Developer platform **Is there a fund reporting API?** Yes. Nyx Fund's Developer API is a read-only REST API over Nyx Fund's live double-entry shadow ledger — twelve GET endpoints covering positions, NAV history, exposure, risk (VaR), P&L attribution, trial balance, capital accounts, expenses, and fee terms, plus seven no-auth calculator endpoints for fee and NAV math. Full docs live at nyxchain.org/developers. **Is there a hedge fund NAV API?** Yes. GET /api/v1/fund/nav/history returns Nyx's own shadow NAV history with BTC/ETH reference prices, computed from a real double-entry ledger and reconciled against your fund administrator — it is a shadow book that sits alongside your administrator, not a replacement for one, and requires an Authorization: Bearer nyx_dk_ developer key. **Do I need to sign up to try the Nyx Fund API?** No. A published demo developer key lets you call every Fund Data API endpoint against a synthetic fixture fund with zero signup, and the calculator endpoints need no key at all — see the quickstart at nyxchain.org/developers/quickstart. **What does the Nyx Fund Developer API cost?** Calculator access is free — 500 requests a day, no card required. The Fund Data API is metered: $49 a month for 100k requests (then $0.50 per 1,000), or included with the Nyx Fund platform plan (from $2,500/month, banded by fund AUM; 250k requests, then $0.75 per 1,000). Full pricing is at nyxchain.org/developers/pricing. **Can AI agents call the Nyx Fund API directly?** Yes. A public MCP server at /api/mcp/public speaks the Model Context Protocol over streamable HTTP with no authentication required, exposing the same seven calculators plus a doc-search tool to Claude Code, Claude Desktop, Cursor, ChatGPT, and any spec-compliant JSON-RPC client. **Is the Fund Data API real fund data or a demo?** Both. Every endpoint accepts the published demo key against a synthetic fixture fund for testing, and a real nyx_dk_ key (minted from your Nyx Fund dashboard) returns your own fund's live shadow-NAV data. ### Calculator API **Is there an API to calculate hedge fund fees?** Yes. POST /api/v1/calc/fee-calculator computes management and performance fees — including high-water mark and hurdle logic — from your fund's own inputs, with no authentication and no fund connection required. Results are illustrative estimates, not accounting or tax advice. **Is there a fund fee calculator API?** Yes. The same POST /api/v1/calc/fee-calculator endpoint is a stateless, illustrative fund fee calculator — pass management fee rate, performance fee rate, NAV, and prior high-water mark, and get back the fee breakdown, with no auth and no fund connection required. **Is there a high-water mark calculation API?** Yes, the same fee-calculator endpoint (POST /api/v1/calc/fee-calculator) applies a per-series high-water mark so performance fees accrue only on gains above the prior peak NAV — pass in your NAV history and fee terms and get back the fee breakdown. **Do the Nyx Fund calculator endpoints require an API key?** No. All seven calculator endpoints — fee, NAV validation, exposure analysis, operating cost, back-office savings, fund health, and LP report grading — are stateless and open with no authentication; an optional nyx_dk_ key only raises your daily rate limit. **Are the calculator API results real fund figures?** No. Every calculator endpoint returns illustrative estimates computed only from the arguments you pass in that single call — nothing is stored and nothing is tied to a real fund. Connect your exchanges in the full Nyx Fund product for live, audited figures. **What calculators does the Nyx Fund API expose?** Seven: the fee calculator (with high-water mark), NAV validator, exposure analysis, operating cost calculator, back-office savings calculator, fund health check, and LP report grader — the same deterministic engines behind the free tools at nyxchain.org/tools. **What's the rate limit on the free calculator API?** Five hundred requests per day with no card required, per caller. Passing an nyx_dk_ developer key raises that limit under the $49-a-month Developer plan or the bundled Platform plan. ### MCP **Is there an MCP server for hedge funds?** Yes. Nyx Fund runs two Model Context Protocol servers: a public one at /api/mcp/public with no authentication required for illustrative fund calculators, and a private, fund-scoped one at /api/mcp authenticated with your own nyx_sk_ key for your real fund's live shadow-NAV data. **How do I connect Claude Code to the Nyx Fund MCP server?** Run a single `claude mcp add` command with the public server URL (https://nyxchain.org/api/mcp/public) — no API key and no config file to edit. The exact command is on nyxchain.org/developers/mcp/claude-code. **Does the public MCP server require an API key?** No. The public server is free with no login and no key — it exposes seven calc_* calculator tools plus a search_docs tool, all stateless and illustrative. **Can I connect my own fund's real data over MCP?** Yes, on a separate server — /api/mcp — authenticated with your own nyx_sk_ key, minted from your Nyx Fund dashboard. It exposes the same read-only, shadow-NAV fund tools as the REST Fund Data API, never the public server's calculator tools. **Which AI clients can connect to the Nyx Fund MCP server?** Claude Code, Claude Desktop, Cursor, and ChatGPT (where your plan and workspace support MCP), plus any spec-compliant JSON-RPC MCP client — each has its own setup page at nyxchain.org/developers/mcp/. **What protocol does the Nyx Fund MCP server speak?** Standard Model Context Protocol JSON-RPC 2.0 over streamable HTTP — send `initialize`, then `tools/list`, then `tools/call`. Both servers are stateless and single-response, and share the same JSON-RPC framing. ## Error envelope Every REST v1 error response shares one JSON shape: { error: { code, message, status }, request_id }, alongside a X-Nyx-Api-Version: v1 response header on every call (success or error). The MCP surfaces use standard JSON-RPC 2.0 error objects instead ({ code, message } under an `error` key) — a missing/invalid tool name is JSON-RPC code -32602, an unknown method is -32601, a malformed envelope is -32600, and a rate limit is -32000 with an HTTP 429 status and a Retry-After header.