Quickstart
From zero to a live call in under a minute
Every fund-data example on this page uses the published demo key against a synthetic fixture — copy, paste, run.
/api/v1/fund/overview needs one header — a Bearer key. The demo key below works with zero setup.
cURL
curl -s -X GET "https://nyxchain.org/api/v1/fund/overview" \
-H "Authorization: Bearer nyx_dk_demo000000000000000000000000000000000000000"JavaScript
const res = await fetch("https://nyxchain.org/api/v1/fund/overview", {
method: "GET",
headers: { Authorization: "Bearer nyx_dk_demo000000000000000000000000000000000000000" },
})
const data = await res.json()Python
# GET https://nyxchain.org/api/v1/fund/overview
import requests
res = requests.get(
"https://nyxchain.org/api/v1/fund/overview",
headers={"Authorization": "Bearer nyx_dk_demo000000000000000000000000000000000000000"},
)
data = res.json()Or skip the terminal — send the same call from the browser.
Object(3)
Object(3)
Array(1)
Object(8)
Object(4)
Calculator endpoints need no auth at all — /api/v1/calc/fee-calculator is stateless, illustrative fee math.
cURL
curl -s -X POST "https://nyxchain.org/api/v1/calc/fee-calculator" \
-H "Content-Type: application/json" \
-d '{"startingNavUsd":25000000,"annualGrossReturnPct":15,"mgmtFeePct":2,"perfFeePct":20,"hurdlePct":null,"hasHwm":true,"crystallization":"annual","horizonYears":5}'JavaScript
const res = await fetch("https://nyxchain.org/api/v1/calc/fee-calculator", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"startingNavUsd": 25000000,
"annualGrossReturnPct": 15,
"mgmtFeePct": 2,
"perfFeePct": 20,
"hurdlePct": null,
"hasHwm": true,
"crystallization": "annual",
"horizonYears": 5
}),
})
const data = await res.json()Python
# POST https://nyxchain.org/api/v1/calc/fee-calculator
import requests
res = requests.post(
"https://nyxchain.org/api/v1/calc/fee-calculator",
json={"startingNavUsd": 25000000, "annualGrossReturnPct": 15, "mgmtFeePct": 2, "perfFeePct": 20, "hurdlePct": None, "hasHwm": True, "crystallization": "annual", "horizonYears": 5},
)
data = res.json()The public MCP server needs no key either — one command wires it into Claude Code.
Claude Code
Add the Nyx Fund public MCP server with one `claude mcp add` command.
claude mcp add --transport http nyx-fund https://nyxchain.org/api/mcp/publicClaude Desktop
Paste a custom connector entry into your Claude Desktop config.
{
"nyx-fund": {
"type": "http",
"url": "https://nyxchain.org/api/mcp/public"
}
}Cursor
Install via a one-click deeplink, or paste the config JSON yourself.
{
"mcpServers": {
"nyx-fund": {
"url": "https://nyxchain.org/api/mcp/public"
}
}
}ChatGPT
Add as a custom connector where your ChatGPT plan and workspace support MCP.
ChatGPT's MCP connector support (Settings, Connectors, Add custom connector — on plans and workspaces where it's enabled) accepts an HTTP MCP server URL:
https://nyxchain.org/api/mcp/public
If a header is required, add it as a custom header: "Authorization: Bearer <your API key>". Availability depends on your ChatGPT plan and workspace configuration.Any MCP client (JSON-RPC)
Speak raw MCP JSON-RPC over HTTP — works with any spec-compliant client.
# 1. Initialize the MCP session
curl -s -X POST "https://nyxchain.org/api/mcp/public" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2026-06-18","capabilities":{},"clientInfo":{"name":"example-client","version":"1.0.0"}}}'
# 2. Call a tool
curl -s -X POST "https://nyxchain.org/api/mcp/public" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_fund_overview","arguments":{}}}'Ready to call your own fund's real data? Mint a nyx_dk_ key from your dashboard settings — the demo key never has fund-data scope.