Indexfy MCP server
xyz.indexfy/indexfyindexfy.xyzstreamable-httpv0.1.0Scanned
Buy and sell fully backed crypto index tokens and trade prediction markets on Base, in USDC.
15 tools: 10 change things and 5 only read.
- Reads private data · 0
- Reads text others write · 15
- Can send data out · 0
- 4 findings
Tools listed without sign-in. Remote posture
With Anlyon
10 tools here change things. Govern them.
- Anlyon lists the tools and adopts none.
- Each tool you adopt gets approvals and receipts.
- Your agent never holds the key.
A tool your agent calls directly is not routed through Anlyon and is not governed by it. anlyon.dev only lists and labels, and these labels are the same either way.
What the Indexfy MCP server can do
The Indexfy MCP server is published by indexfy.xyz, a domain the MCP Registry verified. It has 15 tools. It can create or change data (10 tools: build_create_index, register_index, build_buy_index, build_sell_index and 6 more), but cannot delete data. 5 tools only read.
15 tools bring in text other people can write (list_indexes, get_index, get_wallet_portfolio and 12 more).
The fixed checks matched 4 findings (annotation-conflict). Each one comes with the text it matched.
Its remote endpoint lists its tools without sign-in.
Last scanned Nov 10, 2026, version 0.1.0.
Tools
Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.
15 tools
Changes things 10Claude Code: ask
build_buy_indexBuy an index with USDC alone: one transaction buys every basket token on KyberSwap and mints the shares, reverting below the quoted minimum.Reads text others writeNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Buy an index with USDC alone: one transaction buys every basket token on KyberSwap and mints the shares, reverting below the quoted minimum. Unspent USDC is refunded.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
build_create_indexLaunch a new index fund: the wallet seeds it with the exact amount of each basket token (it must hold them) and receives `initialShares` shares.Reads text others write1 finding
Why it is in this group
- The name "build_create_index" says "create": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Findings
- Warn
The server marks "build_create_index" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "build_create_index" says "create": a word for a change.
Description, as the server wrote it Launch a new index fund: the wallet seeds it with the exact amount of each basket token (it must hold them) and receives `initialShares` shares. The seed amounts set the weights. Returns the approvals and the factory deployment call, plus the new index's predicted address.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
build_create_prediction_marketOpen a YES/NO market.Reads text others write1 finding
Why it is in this group
- The name "build_create_prediction_market" says "create": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Findings
- Warn
The server marks "build_create_prediction_market" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "build_create_prediction_market" says "create": a word for a change.
Description, as the server wrote it Open a YES/NO market. The wallet seeds it with USDC liquidity (minimum 100) and names a solver — a different address that alone resolves it and stakes 1% as a bond. Trading runs until closeTime; the solver proposes after resolveAfter.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
build_prediction_accountDeposit or withdraw solver stake (backs the 1% bonds of your proposals), or withdraw your balance (dispute winnings and returned bonds).Reads text others writeNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Deposit or withdraw solver stake (backs the 1% bonds of your proposals), or withdraw your balance (dispute winnings and returned bonds).
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
build_prediction_resolutionAfter trading: propose (the solver; deposits any missing stake first), dispute (anyone but the solver, posting the same bond, during the 24h window), finalize (anyone, once the win…Reads text others writeNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it After trading: propose (the solver; deposits any missing stake first), dispute (anyone but the solver, posting the same bond, during the 24h window), finalize (anyone, once the window passes), redeem (holders, after settlement) or withdraw_liquidity (the creator, after settlement).
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
build_prediction_tradeBuy YES/NO shares with USDC, or sell shares back for USDC before the market closes.Reads text others writeNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Buy YES/NO shares with USDC, or sell shares back for USDC before the market closes. Includes the USDC approval when needed and a minimum-output guard.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
build_sell_indexSell index shares for USDC: one transaction redeems the shares for the basket and sells each token on KyberSwap, reverting below the quoted minimum.Reads text others writeNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Sell index shares for USDC: one transaction redeems the shares for the basket and sells each token on KyberSwap, reverting below the quoted minimum.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
quote_prediction_tradeExact quote from the market maker: shares for a USDC buy, or USDC for a share sell, fees included.Reads text others writeNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Exact quote from the market maker: shares for a USDC buy, or USDC for a share sell, fees included.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
register_indexLists a newly created index on indexfy.xyz right away.Reads text others write1 finding
Why it is in this group
- The description's first verb is "list": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Findings
- Warn
The server marks "register_index" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "list": a word for reading.
Description, as the server wrote it Lists a newly created index on indexfy.xyz right away. Call with the deployFolio transaction hash once it's mined.
Annotations the server declares
- readOnlyHint: false
- idempotentHint: true
- openWorldHint: true
register_prediction_marketLists a newly created market on indexfy.xyz under its sector.Reads text others write1 finding
Why it is in this group
- The description's first verb is "list": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Findings
- Warn
The server marks "register_prediction_market" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "list": a word for reading.
Description, as the server wrote it Lists a newly created market on indexfy.xyz under its sector. Call with the createMarket transaction hash once mined, within 1 hour.
Annotations the server declares
- readOnlyHint: false
- idempotentHint: true
- openWorldHint: true
Only reads 5Show 5 read-only tools
get_indexOne index's stats, mandate and current holdings (each basket token's amount, USD value and weight).Reads text others writeNo findings
Why it is in this group
- The name "get_index" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it One index's stats, mandate and current holdings (each basket token's amount, USD value and weight).
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
get_prediction_marketOne market's live state: prices, phase and what can be done next, deadlines, proposal/dispute.Reads text others writeNo findings
Why it is in this group
- The name "get_prediction_market" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it One market's live state: prices, phase and what can be done next, deadlines, proposal/dispute. With `wallet`, also its shares, redeemable USDC and solver stake.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
get_wallet_portfolioA wallet's Indexfy index holdings with value and profit/loss, plus its Indexfy points.Reads text others writeNo findings
Why it is in this group
- The name "get_wallet_portfolio" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it A wallet's Indexfy index holdings with value and profit/loss, plus its Indexfy points.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
list_indexesIndexfy index funds on Base with price, TVL and 24h / 7d performance.Reads text others writeNo findings
Why it is in this group
- The name "list_indexes" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Indexfy index funds on Base with price, TVL and 24h / 7d performance. Each index is an ERC-20 fully backed by its basket of tokens.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
list_prediction_marketsPrediction markets on Indexfy with live YES/NO prices (= implied probability), money in the market, phase and deadlines.Reads text others writeNo findings
Why it is in this group
- The name "list_prediction_markets" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Prediction markets on Indexfy with live YES/NO prices (= implied probability), money in the market, phase and deadlines.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged private-data or outbound.
- Reads private data0
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write15
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out0
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Remote posture
What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.
Looked at Nov 11, 2026, 09:20 UTC, unchanged since Nov 11, 2026. No credentials were sent and no tool was called. What is looked at.
- Reachable
- yes
- HTTP status of an anonymous initialize
- 200
- tools/list served without credentials
- yes
- Tools that change things, listed without credentials
- 10
- Protocol version
- 2025-06-18
- WWW-Authenticate on 401
- not observed
- resource_metadata in WWW-Authenticate
- not observed
- RFC 9728 protected resource metadata
- not observed
- Authorization servers
- not observed
- Legacy HTTP+SSE transport
- no
- Dynamic client registration
- not observed
- Client ID metadata documents
- not observed
- WarnThe whole server
The endpoint served tools/list without credentials, and the list has 10 tools that change things (10 write). Whether a call also works without credentials was not tested: tools are never called.
What this check looks forMatched text
https://api.indexfy.xyz/mcp: tools/list returned 15 tools to an anonymous client, including build_create_index (write), register_index (write), build_buy_index (write), build_sell_index (write), quote_prediction_trade (write) and 5 more
Findings
Matches of fixed checks, with the text they matched.
The server marks "build_create_index" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "build_create_index" says "create": a word for a change.
- Warnregister_index
The server marks "register_index" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "list": a word for reading.
The server marks "build_create_prediction_market" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "build_create_prediction_market" says "create": a word for a change.
The server marks "register_prediction_market" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "list": a word for reading.
History
Changes to its tool definitions and to its remote endpoint, newest first.
No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.
Install
Pinned to version 0.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http indexfy https://api.indexfy.xyz/mcpclaude mcp add --transport http indexfy https://api.indexfy.xyz/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__indexfy__list_indexes",
"mcp__indexfy__get_index",
"mcp__indexfy__get_wallet_portfolio",
"mcp__indexfy__list_prediction_markets",
"mcp__indexfy__get_prediction_market"
],
"ask": [
"mcp__indexfy__build_create_index",
"mcp__indexfy__register_index",
"mcp__indexfy__build_buy_index",
"mcp__indexfy__build_sell_index",
"mcp__indexfy__quote_prediction_trade",
"mcp__indexfy__build_prediction_trade",
"mcp__indexfy__build_create_prediction_market",
"mcp__indexfy__register_prediction_market",
"mcp__indexfy__build_prediction_resolution",
"mcp__indexfy__build_prediction_account"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as indexfy. Review it before you use it.
Capability tags behind 15 rules
- mcp__indexfy__list_indexes untrusted-input
- mcp__indexfy__get_index untrusted-input
- mcp__indexfy__get_wallet_portfolio untrusted-input
- mcp__indexfy__build_create_index untrusted-input
- mcp__indexfy__register_index untrusted-input
- mcp__indexfy__build_buy_index untrusted-input
- mcp__indexfy__build_sell_index untrusted-input
- mcp__indexfy__list_prediction_markets untrusted-input
- mcp__indexfy__get_prediction_market untrusted-input
- mcp__indexfy__quote_prediction_trade untrusted-input
- mcp__indexfy__build_prediction_trade untrusted-input
- mcp__indexfy__build_create_prediction_market untrusted-input
- mcp__indexfy__register_prediction_market untrusted-input
- mcp__indexfy__build_prediction_resolution untrusted-input
- mcp__indexfy__build_prediction_account untrusted-input
Pin
Keep the decision: fail CI when the tools change, follow every change, or show a badge.
Pin in CI
Fail a build when the tools you reviewed are not the tools the server serves today.
curl -s "https://anlyon.dev/api/v1/servers/xyz.indexfy/indexfy/verify?hash=ea1e4132183ea87b129420c059e85b9161f26127331dbc5e8e9ae62288004de4" | jq -e '.changed == false'Pinned hash ea1e4132183e, from Nov 10, 2026, 23:18 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/xyz.indexfy/indexfy/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/xyz.indexfy/indexfy)Source: MCP Registry. Synced Nov 10, 2026, 23:18 UTC.
Indexfy MCP server: questions and answers
Answered from the scan above, not from the publisher's description.
Is the Indexfy MCP server safe?
- No scan can promise that. What its definitions show: 15 tools, 10 of which can change, send or delete something, and 4 findings from fixed checks. Allow the reads, ask before each change, and deny the deletes; the permissions block on this page does that.
Can the Indexfy MCP server delete data?
- No tool is classed as destructive: going by their definitions, none of them deletes, cancels or revokes anything.
Can the Indexfy MCP server do things that cannot be undone?
- No tool is classed as irreversible: none of them sends, pays, publishes or merges, going by their definitions.
What tools does the Indexfy MCP server have?
- 15 tools: 10 write, 5 read. build_create_index, register_index, build_buy_index, build_sell_index, quote_prediction_trade, build_prediction_trade, build_create_prediction_market, register_prediction_market and 7 more.
Does the Indexfy MCP server need sign-in or OAuth?
- Its remote endpoint listed its tools to an anonymous client, without sign-in.
Does the Indexfy MCP server send data to outside services?
- None of its tools sends, posts or publishes, or takes a recipient, channel or URL.
Has the Indexfy MCP server changed its tools?
- Not since anlyon.dev started tracking it. Last scanned Nov 10, 2026.