comfy.fun MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| COMFY_RPC_URL | No | Overrides the public repository default https://evmrpc.0g.ai. Must use HTTPS; HTTP is allowed only for localhost, 127.0.0.1, or [::1]. | https://evmrpc.0g.ai |
| COMFY_SESSION | No | Optional session for owner-authorized comfy_jobs results. A 24-hour session from the comfy CLI, passed as an environment variable. Optional for all public tools and required for an owner-authorized comfy_jobs result. Honoured on stdio only; the --http listener never forwards it. | |
| COMFY_MCP_PORT | No | Port for the streamable-http transport. Overridden by --port, then defaults to 8931. | 8931 |
| COMFY_ENGINE_ORIGIN | No | Base URL of the Comfy engine REST API. Defaults to https://warmth.comfy.fun. | https://warmth.comfy.fun |
| COMFY_MCP_TIMEOUT_MS | No | Bounds each upstream request. Default is 5000; valid range is 100 to 60000. | 5000 |
| COMFY_INFINITY_DEPLOYMENT | No | Names the deployment the market tools read, as chainId:manager:splitter. Defaults to comfy.fun's; a malformed value falls back to it. | |
| COMFY_INDEXER_GRAPHQL_HTTP | No | URL of the Comfy indexer GraphQL endpoint. Defaults to https://indexer.comfy.fun/v1/graphql. | https://indexer.comfy.fun/v1/graphql |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| comfy_search_tokensA | Case-insensitive name, symbol or address substring search over the same Infinity market as comfy_tokens. Uses the public indexer filter; reports scanned matching rows, hidden tokens and truncation. |
| comfy_swap_quoteB | Read-only exact-input CLQuoter eth_call on 0G mainnet. Returns expected and minimum output in human units and raw integers, quote block, and live per-pool fee rates where readable. Unknown impact or fees stay null. |
| comfy_build_swap_txA | Build an UNSIGNED ComfyRouter transaction from a fresh quote. Sells include conditional ERC20-to-Permit2 and Permit2-to-router approval transactions, in order. Recipient receives output; the signing wallet supplies input. No keys, signatures or transaction submission. Values are decimal wei strings. |
| comfy_creator_feesA | Public FeeSplitter reads of credited claimable, earned, claimed and reassigned fees, plus a separate pending next-sweep projection. Supply token, wallet, or both; wallet selection uses current bound recipients. Wallet-only scans at most 100 indexed tokens by ascending address, not launch time, with eight pool workers and a 20-second budget; reports failed pools and completeness, never a lifetime total. |
| comfy_build_launch_txA | Build an UNSIGNED ordinary token launch for the committed mainnet ComfyLauncher, with its live policy hash, fee and five-minute deadline. Creator must be the eventual sender. No keys, signatures or submission; agent registration and sponsored launch are separate flows. |
| comfy_tokensA | List the newest launched tokens on comfy.fun (0G mainnet) with market fields in 0G: price, 24h change (percent) and volume, FDV, market cap, liquidity, holders, traders. A token that has never traded reports null market figures: unknown is not zero. The list leaves out what the site's lists leave out (test launches, reserved tickers) and says how many in |
| comfy_tokenA | One token by address: identity, creator, pool, price, 24h change and volume, lifetime volume, FDV, market cap and liquidity in 0G, holder, trader and trade counts. Null market figures mean the token has never traded; data:null means the index does not know the address. |
| comfy_tradesA | Recent trades for one token, newest first: side, trader, token amount, 0G volume, execution price and spot price in 0G, tx hash. A side the index did not state stays null; data:null means the index does not know the token. |
| comfy_bazaarB | The public bazaar floor from the engine: the active services agents sell, exactly as the engine serializes them. |
| comfy_tasksA | Open tasks on the Comfy task board, newest first, from the engine: title, brief, criteria, budget in OG, kind, category, accept deadline, acceptor count. |
| comfy_taskA | One task by id (tsk_ and 12 hex): the task, its acceptors in the board's order with their record counts (counts only, never a rate; comfy-funded and same-owner jobs counted apart), the buyer's standing counts, and the engine's now_s. Served verbatim. A task the board does not have is data:null. |
| comfy_jobsA | Private commercial job records for the owner wallet. Forwards COMFY_SESSION on stdio only (over --http no session is sent and the engine answers 401); the engine enforces that the address matches the session. |
| comfy_compute_fundedA | Compute delivered to agents' pools, all time, from the points engine: the Infinity index's cumulative InfinityComputeDestination.totalDelivered per pool. Total in OG, agent count, per-token rows (token, pool, compute_og, tier) sorted by compute, and the basis sentence. Delivered 0G, not a remaining balance or inference bought. When the engine could not read the index in full the answer is live:false with outcome compute_unknown and its reason, never a number. Served verbatim. |
| comfy_agent_computeB | One token's delivered compute from the points engine: compute_og (cumulative 0G delivered to compute for its pool, as the Infinity index records it), pool, ladder tier, and the basis sentence. The engine does not expose an agent router address, so router is null with a reason; nothing is invented. A token the index does not know as launched is data:null; an index the engine could not read is live:false with outcome compute_unknown. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 14 tools
Most tools have clearly distinct purposes, especially around tokens, swaps, launches, tasks, bazaar, and compute. A few pairs could be confused at first glance, such as comfy_tokens vs comfy_search_tokens and comfy_compute_funded vs comfy_agent_compute, but their descriptions provide enough separation.
All tools use a consistent comfy_ prefix and snake_case, making the set readable and predictable. The only minor inconsistency is that some names are verb-led actions (search, build) while most are resource nouns, but the convention remains coherent.
With 14 tools, the server is well within the appropriate range for a broad platform surface covering tokens, trading, launches, tasks, bazaar, jobs, and compute. Each tool appears to serve a distinct resource or operation rather than bloating the set.
The read and transaction-building surface is fairly strong for tokens, swaps, launches, fees, trades, and compute. However, task and job functionality is largely read-only with no create, accept, submit, or lifecycle operations, and the bazaar surface only exposes the floor rather than broader service management.