Flow — Order-Flow Intelligence on Base
Server Details
Flow is order-flow intelligence on Base: multi-venue swap quotes ($0.01/call), contract verification ($0.02), smart-wallet signals ($0.01), and a fill rail charging 25% of measured improvement (10 bps cap). x402-native (Base mainnet, USDC). Every number is published as a recomputable receipt.
- Status
- Healthy
- Uptime
- 100.0% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- flow-executor/Flow
- GitHub Stars
- 0
TDQS
Scored across 4 tools
The four tools target clearly different jobs: health/status, swap quote, payee risk report, and verified web search. flow_paycheck and flow_search both use x402 paid verification and share similar guarantee language, which could cause slight confusion, but their inputs and outputs are distinct enough.
Every tool uses the same flow_ prefix and a single lowercase noun-style action name. The pattern is predictable and consistent across the entire set.
Four tools is a compact but reasonable surface for this server. Each tool covers a different capability, though flow_search feels somewhat adjacent to the core order-flow intelligence theme.
Core read-only workflows—health, quote, payee check, and search—are covered, but the surface is thin for 'order-flow intelligence.' There is no explicit analytics/history tool, venue comparison endpoint, or broader address/contract audit beyond the payee-specific PayCheck.
Available Tools
4 toolsflow_healthAInspect
Check the Flow quote API health: status, chain, and latest synced block number.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden, but a zero-parameter health check is a low-risk read and the description does convey what it returns (status, chain, latest block). It omits any auth requirements, rate limits, or failure semantics, so it adds only modest context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the action first and the returned fields listed after; every clause earns its place with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-param, no-annotation read tool this is nearly sufficient, and the three named return fields compensate for the absent output schema. It could still say what shape/format those fields come back in, so it is not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, which is the baseline-4 case; nothing about parameter semantics needs explaining and the description does not introduce confusing pseudo-parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Check) and resource (Flow quote API health) and enumerates what is returned (status, chain, latest synced block number). The distinction from flow_quote is implied by 'health' rather than stated explicitly, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
A health-check tool's usage is largely self-evident, and 'Check the ... API health' implies you call it to verify the API is operational. However, there is no explicit when-to-use or when-not guidance, nor any mention of flow_quote as the alternative for actual quote retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
flow_paycheckAInspect
Before you pay this agent, check. PayCheck ($0.50 USDC via x402 on Base) runs Flow's whole checker stack on a payee in ONE call — the payee verdict (kind, on-chain activity, the full contract-safety engine when the payee is a contract), the wallet approval-exposure audit, contract safety, and the payee's recent USDC settlement history — and returns one finished grade (ALLOW / REVIEW / BLOCK with a 0-100 score), a verify_status (verified / failed / unverified_verifier_down), every check, the evidence under it, and a receipt. The guarantee: the report is produced before settlement; if it cannot be produced, the payment is never settled — no report, no charge. This hosted endpoint does not hold a wallet: an unpaid call returns the endpoint's x402 payment challenge itself, never an invented result. Pay it with any x402 client, or use the @flowexecutor/flow-mcp stdio package with an Early Builder Key.
| Name | Required | Description | Default |
|---|---|---|---|
| payee | Yes | The payee address to grade before paying (0x…), Base |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does so well: it discloses the $0.50 USDC cost via x402 on Base, the no-wallet hosted model, that an unpaid call returns the x402 challenge rather than a fabricated result, and the no-report-no-charge guarantee tied to pre-settlement production.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The critical trigger is front-loaded in a short first sentence, followed by dense but purposeful detail about cost, output, guarantees, and invocation. It is on the long side with several run-on clauses, but nearly every clause conveys decision-relevant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, yet the description compensates by enumerating the return shape (grade with score, verify_status values, per-check evidence, receipt) and the payment failure mode. An agent has everything needed to decide and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter, and the schema already documents it at 100% coverage including the 0x format and Base chain context. The description reinforces the meaning ('the payee address to grade before paying') but adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — running Flow's checker stack on a payee in one call — and enumerates exactly what is produced (verdict, verify_status, checks, evidence, receipt). An agent can distinguish this from flow_health and flow_quote without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The opening 'Before you pay this agent, check' establishes the triggering context clearly, and the closing sentence names two concrete invocation paths (any x402 client, or the stdio package with an Early Builder Key). It stops short of naming a when-not condition or contrasting against the sibling tools directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
flow_quoteAInspect
Get a best-execution swap quote on Base. Compares Uniswap V3, PancakeSwap V3 and Aerodrome (plus two-hop routes via WETH), returns the winning venue, expected output, edge in bps vs the baseline, a liquidity flag (deep/watch/thin), the exact block number and timestamp, and build latency. Read-only: no funds move.
| Name | Required | Description | Default |
|---|---|---|---|
| chainId | No | Chain id, defaults to 8453 (Base) | |
| tokenIn | Yes | Input token contract address on Base (e.g. USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA4E46E) | |
| amountIn | Yes | Human-readable input amount, e.g. "10" for 10 USDC | |
| tokenOut | Yes | Output token contract address on Base (e.g. WETH 0x4200000000000000000000000000000000000006) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden and does well: it declares read-only/no-funds-move safety, the venues compared, that two-hop routes are included, and how freshness is conveyed (exact block number and timestamp). It omits error/fallback behavior when no route exists and gives no hint about caching, rate limits, or whether the quote is indicative vs executable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose, then a compact enumeration of return fields and the read-only guarantee. The long second sentence is dense but nearly every clause maps to a real output field; nothing is padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must describe returns and does so exhaustively: winning venue, expected output, edge in bps vs baseline, liquidity flag (deep/watch/thin), block number, timestamp, and build latency. Combined with the venue list and read-only statement, an agent has everything needed to call and interpret this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each of the four parameters (including the chainId default of 8453) documented in-schema, so the baseline is 3. The description only reiterates 'on Base' and adds no format, unit, or constraint detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get a best-execution swap quote on Base') and immediately scopes the mechanism (Uniswap V3, PancakeSwap V3, Aerodrome, two-hop via WETH). It is trivially distinguishable from the only sibling, flow_health, which is a health check. No ambiguity about what the tool returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: an agent can infer this is the pricing/quoting call, and 'Read-only: no funds move' signals it is safe to call freely. However there is no explicit when-to-use, no mention of when the quote should not be trusted (stale block, thin liquidity), and no routing to an execution counterpart.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
flow_searchAInspect
Verified Search ($0.01 USDC via x402 on Base): web search where every result is independently checked by Flow before it reaches you — the result URL is fetched live (liveness, final HTTP status recorded) and the fetched page text is matched against the result's own title/snippet terms (content-match score). Each result carries a verify_status (verified / failed / unverified_verifier_down), its httpStatus and contentMatch, and the response carries a receipt counting checked / verified / failed. Bad results are flagged, never silently dropped. The guarantee: the search is produced before settlement; if it cannot be produced, the payment is never settled. This hosted endpoint does not hold a wallet: an unpaid call returns the endpoint's x402 payment challenge itself, never an invented result. Pay it with any x402 client, or use the @flowexecutor/flow-mcp stdio package with an Early Builder Key.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The search query | |
| maxResults | No | Max results to return and verify (default 5, cap 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden and does so richly: verify_status enum values (verified/failed/unverified_verifier_down), httpStatus and contentMatch fields, a receipt with checked/verified/failed counts, the promise that bad results are flagged rather than dropped, and the settlement guarantee ('search is produced before settlement'). It also discloses the no-wallet property and unpaid-call behavior, which an agent must know before invoking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core purpose and price are front-loaded in the first clause, and the dense single paragraph covers distinct concerns (payment, verification, status values, receipt, guarantee) without pure filler. It is information-heavy but could be more scannable as structured bullets, which keeps it below a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must describe return values, and it does – enumerate the response shape via verify_status, httpStatus, contentMatch, and the receipt counts. Combined with the payment and failure semantics, an agent has everything needed to call and interpret the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (query, maxResults) are already documented in the schema, establishing the baseline of 3. The description adds semantic context around what results carry after verification but does not extend the parameter-level meaning (e.g., pagination or query syntax) beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource framed precisely: a 'web search where every result is independently checked by Flow.' It also names the sibling context indirectly by emphasizing the payment/verification model that distinguishes it from flow_health, flow_paycheck, and flow_quote. An agent can identify this as the paid, verified search endpoint without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear invocation context – $0.01 USDC via x402 on Base, and that an unpaid call returns a payment challenge – plus a concrete path to use it ('any x402 client, or the @flowexecutor/flow-mcp stdio package'). However, it never states when to choose this tool versus an alternative search or versus the sibling payment tools, so usage is implied rather than guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
flow_paycheck1 field changed- removed
Input schema / properties / amountUsdRemoved value: -{ - "description": "Optional: the intended payment amount in USD (> 0, up to 100). Declaring it attaches Flow Promise coverage to the receipt.", - "type": "number" -}
1 tool update
- Changed
flow_paycheck1 field changed- added
Input schema / properties / amountUsdAdded value: +{ + "description": "Optional: the intended payment amount in USD (> 0, up to 100). Declaring it attaches Flow Promise coverage to the receipt.", + "type": "number" +}
1 tool update
- Added
flow_search
1 tool update
- Added
flow_paycheck
2 tool updates
- First observed
flow_health - First observed
flow_quote
Related MCP Connectors
Pay-per-call AI infra for agents: DeFi market data, LLM inference, STT/TTS. x402 v2, USDC on Base.
Pay-per-query x402 business intelligence on Base, settled in USDC via the native 402 payment flow.
Pay-per-call crypto market intelligence for AI agents. USDC on Base via x402.
Consumable x402 data oracle providing Base DEX liquidity & Polymarket velocity for AI agents.
Related MCP Servers
- AlicenseAqualityBmaintenanceReal-time DEX token momentum, orderbook liquidity depth, and whale flows on Base Mainnet gated with gasless x402 micropayments.3MIT

hyperd-mcpofficial
AlicenseAqualityDmaintenancePre-trade DeFi intelligence for AI agents. 20 paid x402 endpoints, USDC on Base.2367 npm1MIT- FlicenseAqualityNot gradedmaintenanceTrust infrastructure for AI agents on Base. DEX Spread Oracle (live Uniswap V3 prices), on-chain escrow, insurance pool, and collective knowledge base. 7 smart contracts. Pay-per-query via x402 micropayments in USDC.6-
- AlicenseBqualityFmaintenanceCross-exchange crypto orderflow for AI agents. 20 exchanges, 26 tokens, 9 tools — CVD, whale activity, funding/OI, 7-year OHLCV, on-chain address risk (EVM + Solana). Pay-per-call USDC via x402, no API key.97 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.