MadeOnSol — Solana memecoin intelligence
mcp-server-madeonsol
MCP-Server für die MadeOnSol Solana KOL-Intelligenz-API. Zur Verwendung mit Claude Desktop, Cursor oder jedem MCP-kompatiblen Client.
Authentifizierung
Drei Optionen (in Prioritätsreihenfolge):
Methode | Umgebungsvariable | Am besten geeignet für |
MadeOnSol API-Schlüssel (empfohlen) |
| Entwickler — kostenlosen Schlüssel erhalten |
RapidAPI-Schlüssel |
| RapidAPI-Abonnenten |
x402-Mikrozahlungen |
| KI-Agenten mit Solana-Wallets |
Related MCP server: NoesisAPI
Installation
npm install -g mcp-server-madeonsolx402-Peer-Abhängigkeiten (
@x402/fetch @x402/svm @x402/core @solana/kit @scure/base) werden nur bei Verwendung vonSVM_PRIVATE_KEYbenötigt.
Konfiguration
Claude Desktop
Fügen Sie dies zu claude_desktop_config.json hinzu:
{
"mcpServers": {
"madeonsol": {
"command": "mcp-server-madeonsol",
"env": {
"MADEONSOL_API_KEY": "msk_your_api_key_here"
}
}
}
}Cursor
Fügen Sie dies mit demselben Befehl und denselben Umgebungsvariablen zu den MCP-Einstellungen hinzu.
Tools
Tool | Beschreibung |
| Echtzeit-KOL-Trade-Feed (946 Wallets) |
| Multi-KOL-Konvergenzsignale |
| KOL PnL- und Gewinnraten-Rankings |
| Elite Pump.fun-Deployer-Starts |
| Alle Endpunkte und Preise auflisten (kostenlos) |
Mit Pro/Ultra-Abonnement:
Tool | Beschreibung |
| 24h-WebSocket-Token für KOL-/Deployer-Streaming und DEX-Trade-Stream erhalten |
Webhook CRUD-Tools | Webhooks erstellen, auflisten, aktualisieren, löschen, testen |
Ebenfalls verfügbar
Plattform | Paket |
TypeScript SDK | |
Python (LangChain, CrewAI) |
|
ElizaOS | |
Solana Agent Kit |
Lizenz
MIT
Available Tools
51 toolsmadeonsol_alpha_leaderboardARead-onlyIdempotent
Top statistically profitable early-buyer wallets, scored from 47,000+ early-buyer records. BASIC=25 (truncated), PRO=100, ULTRA=500 + bot signals.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time window | 30d |
| min_tokens | No | Minimum tokens traded by wallet (1-20) | |
| sort | No | Sort axis | win_rate |
| exclude_bots | No | Exclude wallets flagged as bots |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. The description adds valuable behavioral context: results are truncated per tier (25/100/500) and ULTRA includes bot signals. This goes beyond annotations by disclosing data limitations and tier-dependent behavior.
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 sentences with zero waste. First sentence defines the tool, second explains tier limits. Information is front-loaded and efficiently packaged.
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?
Although no output schema exists, the description explains the nature of the output (leaderboard of profitable wallets) and mentions tier-based data limitations. For a simple list-type tool, this is nearly complete; missing only explicit return fields.
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 all parameters documented. The description adds no further meaning to parameters (sort, period, min_tokens, exclude_bots). Baseline of 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 the tool returns 'Top statistically profitable early-buyer wallets' from a large dataset, clearly distinguishing it from sibling leaderboards that focus on KOLs or scouts. The verb 'scored' and mention of tier limits add specificity.
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 description implies this tool is for analyzing early-buyer wallet profitability, but does not explicitly state when to use it over alternatives like 'madeonsol_kol_leaderboard' or 'madeonsol_scout_leaderboard'. No exclusions or context-aware guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_alpha_linkedARead-onlyIdempotent
Wallets behaviorally linked to a target wallet (co-bought 3+ tokens within 2 seconds). ULTRA only.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Wallet address (base58) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, openWorld, idempotent, and non-destructive. The description adds behavioral detail (co-bought logic) and access restriction (ULTRA only), which goes beyond annotations.
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?
Single 11-word sentence that is front-loaded and compact. Every element earns its place, with no 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 simple tool with one parameter, no output schema, and comprehensive annotations, the description provides sufficient context: input, logic, and access level.
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%; the description does not add new meaning to the wallet parameter beyond calling it a 'target wallet'. Baseline score 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?
The description clearly states it returns wallets behaviorally linked to a target wallet via a specific heuristic (co-bought 3+ tokens within 2 seconds). It distinguishes from sibling alpha tools like madeonsol_alpha_wallet by focusing on linkage.
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 description implies use for finding linked wallets but does not explicitly state when not to use or mention alternatives. However, the sibling list provides context for differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_alpha_walletARead-onlyIdempotent
Full alpha profile for one wallet — per-token breakdown + bot_signals array. ULTRA only.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Wallet address (base58) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. Description adds that the output includes per-token breakdown and bot_signals, clarifying what the agent can expect. No contradictions.
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?
Extremely concise single sentence with no wasted words; front-loaded with core purpose, then specifics. Perfectly sized.
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 one-parameter read tool, the description is largely sufficient. However, 'ULTRA only' is ambiguous without context, and 'bot_signals array' could be explained further for clarity.
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 'Wallet address (base58)' already described. Description doesn't add parameter meaning beyond what's in the schema, meeting the baseline.
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?
Clearly states it provides a 'Full alpha profile for one wallet' with specific components ('per-token breakdown + bot_signals array'). The 'ULTRA only' qualifier distinguishes it from other wallet tools, though 'alpha profile' could be more precise.
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?
Only hints at usage with 'ULTRA only', implying a permission constraint, but provides no explicit guidance on when to use this versus sibling tools like wallet_stats or wallet_positions. No alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_coordination_alerts_createA
Create a coordination alert rule. Fires within ~1s when a KOL cluster meets thresholds (peak-density scored). Delivered via WebSocket (kol:coordination channel) and/or HMAC-signed webhook. Returns webhook_secret ONCE when delivery_mode includes 'webhook' — store it.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Optional label | |
| min_kols | No | Minimum distinct KOLs in the window (default 3) | |
| window_minutes | No | Peak-density window size in minutes (default 15) | |
| min_score | No | Minimum composite score 0-100 (default 60) | |
| include_majors | No | Include WIF/BONK/POPCAT etc. Default false. | |
| cooldown_min | No | Silence per (rule, token) in minutes (default 60) | |
| score_jump_break | No | Re-fire early when score jumps by N points vs last fire (default 10) | |
| delivery_mode | No | Where to deliver fires | |
| webhook_url | No | Required when delivery_mode includes 'webhook' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations: firing latency (~1s), delivery methods (WebSocket channel and HMAC-signed webhook), and the one-time return of webhook_secret. Annotations indicate write operation but non-destructive. No contradictions.
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 description is two sentences with no wasted words, front-loading the purpose and adding essential behavioral details efficiently.
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 tool with 9 parameters, no required ones, and no output schema, the description covers key aspects: creation, firing condition, delivery, and return value. Missing error cases but acceptable given output schema absence.
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 all parameters described. The description adds context on overall behavior (peak-density scoring) but does not significantly enhance per-parameter meaning beyond 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 clearly states the tool creates a coordination alert rule, specifies firing condition (KOL cluster meets thresholds within ~1s), delivery methods (WebSocket and/or webhook), and return of webhook_secret. It distinguishes from sibling alert tools like price_alerts_create and coordination_alerts_update.
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 description implies usage for setting up KOL coordination alerts with thresholds, but lacks explicit guidance on when to use this vs alternatives like price_alerts_create or first_touch_subscriptions_create. However, for a creation tool, the context is fairly clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_coordination_alerts_deleteADestructiveIdempotent
Delete a coordination alert rule permanently.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Rule UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and readOnlyHint=false. Description adds 'permanently' aligning with destructiveness but no further behavioral details. No contradictions.
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?
Short single sentence, front-loaded. Every word earns its place, though 'permanently' is slightly redundant given annotations. Still concise.
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?
Adequate for a simple delete operation with one required parameter and no output schema. Description explains purpose and implies irreversibility. No missing critical information.
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 'id' fully described in schema as 'Rule UUID'. Description adds no extra meaning beyond confirming the parameter is required and identifies the rule.
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 clearly states it deletes a coordination alert rule permanently. It uses a specific verb and resource, and differentiates itself from siblings like create, get, list, update.
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 explicit guidance on when to use this tool vs alternatives like update or other delete tools. Context is implied by the tool name and sibling set, but description lacks explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_coordination_alerts_getARead-onlyIdempotent
Get one coordination alert rule by id.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Rule UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, clearly indicating safe, non-destructive, idempotent behavior. The description does not contradict these annotations but adds no further behavioral context beyond the 'by id' constraint.
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 description is a single sentence of six words, highly concise and front-loaded with the core action. Every word is necessary and no extraneous information is present.
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?
Given the tool's low complexity (one parameter, no output schema, rich annotations), the description provides sufficient context for an agent to understand the tool's behavior. It is complete for a straightforward get-by-id operation.
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% for the single parameter 'id,' which includes a description 'Rule UUID.' The tool description does not add additional meaning to this parameter beyond what the schema already provides, meeting the baseline for high coverage.
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 explicitly states 'Get one coordination alert rule by id,' which clearly identifies the verb and resource. It distinguishes from sibling tools like list (get all) and create/delete/update, as it specifies retrieval of a single rule by its unique identifier.
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 guidance is provided on when to use this tool versus alternatives such as listing all rules or searching. The description lacks context about prerequisites, fallback options, or scenarios where this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_coordination_alerts_listARead-onlyIdempotent
List your coordination alert rules. PRO=5 rules, ULTRA=20.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, indicating a safe, non-destructive read operation. The description adds value by disclosing plan-specific rule limits (PRO=5, ULTRA=20), which is not in annotations. No contradiction.
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 description is extremely concise: one sentence and a clause with no unnecessary words. Every part is necessary and immediate.
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 list tool with no parameters and no output schema, the description provides the essential information: what it lists and plan limits. It is complete enough for an agent to use correctly, though it could optionally mention that it returns a list of rules.
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, and the input schema has 100% coverage. The description does not need to add parameter semantics. Baseline score of 4 applies as the description is adequate for a no-parameter tool.
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 clearly states the tool lists coordination alert rules, with the verb 'List' and resource 'coordination alert rules'. It also differentiates from siblings like create, delete, get, update by specifying the listing action and plan-specific limits (PRO=5, ULTRA=20).
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 description does not explicitly state when to use this tool versus alternatives like create or get. However, the context of the sibling tool names (e.g., _list, _create) implies that _list is for listing, but no when-not or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_coordination_alerts_updateC
Update fields on a coordination alert rule, including is_active toggle.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Rule UUID | |
| name | No | ||
| min_kols | No | ||
| window_minutes | No | ||
| min_score | No | ||
| include_majors | No | ||
| cooldown_min | No | ||
| score_jump_break | No | ||
| delivery_mode | No | ||
| webhook_url | No | ||
| is_active | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behavioral traits beyond the annotation's readOnlyHint=false, such as whether updates are partial or full replacement, or authentication requirements. The annotation provides minimal context, and the description adds little transparency.
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 description is concise (one sentence, 12 words) and front-loaded with verb and resource. However, it sacrifices necessary detail for brevity, making it less informative.
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?
Given 11 parameters, no output schema, and sparse annotations, the description is incomplete. It does not explain return values, error cases, or how partial updates work, leaving significant gaps.
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?
With only 9% schema description coverage, the description adds very little meaning. It only mentions 'fields' and 'is_active toggle', leaving many parameters (e.g., min_kols, cooldown_min, delivery_mode) without explanation.
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 clearly states the verb 'Update' and the resource 'coordination alert rule', and mentions a specific field ('is_active toggle'). It effectively distinguishes from sibling tools like create, delete, get, and list.
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 guidance is provided on when to use this tool versus alternatives (e.g., when to update vs. create or delete). There is no discussion of prerequisites, context, or when-not-to-use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_copytrade_createA
Create a copy-trade rule. Returns webhook_secret ONCE on creation when delivery_mode includes 'webhook' — store it to verify HMAC signatures. PRO=5 source_wallets/rule, ULTRA=50.
| Name | Required | Description | Default |
|---|---|---|---|
| source_wallets | Yes | Wallets to mirror (base58) | |
| sizing_amount | Yes | Amount used by the chosen sizing_mode | |
| name | No | Optional human label | |
| min_trade_sol | No | Minimum source-wallet trade size to fire a signal | |
| only_action | No | Filter to one side (default 'both') | |
| sizing_mode | No | How sizing_amount is interpreted | |
| delivery_mode | No | Where to deliver fired signals | |
| webhook_url | No | Required when delivery_mode includes 'webhook' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that webhook_secret is returned only once, which is critical for HMAC signatures. Annotations already indicate a write operation (readOnlyHint=false), so this adds meaningful context beyond annotations. No contradictions.
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 sentences, no wasted words. Front-loaded with purpose, followed by essential behavioral note and limits.
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 create operation with 8 parameters and no output schema, the description covers purpose, return value caveat, and constraints. Missing error handling or activation details, but adequate overall.
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%, so baseline is 3. The description adds minimal parameter context beyond schema, mainly the limit on source wallets. Does not explain each parameter's meaning beyond what the schema already provides.
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?
Clear verb and resource ('Create a copy-trade rule'), with specific constraints on webhook secret and limits. Does not explicitly differentiate from sibling copy-trade tools (delete, update, etc.), but the verb is distinct enough.
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?
Implies usage for creating rules, but no explicit guidance on when to use this versus alternatives like update or delete. No 'when not to use' or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_copytrade_deleteADestructiveIdempotent
Delete a copy-trade rule permanently.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Subscription id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint=true and idempotentHint=true. Description adds 'permanently', confirming irreversibility, but provides no other behavioral traits like auth needs or side effects.
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?
Single sentence with no extraneous information. Efficiently communicates the essential action.
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?
Given the tool's simplicity (one parameter, no output schema, clear annotations), the description is complete enough. No further information is necessary for an agent to use it 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% and the schema already describes the 'id' parameter as 'Subscription id'. The description does not add additional meaning 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?
Description clearly states the action (delete) and resource (copy-trade rule), and adds 'permanently' to indicate irreversibility. It distinguishes from sibling tools like create, get, list, and update.
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 explicit guidance on when to use this tool versus alternatives. While it is obvious as the only delete tool, there are no conditions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_copytrade_getARead-onlyIdempotent
Get one copy-trade rule by id.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Subscription id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds no additional behavioral context beyond what the annotations provide, which is adequate but not enhanced.
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 description is a single, focused sentence that conveys the essential purpose without any extraneous words. It is optimally concise and front-loaded.
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 single-parameter retrieval tool with robust annotations, the description provides sufficient context. It could mention return value details, but the lack of an output schema does not detract significantly from completeness.
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 a clear description for the only parameter ('id' is 'Subscription id'). The description adds no further clarification about the parameter's format or usage, so baseline score 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?
The description clearly states the action ('Get') and the resource ('copy-trade rule') with a qualifier ('by id'). It effectively distinguishes this tool from siblings like 'list' or 'create'.
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 guidance is provided on when to use this tool versus alternatives like 'madeonsol_copytrade_list' or when not to use it. The usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_copytrade_listBRead-onlyIdempotent
List your copy-trade rules. PRO=3 rules, ULTRA=20 rules.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and idempotentHint=true. Description adds plan limit info (PRO=3, ULTRA=20) which is useful behavioral context, but does not disclose other traits like pagination or sorting.
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?
Extremely concise, single sentence with no wasted words. Front-loaded with action and resource.
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?
Given no output schema and low complexity, the description is adequate but could be improved by mentioning the output format (e.g., returns an array of rules) or its relationship to plan limits.
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?
No parameters in the schema, so description adds no parameter semantics. Baseline of 4 for 0 parameters 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 clearly states it lists copy-trade rules, using a specific verb and resource. The plan limit info adds context, but it does not explicitly differentiate from sibling tools like madeonsol_copytrade_get.
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 guidance on when to use this tool vs alternatives like get, update, or create. The description merely states the function and plan limits without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_copytrade_signalsARead-onlyIdempotent
Recent fired copy-trade signals (up to 7 days). Filter by subscription_id, since (ISO8601), and limit (1–500).
| Name | Required | Description | Default |
|---|---|---|---|
| subscription_id | No | Filter to one rule | |
| since | No | ISO8601 timestamp — only signals fired at-or-after this time | |
| limit | No | Max signals to return (1–500) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds context beyond annotations: 7-day window and filtering capability. Annotations already indicate read-only, idempotent, and safe behavior; description aligns and complements.
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?
Single sentence, 18 words, front-loaded with core purpose. No wasted words.
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?
No output schema, so description should detail return format. It mentions filters but not the structure of a signal object, leaving some incompleteness.
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%, so baseline 3. Description restates parameters as filters without adding new semantic details 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?
Clearly states 'Recent fired copy-trade signals (up to 7 days)', specifying the resource (signals) and scope. Differentiates from sibling tools like copytrade_list and signal_performance.
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?
Implied usage via filters, but no explicit guidance on when to use vs alternatives like copytrade_list or signal_performance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_copytrade_updateC
Update fields on a copy-trade rule, including is_active toggle.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Subscription id | |
| name | No | ||
| source_wallets | No | ||
| min_trade_sol | No | ||
| only_action | No | ||
| sizing_mode | No | ||
| sizing_amount | No | ||
| delivery_mode | No | ||
| webhook_url | No | ||
| is_active | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate mutation (readOnlyHint=false) and non-destructiveness (destructiveHint=false). The description adds only 'update fields', with no details on side effects, partial vs full update behavior, or constraints. Minimal additional value.
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 description is a single short sentence, which is concise but insufficiently informative given the tool's complexity. It is front-loaded with the action, but brevity sacrifices necessary detail.
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?
The tool has 10 parameters, no output schema, and no explanation of return values or error states. Missing context about required fields, defaults, or relationships to siblings. The description is far from 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?
With only 10% schema description coverage, the description should compensate but only mentions 'is_active' as an example. The other 9 parameters (including enums like only_action, sizing_mode, delivery_mode) are left unexplained. The description adds little meaning 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 clearly states the verb 'update' and the resource 'copy-trade rule', with an example field 'is_active toggle'. Among siblings like madeonsol_copytrade_create, get, list, this tool is unambiguously the update variant.
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 guidance on when to use this tool versus alternatives, prerequisites (e.g., requires an existing rule ID), or when not to use it. The description is silent on usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_create_webhookA
Register a webhook URL to receive real-time push notifications for KOL trades and deployer alerts. Requires Pro/Ultra subscription.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | HTTPS webhook URL to receive events | |
| events | Yes | Event types to subscribe to | |
| min_sol | No | Optional: minimum SOL amount filter (for kol:trade) | |
| action | No | Optional: filter by buy or sell only | |
| deployer_tier | No | Optional: filter by deployer tiers, e.g. ['elite', 'good'] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate the tool is not read-only, not destructive, open-world, and not idempotent. The description adds the subscription requirement but does not disclose other behavioral traits like side effects (e.g., external endpoint activation), idempotency behavior on duplicate URLs, or authentication details. It does not contradict annotations.
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 description is extremely concise: two sentences that front-load the purpose and requirement. Every word adds value with no 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 creation tool with 5 parameters and no output schema, the description covers the basic purpose and prerequisite but lacks details on return values, error handling, or validation. With no output schema, the agent would benefit from knowing what response to expect.
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%, so the description does not need to repeat parameter details. It provides no additional meaning beyond the schema descriptions. The baseline score of 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 clearly states the action (Register a webhook URL), the resource (webhook URL), and the purpose (receive real-time push notifications for KOL trades and deployer alerts). It distinguishes from sibling tools like list_webhooks or delete_webhook by specifying the creation action and event types.
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 description mentions the Pro/Ultra subscription requirement but provides no guidance on when to use this tool vs alternatives like coordination_alerts_create or other webhook tools. There is no explicit when-to-use or when-not-to-use information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_delete_webhookBDestructiveIdempotent
Delete a webhook by ID. Permanently removes the webhook and its delivery history.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Webhook ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false. Description adds minimal value by stating permanence, but lacks additional behavioral details (e.g., auth requirements, irreversibility beyond what annotations imply).
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 concise sentences, front-loaded with purpose, no superfluous words.
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?
Adequate for a simple tool with one parameter and no output schema. Mentions permanence, but could be slightly more explicit about irreversibility.
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 param 'id' described as 'Webhook ID to delete'. Description aligns but adds no new semantics. 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?
Clearly states the action ('Delete a webhook by ID') and consequences ('Permanently removes the webhook and its delivery history'). Distinct from sibling tools like create, test, list, though sibling differentiation is not explicit.
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 guidance on when to use this tool versus alternatives (e.g., other delete tools like coordination_alerts_delete, price_alerts_delete). No prerequisites or conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_deployer_alertsARead-onlyIdempotent
Get real-time alerts from Pump.fun deployers with KOL buy enrichment. Filters: deployer tier, alert_type, priority, and min_kol_buys to gate out noise. Cursor-paginated via 'before' (preferred over 'offset' at scale).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of deployer alerts to return (1-100) | |
| offset | No | Legacy offset pagination (prefer 'before' for polling) | |
| before | No | Cursor — ISO 8601 timestamp; returns alerts strictly older than this. Pass next_before from the previous response. | |
| since | No | Only alerts after this ISO 8601 timestamp. | |
| tier | No | Filter by deployer tier. PRO/ULTRA only — BASIC callers receive HTTP 403. | |
| alert_type | No | Filter by alert_type (e.g. 'new_deploy', 'bonded'). | |
| priority | No | Filter by alert priority. | |
| min_kol_buys | No | Only alerts where at least N KOLs bought the token (1-100). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds value by specifying it's real-time with KOL enrichment, and that 'before' cursor is preferred for pagination at scale. No contradictions.
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 concise sentences: first states purpose and enrichment, second lists filters and pagination. Every sentence is informative with no fluff. Front-loaded with main action.
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?
While the description covers core functionality, it lacks details on the output structure (e.g., which fields each alert contains, KOL enrichment specifics). Since no output schema is provided, the agent might need to infer response format. For a tool with real-time enrichment, more output context is beneficial.
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?
Input schema has 100% documented parameters. The description reinforces key filter meanings (noise gating) and highlights the tier access restriction, adding context beyond schema descriptions. It also explains pagination preference, which is not in 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 clearly states it retrieves real-time deployer alerts with KOL buy enrichment, listing specific filters and pagination method. The sibling list includes many alert tools, but this one is uniquely focused on deployers with KOL enrichment, providing clear 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?
The description provides filter tips and recommends cursor pagination over offset, but does not explicitly state when to use this tool versus alternatives like coordination alerts or KOL feed. No when-not or direct sibling differentiation is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_deployer_trajectoryARead-onlyIdempotent
Deployer skill curve — streaks, rolling bond rate, improvement trend, and deployment cadence for a Pump.fun deployer.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Deployer wallet address (base58) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint, etc.) already declare it safe and non-destructive. The description adds context about the specific metrics returned (streaks, bond rate, etc.), which is valuable beyond the annotations.
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 description is a single succinct sentence that front-loads key terms. No fluff or redundant 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?
For a read-only analytics tool with one parameter and no output schema, the description adequately explains what the tool returns. No additional information is necessary given the simplicity.
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 single parameter 'wallet' has a clear description in the schema ('Deployer wallet address (base58)'). Schema description coverage is 100%, so the description does not need to add more. Baseline score of 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 clearly states that the tool returns a deployer's skill curve including streaks, rolling bond rate, improvement trend, and deployment cadence. It uses specific terms that differentiate it from sibling tools like madeonsol_deployer_alerts.
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 description implies usage for analyzing a deployer's performance over time, but does not explicitly state when to use this tool versus alternatives like madeonsol_deployer_alerts or other deployer-related tools. No exclusions or when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_discoveryARead-onlyIdempotent
List all available MadeOnSol API endpoints with prices and parameter docs. Free, no auth required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, destructiveHint, idempotentHint. Description adds 'Free, no auth required' and implies a list return, going beyond annotations to detail cost and authentication needs.
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 sentences, highly efficient, no extraneous information. Every part earns its place.
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?
Given no parameters and no output schema, the description adequately describes what the tool returns (list of endpoints with prices and docs). Sufficient for agent understanding.
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?
No parameters; input schema is empty. Per guidelines, 0 parameters yields baseline 4. Description adds no extra parameter info as none is needed.
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?
Description clearly states 'List all available MadeOnSol API endpoints with prices and parameter docs,' specifying the verb 'List' and resource 'available MadeOnSol API endpoints'. This distinguishes it from sibling tools that perform specific operations.
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?
Includes 'Free, no auth required,' providing clear context on when to use. Does not explicitly state when not to use or list alternatives, but the broad discovery nature is evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_first_touch_subscriptions_createA
Create a first-touch webhook subscription. ULTRA only — up to 10 active. Filters: kol (wallet), mint_suffix, min_first_buy_sol, min_scout_tier (S/A/B/C), min_n_touches. Returns webhook_secret ONCE — store it.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Optional label | |
| filters | No | ||
| delivery_mode | No | Default 'webhook' | |
| webhook_url | No | Required when delivery_mode includes 'webhook' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Explicitly states 'Returns webhook_secret ONCE — store it', a critical one-time behavior. Annotations (readOnlyHint=false) are consistent but the description adds essential behavioral detail beyond the structured annotations.
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?
Three concise sentences: purpose, constraints/filters, return value. Front-loaded and efficient with no unnecessary words.
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 creation tool with no output schema, the description covers parameters, constraints, and the secret's one-time nature. Could mention error implications but sufficient 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?
Schema coverage is 75% but the description enumerates all filter parameters, compensating for missing schema descriptions. It adds practical meaning beyond the structured input.
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 clearly states 'Create a first-touch webhook subscription' and lists specific filters. It distinguishes from sibling tools like delete, get, list, and update.
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?
States 'ULTRA only — up to 10 active', providing clear constraints and context for when to use. Although it doesn't explicitly list alternatives, the limitation is well communicated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_first_touch_subscriptions_deleteADestructiveIdempotent
Delete a first-touch subscription permanently. ULTRA only.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Subscription UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and idempotentHint=true. The description adds 'permanently' which confirms irreversibility, but this does not add substantial new behavioral context beyond the annotations. It does not mention error handling, return values, or side effects.
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 description is extremely concise with two short sentences. It front-loads the purpose and adds a restriction. No fluff or redundant information; every word earns its place.
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 destructive operation with no output schema, the description is too minimal. It omits critical context such as success confirmation, failure modes (e.g., subscription not found), or any undo capability. The agent may not know what to expect after invoking the tool.
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 the parameter 'id' described as 'Subscription UUID'. The description does not add any additional meaning or constraints beyond the schema, so it provides no extra value. 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 clearly states the action ('Delete'), the resource ('first-touch subscription'), and the effect ('permanently'). It also specifies a restriction ('ULTRA only'), distinguishing it from sibling tools like create, get, list, and update. The verb and target are unambiguous.
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 description provides implicit context with 'ULTRA only' but does not explicitly state when to use this tool versus alternatives (e.g., update). No guidance on prerequisites or conditions for deletion is given. It fails to help the agent decide between deleting and other actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_first_touch_subscriptions_getARead-onlyIdempotent
Get one first-touch subscription by id. ULTRA only.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Subscription UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the ULTRA access constraint, which is a behavioral context beyond annotations.
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 description is extremely concise, using two sentences to convey the core action and a usage constraint. No unnecessary words, and the purpose is front-loaded.
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 get-by-id tool with one parameter and strong annotations, the description is nearly complete. It covers the action and the ULTRA requirement. Lacking details about response format is acceptable given no output schema.
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 describes the 'id' parameter as 'Subscription UUID'. The description merely says 'by id', adding no further meaning 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 clearly states the action 'Get one first-touch subscription by id', using a specific verb and resource. It distinguishes itself from sibling tools like 'list' and 'delete' by specifying retrieval of a single item by identifier.
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 description provides context by stating 'ULTRA only', indicating the tool's restricted audience. It implies use when a specific subscription ID is known, but does not explicitly contrast with alternative tools like 'list'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_first_touch_subscriptions_listARead-onlyIdempotent
List your first-touch webhook subscriptions. ULTRA only.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds the 'ULTRA only' access constraint, which is a behavioral trait not covered by annotations. No contradictions.
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 description is very short but includes action, resource, scope, and a requirement. It's efficient, though 'first-touch' may be unclear without context.
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?
Given no output schema, the description doesn't hint at what the response contains (e.g., list of subscription objects). Annotations are good, but the missing return structure limits completeness. Adequate but not thorough.
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?
No parameters exist, so the description need not add parameter details. The schema coverage is 100% (empty). Baseline 4 is appropriate for zero 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?
The description clearly states it lists first-touch webhook subscriptions and mentions 'ULTRA only' for plan context. However, it doesn't explain what 'first-touch' means or distinguish it from similar list tools like general webhook lists.
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 guidance on when to use this tool versus alternatives (e.g., madeonsol_list_webhooks or subscription CRUD siblings). Only 'ULTRA only' hints at access restriction, but no context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_first_touch_subscriptions_updateC
Update fields on a first-touch subscription, including is_active toggle. ULTRA only.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Subscription UUID | |
| name | No | ||
| filters | No | ||
| delivery_mode | No | ||
| webhook_url | No | ||
| is_active | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate the tool is not read-only and not destructive, consistent with 'Update'. However, the description does not disclose potential side effects, such as whether updating is_active triggers notifications or other actions. The openWorldHint suggests possible side effects, but the description fails to elaborate.
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 description is a single sentence, making it concise and front-loaded, but it omits important details like a list of updatable fields or behavioral notes. It achieves conciseness at the expense of completeness.
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?
Given the input schema's complexity (nested filters object, six parameters) and lack of output schema, the description is too sparse. It does not explain return values, validation rules, or the effect of parameters like webhook_url or delivery_mode. The tool requires more context 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?
With only 17% schema description coverage, the description adds minimal value by highlighting the 'is_active' toggle. The other five parameters (name, filters, webhook_url, delivery_mode) remain undocumented in both schema and description, leaving the agent uncertain about their purpose and format.
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 clearly states the action ('Update fields') and the resource ('first-touch subscription'), and it distinguishes from sibling tools like create, delete, get, and list. It also specifies the 'is_active' toggle and an access restriction ('ULTRA only'), but could be more explicit about the full scope of updatable fields.
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 description provides no guidance on when to use this tool versus alternatives. It mentions 'ULTRA only' as an access constraint but does not explain prerequisites, typical use cases, or scenarios where another tool (e.g., create or delete) would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_alerts_recentARead-onlyIdempotent
Live KOL alert feed — consensus clusters, fresh-token KOL buys, and heating-up wallets in one unified stream.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | Lookback window | 15m |
| types | No | Filter to specific alert types | |
| min_severity | No | Minimum severity to include | |
| limit | No | Max alerts to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, openWorldHint, idempotentHint, destructiveHint) already declare safe, read-only behavior. The description adds no further behavioral traits (e.g., ordering, freshness guarantees, rate limits), so it does not exceed what annotations provide.
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 description is a single, efficient sentence (18 words) that front-loads the core purpose. Every word earns its place with no 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 4-parameter tool with 100% schema coverage and no output schema, the description adequately conveys the nature (live feed, alert types) but could be more explicit about ordering or time range constraints. Annotations are rich, lowering the burden.
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 parameter descriptions (limit, types, window, min_severity) are already clear with enums. The description does not add new meaning beyond listing the alert types, 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?
The description clearly states the tool is a 'Live KOL alert feed' and lists three specific alert types (consensus clusters, fresh-token KOL buys, heating-up wallets), distinguishing it from sibling tools like madeonsol_kol_feed or madeonsol_kol_consensus.
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 guidance is provided on when to use this tool versus alternatives. With many sibling tools (e.g., madeonsol_kol_feed, madeonsol_kol_consensus), explicit context or when-not-to-use guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_compare_walletsARead-onlyIdempotent
Side-by-side comparison of 2-5 KOL wallets — strategy, winrates, ROI, percentile. PRO+ adds 30d overlap tokens (bought by 2+ of the wallets).
| Name | Required | Description | Default |
|---|---|---|---|
| wallets | Yes | 2-5 wallet addresses. BASIC=2, PRO=4, ULTRA=5. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows it's a safe read operation. The description adds the context of side-by-side comparison and tier-dependent overlap tokens, but does not disclose any additional behavioral traits (e.g., response size, auth requirements, or rate limits). Given annotations carry the safety burden, a score of 3 is appropriate.
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 description is extremely concise—two sentences—with no extraneous words. The first sentence states the core function and metrics; the second adds the tier-specific feature. Information is front-loaded and easily scannable. Every word earns its place.
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?
The description covers the purpose, metric types, and tier-based feature. However, it lacks details about the output format (e.g., is it a table, JSON, or plain text?) and does not mention any prerequisites for using the PRO+ overlap feature. Given the annotations already provide safety context, the description is nearly complete but could be slightly richer.
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 only parameter, wallets, is described in the schema with min/max items and a brief description. The tool description adds clarity by mapping wallet counts to tiers (BASIC=2, PRO=4, ULTRA=5) and mentioning the PRO+ add-on feature. This adds meaningful context beyond the schema, compensating for the lack of parameter details elsewhere.
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 clearly states the tool does side-by-side comparison of 2-5 KOL wallets, listing metrics like strategy, winrates, ROI, percentile. The name 'compare_wallets' reinforces this purpose. Among many KOL sibling tools (e.g., kol_consensus, kol_leaderboard), it uniquely focuses on comparison, though it could better differentiate itself.
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 explicit guidance on when to use this tool versus alternatives like madeonsol_kol_consensus or madeonsol_kol_leaderboard. It mentions tier-specific features (BASIC, PRO, ULTRA) but does not direct the agent toward or away from this tool. The agent must infer usage from the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_coordinationARead-onlyIdempotent
KOL convergence signals (v1.2) — tokens being accumulated by multiple KOLs. Response includes peak_kols/peak_buys (busiest window slice), exited_count (net-flow-negative wallets), 0-100 coordination_score, and (v1.2 / 2026-05-06) market_cap_usd_at_first_buy + market_cap_usd + last_price_usd so you can see whether the cluster formed at micro-cap or after the chart was already running. Blacklist filters WIF/BONK/stables by default.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time period for coordination analysis | 24h |
| min_kols | No | Minimum number of KOLs converging on the same token | |
| limit | No | Number of coordination signals to return | |
| min_avg_winrate | No | PRO+: require cluster avg winrate_7d >= N (0-100) | |
| unique_strategies | No | PRO+: require >= N distinct strategies in cluster | |
| include_majors | No | v1.1: include major memecoins (WIF/BONK/POPCAT). Default false. | |
| window_minutes | No | v1.1: peak-density window (1-60). Default 15. | |
| min_score | No | v1.1: minimum composite coordination_score (0-100). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint as true/true/true/false, so the safety profile is clear. The description adds behavioral context beyond annotations, such as the response fields (peak_kols, exited_count, coordination_score), blacklisting behavior, and version details.
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 description is moderately long but efficient, front-loading the main purpose and version, then detailing response fields and blacklisting. It is well-structured and avoids 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?
Given no output schema, the description explains key response fields (peak_kols, exited_count, coordination_score, market_cap fields) adequately. It covers the blacklist default and version, but could be more exhaustive given the complexity of the tool.
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 each parameter already has a description. The main description does not add significant meaning to the parameters themselves, though it mentions response fields that depend on parameters like min_kols and min_score.
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 clearly states the tool provides 'KOL convergence signals (v1.2) — tokens being accumulated by multiple KOLs.' It lists specific response fields and distinguishes from other KOL tools by its focus on coordination signals.
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 description does not explicitly guide when to use this tool versus alternatives, nor does it state when not to use it. While the purpose is clear, no exclusionary or comparative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_feedARead-onlyIdempotent
Get real-time Solana KOL trades from 1,000+ tracked wallets. Each trade includes the token's market cap (USD) at the moment of trade — sourced from our in-memory price tracker, accurate to the millisecond, faster than Dexscreener spot. PRO+ adds size/age/strategy/winrate filters.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of trades to return (1-100) | |
| before | No | Cursor — ISO 8601 timestamp; returns trades strictly older than this. Pass next_before from the previous response for polling. | |
| action | No | Filter by trade type: buy or sell | |
| kol | No | Filter by specific KOL wallet address (base58) | |
| min_sol | No | PRO+: minimum SOL size per trade | |
| token_age_max_min | No | PRO+: max token age in minutes at time of trade | |
| exclude_sells | No | PRO+: drop sell-side trades | |
| min_kol_winrate | No | PRO+: minimum 7d winrate of the KOL (0-100) | |
| strategy | No | PRO+: filter by auto-tagged strategy |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds behavioral context: real-time nature, data source (in-memory price tracker), speed comparison, and PRO+ filter limitations. This adds value beyond annotations without contradiction.
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 well-structured sentences: first states core purpose and output details, second highlights PRO+ tiers and filters. No redundant information. Every sentence adds value and is front-loaded with essential info.
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?
No output schema exists, so description must explain return values. It mentions each trade includes token's market cap but not other fields. Given 9 parameters and complexity, the description covers the key output aspect but could list more fields. Adequate but not exhaustive.
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 descriptions for all 9 parameters. The description groups PRO+ parameters (min_sol, strategy, exclude_sells, min_kol_winrate, token_age_max_min) under 'size/age/strategy/winrate filters', adding meaningful context about tier restrictions. This enhances understanding beyond individual parameter descriptions.
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 clearly states it retrieves real-time Solana KOL trades from 1,000+ tracked wallets. The verb 'Get' and resource 'trades' are specific. However, it does not explicitly differentiate from sibling tools like kol_alerts_recent or kol_leaderboard, which might have overlapping purposes.
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 guidance on when to use this tool versus alternatives. The description mentions PRO+ features but does not specify exclusions or contexts where other tools might be preferred. The user is left to infer use cases from the tool name and context signals.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_first_touchesARead-onlyIdempotent
Recent first-KOL-touch events — every time a tracked KOL was the first to buy a token mint. Filterable by scout tier (S/A/B/C from mv_kol_scout_score), KOL winrate, token age, etc. Backtest: top scouts attract ≥3 follow-on KOLs within 4h ~50% of the time vs ~14% baseline. Median lead time before second KOL is 12s — for trading this signal, use the WebSocket channel rather than polling.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of events to return (1-100, default 50) | |
| since | No | ISO timestamp — events strictly newer than this. Polling cursor. | |
| before | No | ISO timestamp — events strictly older than this. Pagination cursor. | |
| kol | No | Filter to a single KOL wallet address (base58) | |
| min_kol_winrate_7d | No | Minimum 7d winrate of the first-touch KOL (0-100) | |
| min_scout_tier | No | Restrict to first-touch KOLs of this scout tier or better. Requires n_first_touches_30d >= 30. | |
| min_n_touches | No | Lower the minimum sample size for scout scoring (default 30) | |
| strategy | No | Filter by first-touch KOL's auto-tagged strategy | |
| token_age_max_min | No | Only events on tokens younger than N minutes (uses token_first_seen) | |
| min_first_buy_sol | No | Minimum size of the first KOL buy in SOL | |
| mint_suffix | No | Suffix-filter the token mint (e.g. 'pump', 'bonk') | |
| preset | No | Shortcut filter: 'scout' = min_scout_tier=B + min_n_touches=30 + token_age_max_min=60. 'fresh_launch' = token_age_max_min=15. | |
| include | No | Comma-separated includes — currently 'followers_4h' (computed for events >=4h old) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, providing strong behavioral transparency. The description adds context like backtest stats and a WebSocket recommendation, but doesn't reveal additional behavioral traits beyond what annotations cover.
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?
Description is front-loaded with purpose and is well-structured. The backtest statistics add value but are slightly lengthy; however, every sentence contributes to understanding. Overall concise for the information provided.
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 13 parameters and no output schema, the description covers purpose, filters, and usage guidance but does not describe the return fields or event structure. This leaves the agent somewhat uncertain about output format, making it less 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?
Schema coverage is 100%, so the description does not add new meaning beyond the input schema. It summarizes filter options but does not clarify parameter usage beyond what the schema already provides. 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?
Description starts with 'Recent first-KOL-touch events — every time a tracked KOL was the first to buy a token mint', providing a clear verb+resource. It distinguishes from siblings like madeonsol_kol_feed and madeonsol_kol_consensus by focusing on first touches and includes filterable criteria.
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?
Description includes backtest statistics and explicitly recommends using WebSocket for trading signals, guiding the agent on when to use this tool for historical analysis versus real-time alternatives. However, it does not explicitly state when not to use the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_hot_tokensARead-onlyIdempotent
KOL momentum tokens — tokens with accelerating KOL buy interest, early signals before coordination triggers. PRO+ adds buyer-quality filters.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time period: 1h or 6h | 6h |
| min_kols | No | Minimum KOL buyers to include a token | |
| limit | No | Number of hot tokens to return | |
| min_avg_winrate | No | PRO+: require avg winrate_7d of buyers >= N (0-100) | |
| unique_strategies | No | PRO+: require >= N distinct strategies among buyers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds minimal behavioral context beyond the concept of 'accelerating interest', which is more about purpose than specific behaviors like rate limits or pagination.
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 description is extremely concise, with two short, meaningful sentences. Every word adds value, no 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?
While the description provides a high-level concept and parameter hints, it lacks details about return values, ordering, or pagination. Given the absence of an output schema, the description could be more complete, but it is adequate for a simple listing tool.
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%, so the baseline is 3. The description mentions 'PRO+ adds buyer-quality filters', which maps to two parameters (min_avg_winrate and unique_strategies), adding slight context but not significantly enhancing the schema's own descriptions.
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 clearly identifies the tool as returning tokens with accelerating KOL buy interest, positioning it as an early signal tool distinct from other KOL tools like trending tokens or leaderboard. It uses specific language ('momentum tokens') and implies a unique value proposition.
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 description implies usage for early detection before coordination triggers, but does not explicitly state when to use this versus sibling tools or when to avoid it. No alternatives or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_leaderboardARead-onlyIdempotent
Get KOL performance rankings by PnL and win rate. PRO+ can sort by alternative axes (winrate/roi/profit_factor/early_entry).
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time period (trade retention is 180d) | 7d |
| limit | No | Number of KOLs to return in ranking | |
| sort | No | PRO+: sort axis (default 'pnl') | |
| strategy | No | PRO+: filter by strategy tag | |
| min_winrate | No | PRO+: minimum winrate cutoff (0-100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds the context that sorting by alternative axes (winrate, roi, etc.) requires a PRO+ subscription, which is a useful behavioral trait. However, it does not detail other aspects like data freshness or pagination behavior.
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 description consists of two concise sentences that front-load the primary purpose and quickly convey additional functionality (PRO+ sorting). No redundant or irrelevant information is present.
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 leaderboard query, the description covers the main functionality. However, with no output schema, it does not specify the structure of returned results (e.g., fields like KOL name, PnL, win rate). While the name implies a ranking list, the absence of output details slightly reduces completeness.
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 input schema covers all parameters with descriptions, achieving 100% coverage. The description supplements by clarifying that the default sort is by PnL/win rate and that alternative sort axes are PRO+-only, providing meaning beyond the schema's enum list. This adds value for parameter understanding.
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 clearly states the tool returns KOL performance rankings by PnL and win rate, with a specific verb 'Get'. The name 'kol_leaderboard' further distinguishes it from sibling leaderboards like alpha_leaderboard or scout_leaderboard, making the purpose unambiguous.
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 description provides no guidance on when to use this tool versus alternatives such as madeonsol_alpha_leaderboard or madeonsol_scout_leaderboard. There is no mention of prerequisites, context, or exclusions, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_pairsBRead-onlyIdempotent
KOL affinity matrix — discover which KOLs frequently co-trade the same tokens within a time window.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time period: 7d or 30d | 7d |
| min_shared | No | Minimum number of shared tokens to qualify as a pair | |
| limit | No | Number of KOL pairs to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint as false, which covers safety and idempotency. The description adds that the tool returns an 'affinity matrix' based on co-trading, but it does not detail how affinity is calculated, pagination behavior, or output structure. With annotations present, the description provides moderate added value.
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 description is a single sentence that conveys the core purpose efficiently. It is front-loaded with the key concept 'KOL affinity matrix.' However, it could be slightly more structured to include output hints or usage notes, but it is not overly verbose.
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 should hint at the return structure; it mentions 'affinity matrix' but doesn't specify fields like pair identifiers, score, or token counts. Given the tool's moderate complexity (3 optional parameters, no required ones) and rich annotations, the description is somewhat incomplete regarding output.
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?
All three parameters (limit, period, min_shared) have descriptions in the input schema, achieving 100% coverage. The description mentions 'time window' which aligns with the period parameter, but does not add new meaning beyond what the schema already provides. Baseline score of 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 clearly states the tool's purpose: 'KOL affinity matrix — discover which KOLs frequently co-trade the same tokens within a time window.' It uses a specific verb (discover) and resource (KOL pairs based on co-trading), distinguishing it from sibling tools like madeonsol_kol_leaderboard or madeonsol_kol_feed.
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 description does not provide any guidance on when to use this tool versus other KOL-related siblings (e.g., madeonsol_kol_consensus, madeonsol_kol_coordination). There is no explicit context or exclusion criteria, leaving the agent to infer when this is the appropriate choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_pnlARead-onlyIdempotent
Deep per-wallet PnL breakdown — realized PnL, win rate, profit factor, max drawdown, daily equity curve, closed/open positions. BASIC: summary only. PRO: + curve + closed. ULTRA: + open positions.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | KOL wallet address (base58) | |
| period | No | Time period for PnL calculation | 30d |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the description is not needed for safety traits. The description adds tier behavior (BASIC/PRO/ULTRA) and lists metrics, but does not disclose additional behavioral context like rate limits or data freshness. It is adequate but not extensive.
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?
Description is one sentence with a clear list of metrics and tier breakdown. It is concise and front-loaded with the purpose. However, the tier notation (— and : ) slightly clutters readability, and the list could be more structured.
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?
Given no output schema, the description lists specific metrics but does not explain the output format (e.g., object structure, array), leaving ambiguity for the agent. The tier info helps but completeness is moderate.
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 descriptions for both 'wallet' and 'period' parameters. The description does not add new semantic information beyond the schema, thus baseline score of 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 clearly states the tool provides 'Deep per-wallet PnL breakdown' with specific metrics (realized PnL, win rate, profit factor, max drawdown, daily equity curve, closed/open positions). It distinguishes from siblings by specifying 'KOL wallet' and tier system (BASIC, PRO, ULTRA), making the purpose unambiguous.
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 description implies use for detailed PnL analysis of a KOL wallet but does not provide explicit guidance on when to use this tool versus alternatives like madeonsol_wallet_pnl or other sibling tools. The tier system is mentioned but lacks comparative context for when to choose each tier.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_timingARead-onlyIdempotent
KOL entry/exit timing profile — hold duration, exit speed, and activity patterns for a specific KOL.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | KOL wallet address (base58) | |
| period | No | Time period: 7d or 30d | 30d |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, open-world, idempotent, and non-destructive. The description adds that it provides hold duration, exit speed, and activity patterns, which is consistent and adds minimal extra behavioral 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?
The description is a single, well-structured sentence that front-loads the core purpose and key outputs. No redundant or extraneous content.
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 tool with 2 parameters and no output schema, the description explains the output concept (hold duration, exit speed, activity patterns), but could provide more detail on the output format given its absence in the schema.
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 description does not add new meaning beyond what the schema already provides for the wallet and period 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?
The description clearly states the tool provides a KOL timing profile including hold duration, exit speed, and activity patterns. It distinguishes the tool from siblings like madeonsol_kol_consensus or madeonsol_kol_pnl by focusing specifically on timing.
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 description implies usage for obtaining timing profiles of a specific KOL, but does not provide explicit guidance on when to use this tool over alternatives, nor does it mention exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_token_entry_orderARead-onlyIdempotent
Ranked KOL first-buyers for a specific token, ordered by entry timestamp. PRO+ adds percentile_pnl_7d per entry.
| Name | Required | Description | Default |
|---|---|---|---|
| mint | Yes | Token mint address (base58) | |
| limit | No | Max ranked entries to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds value by specifying ranking, ordering, and the PRO+ addition of percentile_pnl_7d, which annotations do not cover. No contradictions.
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 sentences front-load the main purpose and then mention the PRO+ feature. No superfluous text, every sentence earns its place.
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?
No output schema exists, so the description must convey return structure. It mentions 'entry timestamp' and 'percentile_pnl_7d per entry', but leaves out other possible fields (e.g., rank, KOL identity). Could be more complete for a ranked list output.
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 covers both parameters (mint and limit) with descriptions. The description does not add new semantic meaning beyond the schema, such as format or constraints, 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?
Clearly states it returns ranked KOL first-buyers for a specific token ordered by entry timestamp. The name and description differentiate it from sibling KOL tools like madeonsol_kol_first_touches, but no explicit differentiation is provided.
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 guidance on when to use this tool versus alternatives. The description implies it's for viewing first-buyers, but no exclusions or context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_kol_trending_tokensARead-onlyIdempotent
Tokens ranked by KOL buy volume — pure capital-flow signal. Sub-hour periods (5m/15m/30m) require PRO/ULTRA.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time window | 1h |
| min_kols | No | Minimum KOL buyers | |
| limit | No | Number of trending tokens to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, covering safety. The description adds the subscription requirement for short periods but does not elaborate on ranking methodology or data behavior.
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 sentences, front-loaded with purpose and essential condition. No extraneous content.
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?
Lacks output schema, so description should compensate. Mentions return of tokens ranked by KOL buy volume but not expected fields or sorting order. Adequate but could be more 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?
Schema coverage is 100% with all parameters described. The description adds no new parameter details beyond what is in the schema, so baseline score 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?
The description clearly states 'Tokens ranked by KOL buy volume — pure capital-flow signal', specifying the verb (ranked), resource (tokens), and the distinguishing signal type. This effectively differentiates it from other KOL tools.
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 description provides a clear usage condition: 'Sub-hour periods (5m/15m/30m) require PRO/ULTRA.' However, it does not explicitly compare with sibling tools to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_list_webhooksARead-onlyIdempotent
List all your registered webhooks with delivery status and failure counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the description adds only the output fields (delivery status, failure counts). This is adequate but not extensive.
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 description is a single concise sentence with no unnecessary words, conveying all essential 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?
While there is no output schema, the description mentions key output fields (delivery status, failure counts) and annotations cover behavioral aspects. It lacks mention of pagination or response format, but is mostly complete for a simple list operation.
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 has no parameters, so schema coverage is 100%. The description does not need to explain parameters, and the baseline is 4.
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 clearly states the tool lists all registered webhooks with delivery status and failure counts, using a specific verb and resource, and distinguishes from sibling tools that create, delete, or test webhooks.
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 description implies when to use (to view registered webhooks) but does not explicitly state when not to use or mention alternatives. However, the context of sibling tools makes the usage clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_meARead-onlyIdempotent
Inspect your MadeOnSol API account — current tier, daily/burst quota state, remaining requests, subscription expiry, and per-feature usage (webhooks, copy-trade wallets, coordination rules, etc.). Use to self-throttle without parsing rate-limit headers.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=False. The description adds behavioral details about the return fields (quota, expiry, per-feature usage), enhancing transparency beyond annotations.
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 sentences with no wasted words. Front-loaded with main verb and resource, then succinctly lists data and use case.
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 no-parameter, no-output-schema read tool, the description fully covers what it does and why to use it. Annotations further assure safe behavior.
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?
No parameters exist, so schema coverage is 100%. The description doesn't need to explain parameters but adds value by detailing return values, which is appropriate for a parameterless tool.
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 clearly states the verb 'Inspect' and the resource 'your MadeOnSol API account', listing specific data returned (tier, quota, remaining requests, etc.). It differentiates from sibling tools by being the only account inspection tool.
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?
Provides explicit use case 'self-throttle without parsing rate-limit headers', but does not mention when not to use or alternatives. Still, it gives clear context for when it is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_stream_tokenA
Generate a 24h WebSocket streaming token. Includes ws_url for KOL/deployer streaming (Pro/Ultra) and dex_ws_url for all-DEX trade streaming (Ultra only).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false. The description adds behavioral context: the token is valid for 24 hours and which stream types are available. It does not contradict annotations. Additional details like rate limits or authentication are omitted, but the description complements the annotations adequately.
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 description is two sentences long, front-loads the key purpose ('Generate a 24h WebSocket streaming token'), and efficiently details the two output URLs and their plan requirements. No unnecessary words.
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?
Given zero parameters and the absence of an output schema, the description covers the core functionality and output fields. It could mention authentication or token usage, but for this complexity level it is sufficiently complete to guide an AI agent.
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 has zero parameters with 100% schema coverage. Per rules, baseline is 4. The description does not need to explain parameters, and it adds no parameter-specific info, which 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 clearly states it generates a 24h WebSocket streaming token, distinguishing between ws_url for KOL/deployer streaming (Pro/Ultra) and dex_ws_url for all-DEX trade streaming (Ultra only). This specific verb-resource combination and scope differentiate it from sibling tools like madeonsol_stream_session_kill or madeonsol_stream_sessions_list.
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 description explicitly indicates when to use the tool (for generating a streaming token) and includes tier prerequisites (Pro/Ultra and Ultra only). However, it does not explicitly state alternatives or when not to use it, but given zero parameters, usage context is sufficiently clear without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_test_webhookARead-onlyIdempotent
Send a sample event payload to a webhook URL to verify it works. Returns status code and response time.
| Name | Required | Description | Default |
|---|---|---|---|
| webhook_id | Yes | ID of the webhook to test |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, destructiveHint) already indicate safety, and the description adds context about the test action and return values (status code, response time). No contradiction with annotations.
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 concise sentences communicate purpose and return value without any wasted words.
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 one-parameter tool with no output schema, the description covers purpose and return value. Could mention error handling (e.g., invalid webhook_id) but not required for basic completeness.
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?
With 100% schema coverage for webhook_id, the description adds no further semantic meaning beyond the schema's description ('ID of the webhook to test'). Baseline score 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?
The description clearly specifies the verb ('send a sample event payload') and the resource ('webhook URL'), distinguishing it from sibling webhook tools like create_webhook, delete_webhook, and list_webhooks.
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 description implies using this tool to test a webhook, but it lacks explicit guidance on prerequisites (e.g., webhook must exist) or when not to use it compared to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_token_batchARead-onlyIdempotent
Bulk lookup of up to 50 mints in one request. Returns the same per-mint shape as madeonsol_token_get. DB queries batched with IN(...); dex-stream + RPC fan-outs run in parallel. ~10-20× cheaper than N sequential calls — ideal for sniper pipelines scoring many tokens at once.
| Name | Required | Description | Default |
|---|---|---|---|
| mints | Yes | 1–50 base58 Solana token mints |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable behavioral details: 'DB queries batched with IN(...); dex-stream + RPC fan-outs run in parallel.' This explains the internal execution mechanism, which goes beyond the annotations. No contradictions with annotations.
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 description is extremely concise with three sentences. It front-loads the core purpose in the first sentence, adds technical details in the second, and provides usage guidance with a cost comparison in the third. Every sentence is valuable and there is no redundancy or unnecessary 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?
Given that there is no output schema, the description adequately explains the return shape: 'Returns the same per-mint shape as madeonsol_token_get.' It also covers input constraints, internal behavior, and performance characteristics. For a batch lookup tool with simple input, this is complete and leaves no major questions unanswered.
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% for the single parameter 'mints', which has a clear description in the schema: '1–50 base58 Solana token mints.' The tool description does not add additional semantic meaning to this parameter beyond what the schema provides. Since schema coverage is high, a baseline score of 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 clearly states the tool's purpose: 'Bulk lookup of up to 50 mints in one request.' It specifies the action (lookup), resource (mints), and constraint (up to 50). It also distinguishes from the sibling tool madeonsol_token_get by stating 'Returns the same per-mint shape as madeonsol_token_get.' This provides clear 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?
The description provides explicit guidance on when to use this tool: 'Ideal for sniper pipelines scoring many tokens at once.' It also highlights the performance benefit: '~10-20× cheaper than N sequential calls.' While it doesn't explicitly state when not to use it (e.g., for single mint lookups), the comparison to the single-mint sibling implies the appropriate context. This is clear but could be more explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_token_buyer_qualityARead-onlyIdempotent
0–100 buyer-quality score for a token's first-buyer cohort. 5-min cached. BASIC: score+signal only. PRO/ULTRA: full breakdown.
| Name | Required | Description | Default |
|---|---|---|---|
| mint | Yes | Token mint address (base58) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, open-world. Description adds valuable behavioral context: 5-minute caching and plan-dependent output detail (BASIC vs PRO/ULTRA). No contradictions.
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 concise sentences: first defines purpose, second adds caching and plan differentiation. No extraneous content; every sentence adds value.
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?
Given low complexity and rich annotations, the description covers core functionality and caching. However, missing output schema means the agent lacks details on return structure (e.g., shape of 'score+signal' or 'full breakdown'), which is a minor gap.
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?
Input schema has 100% coverage for the single parameter (mint). Description does not add extra parameter-level meaning beyond what schema already provides; it focuses on output behavior.
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?
Description clearly states it provides a 0–100 buyer-quality score for a token's first-buyer cohort, with plan-level output differentiation. This is specific and distinguishable from sibling `madeonsol_tokens_batch_buyer_quality` which does batch processing.
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?
Implies usage for single-token analysis via contrast with batch sibling, and hints at plan-dependent output interpretation, but lacks explicit when-to-use or when-not-to-use guidance or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_token_cap_tableARead-onlyIdempotent
First non-deployer early buyers for a token, enriched with PnL, KOL identity, and bot flags. PRO=top 10 (truncated wallets), ULTRA=top 20 (full). BASIC: 403.
| Name | Required | Description | Default |
|---|---|---|---|
| mint | Yes | Token mint address (base58) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (read-only, idempotent), the description reveals plan-dependent behavior (403 for BASIC, truncated vs full wallets), which is critical for an agent to understand before calling.
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?
Single sentence with clear front-loading of purpose and key plan details. No filler or redundant 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?
Given the simple input schema and no output schema, the description fully covers what the tool does, its limitations, and plan variations. No missing context for agent 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?
Only one parameter 'mint' with schema description 'Token mint address (base58)' is sufficient. Schema coverage is 100%, so description adds no extra meaning beyond what schema already provides.
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 clearly states it returns 'first non-deployer early buyers for a token, enriched with PnL, KOL identity, and bot flags,' with specific plan-based outcomes (PRO/ULTRA/BASIC). This distinguishes it from sibling tools like KOL analysis or alerts.
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 implies usage by token mint address and indicates plan limitations (BASIC returns 403), but does not explicitly state when to prefer this over alternatives like madeonsol_token_buyer_quality or madeonsol_token_flow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_token_getARead-onlyIdempotent
Comprehensive per-mint snapshot: price (VWAP), market cap, 24h volume, deployer reputation, KOL smart-money activity, first_seen_at + age_seconds, and blacklist status — all in one call. ULTRA adds individual KOL wallet addresses in top_buyers[].
| Name | Required | Description | Default |
|---|---|---|---|
| mint | Yes | Token mint address (base58) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, open-world, and not destructive. The description adds behavioral context by listing the specific data returned (e.g., VWAP, deployer reputation, KOL activity) and mentions an 'ULTRA' feature for KOL wallet addresses, enhancing transparency beyond annotations.
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 sentences efficiently convey the tool's purpose and key data fields, with critical details front-loaded. No superfluous words; every sentence adds value.
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?
Given the simple input (single mint address) and lack of output schema, the description adequately covers expected return fields and the optional ULTRA addition. Missing details on error responses or pagination, but these are unlikely given the tool's nature.
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 parameter 'mint' described as 'Token mint address (base58)'. The description reinforces that the tool operates per-mint but adds no new semantic information beyond what the schema provides.
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 clearly states 'Comprehensive per-mint snapshot' and enumerates specific data fields (price, market cap, volume, etc.), distinguishing it from sibling tools that focus on specific aspects (e.g., madeonsol_token_candles for candlestick data, madeonsol_token_risk for risk).
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 description implies use for a broad overview of a token's metrics but does not explicitly specify when to use this tool instead of specialized siblings like madeonsol_token_flow or madeonsol_token_buyer_quality. No 'when not to use' or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_tokens_batch_buyer_qualityARead-onlyIdempotent
Bulk buyer-quality scoring for up to 50 mints in one call. Shares the 5-min LRU cache with the single-mint endpoint — already-warm mints return at ~zero cost. Response includes cache_hits counter.
| Name | Required | Description | Default |
|---|---|---|---|
| mints | Yes | 1–50 base58 Solana token mints |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive behavior. The description adds valuable context about the 5-minute LRU cache shared with the single-mint endpoint and the cache_hits counter in the response, enhancing transparency beyond annotations.
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 description is concise with two sentences, front-loading the core purpose. Every sentence provides specific value without 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?
The description covers purpose, caching behavior, and a response detail (cache_hits counter). However, it does not specify the structure of the scoring output, which could be inferred but isn't explicitly stated. Given the simplicity of the tool, this is a minor gap.
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 a clear description of the 'mints' parameter. The description does not add new semantic meaning beyond what the schema provides, so a baseline score of 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 clearly states 'Bulk buyer-quality scoring for up to 50 mints in one call.' It specifies the verb (scoring) and resource (mints), and distinguishes itself from the sibling single-mint endpoint by emphasizing bulk usage.
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 description implies when to use this tool (when scoring multiple mints up to 50) and mentions the shared cache with the single-mint endpoint, suggesting efficiency for warm mints. However, it doesn't explicitly state alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_tokens_listARead-onlyIdempotent
Filtered, sortable token directory. Browse all tracked Solana tokens by market-cap band, liquidity floor, recent-activity window, primary DEX, authority/safety flags, and computed 1h volume / MEV-share / MC-change deltas. Default min_liq=2000 skips phantom-MC dust (low-liquidity pools producing absurd VWAP×supply products) — pass min_liq=0 to opt out. Computed filters (min_volume_1h_usd, max_mev_share_pct, mc_change_1h_min_pct, mc_change_1h_max_pct) over-fetch and post-filter — pagination.post_filtered=true on the response means page size may be < limit. PRO+ only.
| Name | Required | Description | Default |
|---|---|---|---|
| min_mc | No | Minimum market cap in USD | |
| max_mc | No | Maximum market cap in USD | |
| min_liq | No | Minimum quote-side liquidity in USD (default 2000 — pass 0 to opt out of phantom-MC filter) | |
| active_h | No | Only tokens with a trade in the last N hours | |
| primary_dex | No | Filter by primary DEX | |
| authority_revoked | No | Only tokens whose mint+freeze authority is revoked | |
| exclude_token2022 | No | Exclude Token-2022 mints (transfer-fee / hook risk) | |
| min_lp_burnt_pct | No | Minimum % of LP supply burned (0-100) | |
| min_volume_1h_usd | No | Minimum trailing 1h volume in USD (post-filter — may shrink page size) | |
| max_mev_share_pct | No | Maximum MEV-share % of 1h volume (post-filter) | |
| mc_change_1h_min_pct | No | Minimum 1h MC change % (post-filter; negative allowed) | |
| mc_change_1h_max_pct | No | Maximum 1h MC change % (post-filter) | |
| sort | No | Sort axis (default mc_desc) | |
| limit | No | Page size (max 100) | |
| offset | No | Pagination offset |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare it read-only, idempotent, non-destructive, and open world. The description goes beyond by detailing the over-fetching mechanism for computed filters, that pagination.post_filtered=true indicates page size may be smaller than limit, and explains the rationale behind the min_liq default. No contradictions with annotations.
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 description is concise, starting with a clear one-line summary. It efficiently lists all filter types and behaviors in two sentences. While comprehensive, it could be slightly more structured (e.g., bullet points) but is not wasteful.
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 could explain the full response structure. It mentions pagination behavior and computed deltas but does not specify what fields each token object contains. An agent might need to infer the common token schema from other tools. This is a moderate gap.
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?
All 15 parameters have descriptions in the schema (100% coverage). The description adds value by explaining the default min_liq, the over-fetching behavior for computed filters, and the default sort axis. It clarifies the meaning of 'phantom-MC dust' and provides context for using filters together.
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 clearly identifies it as a filtered, sortable token directory for Solana tokens, listing specific filters and defaults. It distinguishes from siblings like madeonsol_token_get (single token) and madeonsol_discovery (likely different criteria) by focusing on broad directory browsing with advanced filtering.
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 description provides usage guidance on the default min_liq=2000 (to avoid phantom-MC dust) and explains the over-fetching and post-filtering behavior. It tells users to pass min_liq=0 to opt out. However, it does not explicitly contrast this tool with other token listing siblings like madeonsol_discovery or madeonsol_kol_hot_tokens.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_wallet_tracker_addA
Add a Solana wallet to your watchlist. Returns 409 if already tracked or limit reached.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet_address | Yes | Solana wallet address (base58) to track | |
| label | No | Optional human-readable label for this wallet |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate not read-only and not destructive. The description adds behavioral detail by mentioning the 409 conflict response for duplicates or limit reached, which is beyond annotation info.
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 description is a single sentence that conveys the essential information with no wasted words.
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 add tool without an output schema, the description covers the primary action and a notable error case. It does not describe the success response, but the annotations provide safety context.
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%, so the schema already describes both parameters. The description adds no additional meaning beyond what the schema provides.
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 clearly states the action ('Add a Solana wallet to your watchlist') with a specific verb and resource, and distinguishes from sibling tools like remove and summary.
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 description implies usage for adding wallets but lacks explicit guidance on when to use this vs alternatives like wallet_tracker_remove. The mention of 409 provides some context on limits but no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_wallet_tracker_removeADestructiveIdempotent
Remove a wallet from your watchlist.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet_address | Yes | Solana wallet address to remove from watchlist |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and idempotentHint=true. The description does not add behavioral context beyond stating the action, such as being irreversible or what happens if the wallet is not in the list. It is adequate but not enriching.
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 description is a single, front-loaded sentence with no unnecessary words. Every part is essential and earned its place.
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 removal tool with no output schema, the description should explain the result (e.g., wallet is no longer tracked) or any side effects. It fails to provide this, leaving the agent to infer outcomes.
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 single parameter 'wallet_address' is fully described in the schema (100% coverage). The description does not add additional semantic meaning beyond what the schema provides, so baseline score of 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 'Remove a wallet from your watchlist' clearly states the verb (remove), resource (wallet), and context (from watchlist). It effectively distinguishes from the sibling tool 'madeonsol_wallet_tracker_add' which performs the opposite operation.
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 description implies usage when a user wants to stop tracking a wallet, but it lacks explicit guidance on prerequisites (e.g., wallet must be in watchlist) or when not to use it. No alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_wallet_tracker_summaryARead-onlyIdempotent
Per-wallet stats: swap counts, SOL bought/sold, and last activity time across your watchlist.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time window for stats | 7d |
| wallet | No | Filter to a specific wallet address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive. The description adds that it returns specific stats, but does not disclose other behavioral traits like rate limits or pagination. With strong annotation coverage, a score of 3 is appropriate.
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?
Single sentence, front-loaded with key purpose ('Per-wallet stats'), and no redundant information. Every word adds value.
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?
Given annotations, full schema coverage, and no output schema, the description sufficiently covers the tool's purpose and return data. Could mention watchlist context more explicitly, but overall complete for a simple non-destructive tool.
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 parameter descriptions already explain 'period' (time window) and 'wallet' (filter). The description does not add new meaning beyond what schema provides, so baseline score of 3 is correct.
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?
Description clearly states the tool returns per-wallet stats (swap counts, SOL bought/sold, last activity) for wallets on watchlist. It uses specific verb (implied 'get') and resource (watchlist wallet stats), distinguishing it from other wallet tools like wallet_pnl or wallet_positions.
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 description implies usage for watchlist wallets, but does not explicitly state when to use this versus alternatives like wallet_stats or wallet_tracker_trades. No exclusion criteria or when-not-to-use guidance is provided, though context signals help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_wallet_tracker_tradesARead-onlyIdempotent
Historical swap and transfer events for all your watched wallets. BASIC: truncated wallets, no tx_signature.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | No | Filter to a specific wallet address | |
| action | No | Filter by action type | |
| event_type | No | Filter by event type: swap (token trade) or transfer (SOL moved) | |
| limit | No | Max results (1–200) | |
| before | No | Pagination cursor: block_time of the last event from previous page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral info beyond annotations: data is truncated and no tx_signature is included. Annotations already indicate read-only, open-world, idempotent, non-destructive, so no contradiction. The truncation disclosure is helpful.
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 description is extremely concise with two sentences that capture the core purpose and a key limitation. No unnecessary words or repetition.
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 tool with good schema and annotations, the description is adequate but lacks details on what 'truncated wallets' means, pagination behavior beyond the before parameter, and expected output structure (no output schema). Could be slightly more comprehensive.
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 input schema has 100% coverage with parameter descriptions, so the description does not need to add much. The tool description only adds a general limitation (truncated data), not per-parameter detail. 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 clearly states the tool returns historical swap and transfer events for watched wallets, and it adds a specific limitation note (BASIC: truncated wallets, no tx_signature), distinguishing it from similar tools like madeonsol_wallet_trades.
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 description implies usage context (for watched wallets) but does not explicitly state when to use this tool versus alternatives like madeonsol_wallet_trades or other wallet tools. No when-not or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
madeonsol_wallet_tracker_watchlistARead-onlyIdempotent
List your tracked wallets with labels and remaining watchlist capacity. BASIC=10, PRO=50, ULTRA=100.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false. The description adds specific behavioral context: it returns labels and capacity limits (BASIC=10, PRO=50, ULTRA=100), which is beyond the annotations and helps the agent understand output scope.
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 description is a single, front-loaded sentence with no wasted words. It efficiently conveys the tool's purpose and a key detail (plan capacities).
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?
Given zero parameters and no output schema, the description is complete: it tells the agent what the tool does, what it returns (wallets with labels and capacity), and the capacity limits per plan. No further information is needed for this simple list operation.
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 input schema has zero parameters, and schema coverage is 100%. The description adds meaning by specifying that the output includes labels and remaining watchlist capacity, which is not detailed elsewhere.
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 clearly states 'List your tracked wallets with labels and remaining watchlist capacity.' This is a specific verb and resource, and it distinguishes the tool from siblings like wallet_tracker_add and wallet_tracker_remove by focusing on listing existing watchlist entries.
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 description implies usage for viewing tracked wallets but does not explicitly state when to use this tool versus alternatives like wallet_tracker_summary or other list tools. It provides no guidance on prerequisites or exclusions.
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.
51 tool updates
v1.7.4- First observed
madeonsol_alpha_leaderboard - First observed
madeonsol_alpha_linked - First observed
madeonsol_alpha_wallet - First observed
madeonsol_coordination_alerts_create - First observed
madeonsol_coordination_alerts_delete - First observed
madeonsol_coordination_alerts_get - First observed
madeonsol_coordination_alerts_list - First observed
madeonsol_coordination_alerts_update - First observed
madeonsol_copytrade_create - First observed
madeonsol_copytrade_delete - First observed
madeonsol_copytrade_get - First observed
madeonsol_copytrade_list - First observed
madeonsol_copytrade_signals - First observed
madeonsol_copytrade_update - First observed
madeonsol_create_webhook - First observed
madeonsol_delete_webhook - First observed
madeonsol_deployer_alerts - First observed
madeonsol_deployer_trajectory - First observed
madeonsol_discovery - First observed
madeonsol_first_touch_subscriptions_create - First observed
madeonsol_first_touch_subscriptions_delete - First observed
madeonsol_first_touch_subscriptions_get - First observed
madeonsol_first_touch_subscriptions_list - First observed
madeonsol_first_touch_subscriptions_update - First observed
madeonsol_kol_alerts_recent - First observed
madeonsol_kol_compare_wallets - First observed
madeonsol_kol_coordination - First observed
madeonsol_kol_feed - First observed
madeonsol_kol_first_touches - First observed
madeonsol_kol_hot_tokens - First observed
madeonsol_kol_leaderboard - First observed
madeonsol_kol_pairs - First observed
madeonsol_kol_pnl - First observed
madeonsol_kol_timing - First observed
madeonsol_kol_token_entry_order - First observed
madeonsol_kol_trending_tokens - First observed
madeonsol_list_webhooks - First observed
madeonsol_me - First observed
madeonsol_stream_token - First observed
madeonsol_test_webhook - First observed
madeonsol_token_batch - First observed
madeonsol_token_buyer_quality - First observed
madeonsol_token_cap_table - First observed
madeonsol_token_get - First observed
madeonsol_tokens_batch_buyer_quality - First observed
madeonsol_tokens_list - First observed
madeonsol_wallet_tracker_add - First observed
madeonsol_wallet_tracker_remove - First observed
madeonsol_wallet_tracker_summary - First observed
madeonsol_wallet_tracker_trades - First observed
madeonsol_wallet_tracker_watchlist
TDQS
Scored across 51 tools
The 51 tools are grouped by domain (alpha, coordination, copytrade, webhook, deployer, discovery, first_touch, kol, token, wallet_tracker) with distinct purposes within each group. For instance, kol_feed, kol_leaderboard, kol_pnl, and kol_timing each target different aspects of KOL analysis. CRUD operations for alerts, subscriptions, and webhooks are clearly separated. No two tools appear to do the same thing.
All tools follow the prefix 'madeonsol_' followed by lowercase snake_case names that describe the action and resource (e.g., madeonsol_kol_leaderboard, madeonsol_token_get). The pattern is strictly consistent, with no mixing of conventions like camelCase or abbreviations. Even multi-word names like 'madeonsol_first_touch_subscriptions_create' maintain uniformity.
With 51 tools, the server far exceeds the typical 3-15 range for a well-scoped MCP server. While the domain of Solana memecoin intelligence is broad, the count feels excessive for a single server, including many CRUD operations and multiple similar endpoints (e.g., 6 subscription tools). It would benefit from consolidation or modularization.
The toolset covers the full lifecycle of the domain: KOL discovery, analysis, alerts, copy-trading, webhook management, token data, wallet tracking, and account inspection. There are no obvious missing operations—CRUD is present for all managed resources, and even a discovery endpoint is provided. The surface is well-rounded for its stated purpose.
Maintenance
Related MCP Connectors
KOL and smart money wallet tracking on 5 chains: live trades, PnL, signals, Jito bundle detection.
Solana address risk grades and token scans for AI agents. Pay-per-call via x402 (USDC on Base).
Pay-per-call Solana data for AI agents over x402: token, account, tx, trending. No signup, no key.
Pre-trade token safety checks for AI agents on Solana and Base. x402 USDC per call, no key.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceAI-powered Solana DEX smart money signals. Detects whale/dolphin accumulation, divergence patterns, and market phase across 170+ tokens. Pay-per-call via x402 USDC micropayments.54 npm1MIT
- AlicenseNot gradedqualityDmaintenanceSolana on-chain intelligence API — token scans, wallet PnL, bundle detection, fresh wallets, dev profiling. MCP server for Claude, Cursor & AI agents. Live PumpFun/Raydium streams1MIT
- FlicenseNot gradedqualityAmaintenanceKOL, smart money & whale wallets API on Solana, BNB, Base, ETH: Wallet tracker, Leaderboard-
- AlicenseAqualityAmaintenanceOn-chain Solana token safety for trading agents — traces coordinated wallet funding, same-block Jito bundles, serial-rug deployers and live coordinated dumps into one Exit-Liquidity Risk verdict before a swap. Free tier, then $0.02 USDC/query via x402.1222 npm1MIT