Flashift
Server Details
Zero-key, non-custodial cross-chain crypto swap aggregator for AI agents: 100+ chains, 15+ providers
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- flashift/flashift-mcp-server
- GitHub Stars
- 0
- Server Listing
- Flashift MCP Server
TDQS
Scored across 5 tools
Each tool targets a distinct step of the swap flow: list currencies, list providers, get a quote, create a transaction, and track a transaction. Minor overlap exists between get_providers and get_estimated_amount (both surface provider/rate information) and between quoting and creating, but the descriptions make the boundaries clear.
All five tools follow a consistent snake_case verb_noun pattern (get_* for reads, create_* for writes). The convention is predictable and uniform, with no mixed casing or vague verbs.
Five tools is a tight, well-scoped surface for a crypto swap API, and every tool maps to a necessary step (discover, quote, execute, track). Nothing appears redundant or padded.
The core lifecycle is covered: currencies, providers, rate estimation, transaction creation, and status tracking. Minor gaps remain around transaction history listing or cancellation/refund handling, which an agent could work around but would otherwise expect.
Available Tools
5 toolscreate_transactionCreate TransactionCInspect
Create a new cryptocurrency exchange/swap transaction on Flashift.
| Name | Required | Description | Default |
|---|---|---|---|
| fixed | Yes | Whether the rate is fixed (true) or floating (false). | |
| amount | Yes | Amount of source currency to exchange (greater than 0). | |
| user_id | No | Optional affiliate or user ID for tracking the transaction. | |
| symbol_to | Yes | Target currency symbol (e.g. usdt, btc). | |
| network_to | Yes | Target network (e.g. trc20, eth). | |
| to_address | Yes | Destination wallet address where swapped funds will be received. | |
| symbol_from | Yes | Source currency symbol (e.g. btc, eth). | |
| to_extra_id | No | Memo, destination tag, or extra ID if required by the target currency/network (e.g. XRP, TON, XLM). | |
| network_from | Yes | Source network (e.g. btc, eth). | |
| provider_name | Yes | Name of the exchange provider chosen from get_estimated_amount (e.g. changenow). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations at all, the description carries the full behavioral burden and falls short. It does not disclose that this is a state-changing operation that commits funds, what it returns (transaction ID, deposit address, expiry), any auth/API-key requirement, or error behavior (invalid pair, amount below minimum). Only the platform name 'Flashift' is added beyond the title.
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 no filler or repetition. It is efficient, though the brevity reflects under-specification more than disciplined editing.
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?
This is a high-complexity mutation tool: 10 parameters, 8 required, no annotations, and no output schema. An agent needs to know the quote prerequisite, what a successful call returns, and how failures surface; none of that is present, so the definition is not complete enough to invoke confidently.
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 every parameter is already documented in the schema, including the get_estimated_amount dependency for provider_name. The description adds no parameter-level meaning beyond that, so the baseline 3 is appropriate.
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 states a specific verb and resource: 'Create a new cryptocurrency exchange/swap transaction on Flashift.' That clearly separates it from the read-only siblings (get_transaction_info, get_currencies). It does not, however, name or contrast itself with any sibling explicitly, so it stops short of a 5.
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?
No when-to-use conditions, prerequisites, or alternatives are given. Critically, the description omits that provider_name must be selected from get_estimated_amount (that link only appears buried in the schema) and says nothing about needing a confirmed quote before creating a transaction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_currenciesGet CurrenciesAInspect
Get supported cryptocurrencies and networks on Flashift. Optionally filter by symbol, network, or search keyword.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of items to return (default 50). | |
| search | No | Search query matching symbol, fullname, or network. | |
| symbol | No | Filter by currency symbol (e.g. btc, eth, usdt). | |
| network | No | Filter by network (e.g. eth, bsc, trx, btc). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. 'Get supported...' clearly implies a non-mutating read, so the safety profile is inferable, but nothing is said about result size, pagination, or whether results are live/static data.
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?
Two short sentences, zero filler, with the core action front-loaded and the filtering capability second. Nothing is wasted.
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 simple read-only lookup with a fully documented 4-parameter schema and no output schema, the description covers what the tool returns and how it can be narrowed. It could note whether results are paginated, but nothing essential for a correct call is missing.
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 all four parameters (limit, search, symbol, network) are already fully documented in the schema. The description restates three of the filters without adding format, matching, or default semantics, which is the baseline expectation when the schema does the heavy lifting.
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 supported cryptocurrencies and networks') with a clear scope (on Flashift), which is unambiguous against the transaction/provider-focused siblings. It does not explicitly contrast with any sibling, but the resource is distinct enough that no differentiation is needed.
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?
'Optionally filter by symbol, network, or search keyword' signals the usage mode (browse-all vs. narrow by filter), which is the relevant guidance for a listing tool. However it gives no when-to-use/when-not context, prerequisites, or alternatives among the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_estimated_amountGet Estimated AmountCInspect
Get estimated exchange amounts, best rates, min/max limits, and available providers for swapping from one cryptocurrency to another.
AI Tags
Introduction
Flashift's AI Tags play a crucial role in enhancing the user experience by providing intelligent insights and recommendations within the API. These tags leverage advanced AI algorithms to analyze various parameters such as KYC levels, transaction rates, and user feedback, enabling users to make informed decisions when selecting exchange services. By integrating AI Tags into the API, Flashift ensures that users can access the most competitive rates and trustworthy services, ultimately leading to a more efficient and reliable transaction process. This not only simplifies the decision-making process for users but also enhances the overall functionality and appeal of the Flashift platform.
AI Tag | Description |
AI Best Rate | Flashift’s AI system analyzes user feedback and exchange features to identify the most accurate and reliable rates, helping users choose the provider with the best rate and highest trustworthiness for a more predictable exchange experience. |
Recommended | Flashift's AI system recommends the exchange service by analyzing various features such as exchange rates, KYC levels, and transaction speed. |
Best Rate | Flashift finds an exchange service that currently offers the most competitive transaction rate. |
Best in KYC | Flashift's cutting-edge AI system identifies an exchange service with the lowest KYC level compared to the others on the list. |
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Rate type: "float" (floating rate) or "fixed" (fixed rate). Default evaluates both. | |
| amount | Yes | Amount of source currency to exchange (greater than 0). | |
| symbol_to | Yes | Target currency symbol (e.g. usdt, btc, sol). | |
| network_to | Yes | Target network (e.g. trc20, eth, sol). | |
| symbol_from | Yes | Source currency symbol (e.g. btc, eth, usdt). | |
| network_from | Yes | Source network (e.g. btc, eth, trx). | |
| exchange_list | No | Optional comma-separated list of preferred provider names (e.g. "changenow"). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full behavioral burden but delivers nothing about read-only status, rate limits, caching, or whether results are quotes that expire. The AI Tags block describes a rating taxonomy without stating that these tags appear in this tool's output or how to interpret them.
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 useful content is one front-loaded sentence; everything after it is a multi-paragraph marketing preamble and a table about AI Tags whose connection to this specific tool is never established. That bulk dilutes the signal and should have been trimmed or tied to the return values.
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 seven parameters, five required, no output schema, and no annotations, the description needs to explain the estimate's ephemerality, currency/network pairing requirements, and what the response contains. It only gestures at returned fields and never explains the AI Tag values it spends most of its length describing.
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 all seven parameters including the enum for type and the optional exchange_list are already documented in the schema. The description adds no additional parameter meaning, which is the baseline 3 case rather than a deficiency.
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 opening sentence gives a specific verb (get) and resource (estimated exchange amounts) plus the concrete outputs returned: rates, min/max limits, and providers. It does not differentiate itself from the sibling get_providers, which the phrase 'available providers' partially overlaps with, so it stops short of a 5.
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?
There is no statement of when to call this tool versus create_transaction or get_providers, and no prerequisites or preconditions are given. The read-only estimate-before-swap workflow is left entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_providersGet ProvidersAInspect
Get the list of supported crypto exchange providers and their availability status on Flashift.
| 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 full behavioral burden, and it does disclose the two things it returns: the provider list and each provider's availability status. It does not mention auth needs, caching, rate limits, or ordering, so the disclosure is partial.
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 naming the resource and the returned attribute, with no filler or redundancy.
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-parameter read tool with no output schema, the description adequately communicates what comes back (providers plus availability). It could add a note on shape or ordering, but nothing essential is missing for correct invocation.
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?
The tool takes zero parameters, so per the rubric the baseline is 4. There are no parameter semantics for the description to clarify.
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 the list of supported crypto exchange providers') plus the extra dimension of availability status, on the named platform Flashift. It is clearly distinct from siblings like get_currencies and get_transaction_info, though it never explicitly names them.
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?
There is no when-to-use guidance, no prerequisites, and no routing to alternatives such as get_currencies or get_estimated_amount. The agent is left to infer that this is a discovery step before creating a transaction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transaction_infoGet Transaction InfoAInspect
Get real-time tracking information and status for an existing crypto exchange transaction by its exchange ID.
| Name | Required | Description | Default |
|---|---|---|---|
| exchange_id | Yes | The exchange ID returned when creating the transaction. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It signals a read operation and names the returned content (tracking information and status), but says nothing about auth requirements, rate limits, or freshness/refresh behavior for a tool whose value hinges on 'real-time' data.
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 sentence with the verb, resource, scope, and lookup key front-loaded. Nothing is wasted and nothing important is buried.
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 single-parameter read tool with no output schema, the description conveys the kind of data returned (real-time tracking info and status), which compensates for the missing return schema. Only minor gaps remain around failure cases and refresh semantics.
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% and the schema already explains the exchange_id parameter. The description only restates that lookup is 'by its exchange ID', adding no format or syntax detail beyond the schema, so 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?
Specific verb+resource: 'get real-time tracking information and status' for a crypto exchange transaction, keyed by exchange ID. It is clearly distinguishable from create_transaction and get_estimated_amount, though it never names a sibling explicitly.
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 phrase 'for an existing crypto exchange transaction' plus the schema note that the ID comes from creation implies you must have already created a transaction. That is useful implied context, but there are no explicit when-not conditions or named alternatives.
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.
5 tool updates
- First observed
create_transaction - First observed
get_currencies - First observed
get_estimated_amount - First observed
get_providers - First observed
get_transaction_info
Related MCP Connectors
Non-custodial DEX aggregator for autonomous AI agents: best-price swaps on 8 chains, no API key.
Non-custodial DeFi for AI agents: swaps, concentrated liquidity (V3/V4) zaps + ranges, 5 EVM chains
Non-custodial, rug-gated crypto swaps + token safety + discovery for AI agents.
Non-custodial cross-chain OTC for AI agents: sealed RFQ, negotiation, HTLC atomic swaps.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceDeFi execution layer for AI agents - swap, zap in/out of LP, route across AMMs on 5 EVM chains.44 npm7MIT
- AlicenseBqualityDmaintenanceEnables AI agents to perform gasless cross-chain transactions by paying with supported tokens on one chain and executing on another, all without exposing private keys.1920 npm1Apache 2.0
- AlicenseAqualityDmaintenanceNon-custodial crypto swaps for AI agents: Solana (Jupiter) + 7 EVM chains (KyberSwap), 1288+ assets, cross-chain routing, priority-fee oracle, Hyperliquid perps. Returns unsigned transactions — your wallet signs, no API key, no KYC. Hosted at https://swaptitan.net/mcp181MIT

Purple Flea Walletofficial
FlicenseNot gradedqualityDmaintenanceNon-custodial HD wallet API for AI agents. Generate wallets on 6 chains (ETH, Base, SOL, BTC, TRX, XMR), check balances, send crypto, and swap cross-chain via Wagyu aggregator. 10% referral commissions.1 npm-
Glama MCP Gateway
Add one secure layer between your agents and this server.