Skip to content

feat: add new tools and sync mcp changes#8

Open
Ishita-02 wants to merge 3 commits intomainfrom
eng-1948
Open

feat: add new tools and sync mcp changes#8
Ishita-02 wants to merge 3 commits intomainfrom
eng-1948

Conversation

@Ishita-02
Copy link
Copy Markdown
Collaborator

@Ishita-02 Ishita-02 commented Apr 20, 2026

Summary by CodeRabbit

  • New Features

    • Added tools for reward-rate history, TVL history, risk checks, action queries, transaction submit/status, and network/provider discovery; added partial-claim support in action management.
  • Documentation

    • Switched yield discovery to server-side sorting and multi-network queries; expanded filters (types, networks, search, sort, etc.) and increased pagination defaults.
    • Updated workflows: mandatory submit-and-poll transaction lifecycle, APY/TVL trend and risk-check flows, and multi-network intent guidance (unified vs per-network).

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 20, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: bb078a23-589b-45b6-9416-95156d600789

📥 Commits

Reviewing files that changed from the base of the PR and between e63d96d and ba9e384.

📒 Files selected for processing (2)
  • yield-agentkit-plugin/yield-agentkit/references/key-rules.md
  • yield-agentkit-skills/skills/yield-agentkit-moonpay/references/key-rules.md
✅ Files skipped from review due to trivial changes (2)
  • yield-agentkit-skills/skills/yield-agentkit-moonpay/references/key-rules.md
  • yield-agentkit-plugin/yield-agentkit/references/key-rules.md

📝 Walkthrough

Walkthrough

Adds nine MCP tools (history, risk, action queries, transaction tracking, networks/providers); converts single-network/type filters to multi-select/sort/search on yields; and mandates submit_hash + get_transaction polling after broadcasts across skills and docs. (≤50 words)

Changes

Cohort / File(s) Summary
Plugin core
yield-agentkit-plugin/yield-agentkit/SKILL.md, yield-agentkit-plugin/yield-agentkit/references/output-formats.md, yield-agentkit-plugin/yield-agentkit/references/key-rules.md
Introduced new tools (yields_get_reward_rate_history, yields_get_tvl_history, yields_get_risk, actions_get, actions_get_all, submit_hash, get_transaction, networks_get_all, providers_get_all); changed yields_get_all params/schema and multi-network handling; adjusted yields_get_balances endpoint mapping.
Generic yield-agentkit skill
yield-agentkit-skills/skills/yield-agentkit/SKILL.md, yield-agentkit-skills/skills/yield-agentkit/references/output-formats.md
Added new tools and signatures; updated yields filtering to networks/types and server-side sort; added APY/TVL/risk workflows and multi-network intent guidance; inserted submit_hash/get_transaction lifecycle steps.
MoonPay skill
yield-agentkit-skills/skills/yield-agentkit-moonpay/SKILL.md, .../references/input-format.md, .../references/output-formats.md, .../references/key-rules.md
Expanded tool list and input/output docs to include new tools; switched discovery to sort: "rewardRateDesc" and networks array; added amount? to actions_manage; required submit_hash + polling after broadcasts; updated pagination and display examples.
Privy skill — reference consolidation
yield-agentkit-skills/skills/yield-agentkit-privy/SKILL.md, .../references/yield-input-format.md, .../references/yield-output-format.md
Replaced legacy MCP reference with consolidated input/output docs; replaced singular network/type with arrays and added many new tool schemas and pagination limits; switched references to yield-input-format.md.
Privy skill — flows & wallets
.../references/privy-transactions.md, .../references/semi-autonomous.md, .../references/privy-wallets.md
Inserted mandatory submit_hash(actionId, hash) after transaction confirmation in multi-step and semi-autonomous flows; updated per-step control flow. Added List Wallets branching and owner_id→wallet type mapping.
Privy skill — removed legacy file
yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-mcp-tools.md
Deleted legacy MCP tools reference (content migrated into consolidated input docs).

Sequence Diagram(s)

sequenceDiagram
    participant Agent
    participant MCP as MCP Server
    participant Chain as Blockchain/Tx API

    Agent->>MCP: actions_enter(yieldId, address, amount)
    MCP->>Chain: create unsigned transaction
    Chain-->>MCP: transactionId + unsigned tx
    MCP-->>Agent: transaction (transactionId, unsigned tx)

    Agent->>Agent: sign tx
    Agent->>MCP: broadcast signed tx
    MCP->>Chain: broadcast
    Chain-->>MCP: txHash + BROADCASTED
    MCP-->>Agent: broadcast result (txHash, transactionId)

    Agent->>MCP: submit_hash(transactionId, txHash)
    MCP->>Chain: record/link hash
    Chain-->>MCP: ack
    MCP-->>Agent: hash accepted

    loop poll until terminal
        Agent->>MCP: get_transaction(transactionId)
        MCP->>Chain: check status
        Chain-->>MCP: status (BROADCASTED / CONFIRMED / FAILED)
        MCP-->>Agent: status
    end
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Suggested reviewers

  • Philippoes
  • apurvmishra
  • jdomingos
  • dnehl

"🐰 New tools arrive with a hop and a cheer,
hashes submitted, confirmations draw near.
Networks in arrays, yields sorted just right,
MoonPay and Privy keep actions in sight,
Hop—now confirmed—onward we steer!"

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'feat: add new tools and sync mcp changes' accurately describes the main changes in the PR, which involve adding new MCP tools (9 new tools) and updating existing tool signatures/documentation across multiple skill files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch eng-1948

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-output-format.md (1)

85-87: ⚠️ Potential issue | 🟡 Minor

Align ETH/LST min-TVL threshold with other output-format docs.

This file uses $500K for ETH/LST min TVL, while the other updated output-format references in this PR use $1M. Please unify this value to avoid inconsistent filtering behavior across skills.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-output-format.md`
around lines 85 - 87, The ETH / LSTs table row currently lists a min-TVL of
$500K; update that value to $1M to match the other output-format references in
this PR so filtering is consistent—specifically change the "ETH / LSTs (wETH,
stETH, rETH, etc.) | $500K" entry to use "$1M".
yield-agentkit-skills/skills/yield-agentkit-privy/SKILL.md (1)

277-297: ⚠️ Potential issue | 🟡 Minor

Add a language identifier to this fenced code block.

markdownlint warning MD040 is valid here; please label the block (e.g., text or json) for lint compliance.

Suggested fix
-```
+```text
 1. Take unsignedTransaction from the MCP response.
 ...
 6. Move to next transaction (if any)
</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @yield-agentkit-skills/skills/yield-agentkit-privy/SKILL.md around lines 277

  • 297, The fenced code block containing the numbered steps starting with "1.
    Take unsignedTransaction from the MCP response." needs a language identifier to
    satisfy markdownlint MD040; edit that block's opening fence from to something liketext (or json if you prefer) so the block is labelled, e.g., replace with ```text for the block that lists steps 1–6 and save the
    updated SKILL.md.

</details>

</blockquote></details>

</blockquote></details>
🧹 Nitpick comments (1)
yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-input-format.md (1)

251-263: Consider adding the "Common Mistakes" section to other input format docs.

The "Common Mistakes" section (lines 251-263) is a valuable addition that helps prevent parameter migration errors (e.g., networknetworks, typetypes). Consider adding an equivalent section to yield-agentkit-skills/skills/yield-agentkit-moonpay/references/input-format.md for consistency and improved developer experience across all connector documentation.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-input-format.md`
around lines 251 - 263, Add the same "Common Mistakes" table from the Privy
input-format doc into the Moonpay connector's input-format.md: create a "Common
Mistakes" section containing the same rows (actions_enter vs yields_get,
actions_manage vs yields_get_balances, never modify unsignedTransaction,
passthrough must come from balances, amounts are human-readable, always call
submit_hash after broadcast, use networks array not network, use types array not
type). Insert it in the same logical spot as in the Privy doc (near
examples/parameter guidance), verify wording matches existing style, and adjust
any connector-specific terms if necessary so the table integrates consistently
with yield-agentkit-moonpay's documentation.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@yield-agentkit-plugin/yield-agentkit/SKILL.md`:
- Line 57: Change the contradictory guidance about multi-network usage: clarify
the behavior of the `networks` parameter and when to use single-array vs
parallel calls by updating the text around the `networks` description (currently
the sentence that reads "Never make multiple calls per network — pass all in one
array") to say something like: pass multiple network slugs in the `networks`
array for unified searches and single-call aggregation, but for fair
cross-network comparisons (see the Intelligence Notes and examples) invoke
separate parallel calls—also add a pointer to `networks_get_all` for name
resolution; ensure this clarification aligns with the Intelligence Notes
guidance and output-formats examples so readers know when to use each approach.

In
`@yield-agentkit-skills/skills/yield-agentkit-moonpay/references/output-formats.md`:
- Around line 185-196: The fenced code blocks in output-formats.md (e.g., the
block starting with "📋 Action History · 0x742d…f44e" and the other examples at
lines ~211-221, 229-239, 249-256) are missing a language tag which breaks MD040
linting; update each triple-backtick fence to include a language like "text"
(i.e., change ``` to ```text) for every example block so the markdown linter
recognizes them as code/text blocks while preserving the block contents.
- Around line 59-67: Add a blank line before and after each Markdown table under
the network subheadings (e.g., the "🔵 Ethereum" and "🟠 Arbitrum" sections) so
the table blocks that begin with the header row "| # | Protocol | Vault | APY |
TVL | Type | Lockup | Cooldown | Min |" are separated by an empty line from the
surrounding text/headings; update the block around the Ethereum table and any
subsequent tables (like Arbitrum) to ensure there is one blank line above the
table and one blank line below it to satisfy MD058.

In `@yield-agentkit-skills/skills/yield-agentkit-moonpay/SKILL.md`:
- Around line 70-72: The documentation contradicts itself about network calls:
update the SKILL.md guidance so it consistently states whether to call the API
once with networks as an array (e.g., networks: ["base"]) or to perform parallel
per-network requests for fair comparisons; specifically, choose and document one
approach and update both the bullet that mentions passing networks and the
intelligence note referencing per-network parallel calls (also the duplicate at
the later mention of limit: 20). If you opt for server-side multi-network
queries, change the intelligence note to forbid per-network parallel calls and
explain using networks: ["..."] with sort: "rewardRateDesc" and default limit:
20; if you opt for fairness via per-network comparison, change the networks
bullet to instruct making parallel per-network requests and note
merging/normalizing results before client-side sorting with sort:
"rewardRateDesc" and limit: 20.

In
`@yield-agentkit-skills/skills/yield-agentkit-privy/references/privy-transactions.md`:
- Around line 150-156: The docs currently instruct polling to CONFIRMED then
calling submit_hash, which contradicts the intended flow; update the transaction
lifecycle to call submit_hash(actionId, hash) immediately after broadcast (for
each stepIndex/nonce) and then poll get_transaction until CONFIRMED, ensuring
references to submit_hash, get_transaction, actionId, and hash are used to
locate and correct the ordering in the TX stepIndex examples and explanatory
text.

In `@yield-agentkit-skills/skills/yield-agentkit/SKILL.md`:
- Line 75: Update the contradictory guidance around the networks parameter by
clarifying the two supported strategies: (1) single-call aggregation — pass an
array to the `networks` parameter (resolved via `networks_get_all` if needed)
for efficiency when results can be combined, and (2) per-network parallel calls
— make one call per network when you need strict, isolated "fair comparison"
timing/consistency as described in the Intelligence Notes; revise the sentence
that says "Never make multiple calls per network — pass all in one array" to
explain when each approach is appropriate and mirror the same clarification in
the other SKILL.md (`yield-agentkit-plugin/yield-agentkit/SKILL.md`) so both
files reflect the two-strategy model.

---

Outside diff comments:
In
`@yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-output-format.md`:
- Around line 85-87: The ETH / LSTs table row currently lists a min-TVL of
$500K; update that value to $1M to match the other output-format references in
this PR so filtering is consistent—specifically change the "ETH / LSTs (wETH,
stETH, rETH, etc.) | $500K" entry to use "$1M".

In `@yield-agentkit-skills/skills/yield-agentkit-privy/SKILL.md`:
- Around line 277-297: The fenced code block containing the numbered steps
starting with "1. Take unsignedTransaction from the MCP response." needs a
language identifier to satisfy markdownlint MD040; edit that block's opening
fence from ``` to something like ```text (or ```json if you prefer) so the block
is labelled, e.g., replace ``` with ```text for the block that lists steps 1–6
and save the updated SKILL.md.

---

Nitpick comments:
In
`@yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-input-format.md`:
- Around line 251-263: Add the same "Common Mistakes" table from the Privy
input-format doc into the Moonpay connector's input-format.md: create a "Common
Mistakes" section containing the same rows (actions_enter vs yields_get,
actions_manage vs yields_get_balances, never modify unsignedTransaction,
passthrough must come from balances, amounts are human-readable, always call
submit_hash after broadcast, use networks array not network, use types array not
type). Insert it in the same logical spot as in the Privy doc (near
examples/parameter guidance), verify wording matches existing style, and adjust
any connector-specific terms if necessary so the table integrates consistently
with yield-agentkit-moonpay's documentation.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 9c901f4b-c24e-4562-8a82-83038bc1a235

📥 Commits

Reviewing files that changed from the base of the PR and between 5195544 and bc7bce7.

📒 Files selected for processing (14)
  • yield-agentkit-plugin/yield-agentkit/SKILL.md
  • yield-agentkit-plugin/yield-agentkit/references/output-formats.md
  • yield-agentkit-skills/skills/yield-agentkit-moonpay/SKILL.md
  • yield-agentkit-skills/skills/yield-agentkit-moonpay/references/input-format.md
  • yield-agentkit-skills/skills/yield-agentkit-moonpay/references/output-formats.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/SKILL.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/privy-transactions.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/privy-wallets.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/semi-autonomous.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-input-format.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-mcp-tools.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-output-format.md
  • yield-agentkit-skills/skills/yield-agentkit/SKILL.md
  • yield-agentkit-skills/skills/yield-agentkit/references/output-formats.md
💤 Files with no reviewable changes (1)
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-mcp-tools.md

Comment thread yield-agentkit-plugin/yield-agentkit/SKILL.md Outdated
Comment thread yield-agentkit-skills/skills/yield-agentkit-moonpay/SKILL.md
Comment thread yield-agentkit-skills/skills/yield-agentkit/SKILL.md Outdated
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Duplicate comments (1)
yield-agentkit-skills/skills/yield-agentkit-moonpay/SKILL.md (1)

71-71: ⚠️ Potential issue | 🟡 Minor

Incomplete multi-network strategy guidance.

Line 71 only mentions passing networks as an array but doesn't explain when to use parallel per-network calls. This is incomplete compared to the Intelligence Notes (line 139) which describe two distinct strategies:

  • Unified search: single call with networks: [...]
  • Fair comparison: parallel calls (one per network)

The yield-agentkit/SKILL.md file (line 75) includes both strategies inline. Consider updating line 71 to match that pattern or explicitly reference the Intelligence Notes section for the complete guidance.

Suggested alignment
-- Pass `networks` as an array e.g. `["base"]` 
+- Pass `networks` as an array e.g. `["base"]`. For unified search pass all in one array. For fair cross-network comparison run one call per network in parallel (see Intelligence Notes).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@yield-agentkit-skills/skills/yield-agentkit-moonpay/SKILL.md` at line 71,
Update the brief note about passing `networks` to explain both multi-network
strategies: (1) a unified search using a single call with networks: [...] and
(2) a fair-comparison approach using parallel per-network calls (one call per
network), or alternatively add an explicit pointer to the "Intelligence Notes"
section for full guidance; update the text near the `networks` example to mirror
the pattern used in yield-agentkit/SKILL.md (i.e., mention both strategies and
when to prefer each) and reference the "Intelligence Notes" section if you opt
not to expand inline.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@yield-agentkit-skills/skills/yield-agentkit-moonpay/SKILL.md`:
- Line 71: Update the brief note about passing `networks` to explain both
multi-network strategies: (1) a unified search using a single call with
networks: [...] and (2) a fair-comparison approach using parallel per-network
calls (one call per network), or alternatively add an explicit pointer to the
"Intelligence Notes" section for full guidance; update the text near the
`networks` example to mirror the pattern used in yield-agentkit/SKILL.md (i.e.,
mention both strategies and when to prefer each) and reference the "Intelligence
Notes" section if you opt not to expand inline.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 59d31dcc-4a39-4c13-ba6b-13b317ea5e9a

📥 Commits

Reviewing files that changed from the base of the PR and between bc7bce7 and e63d96d.

📒 Files selected for processing (5)
  • yield-agentkit-plugin/yield-agentkit/SKILL.md
  • yield-agentkit-skills/skills/yield-agentkit-moonpay/SKILL.md
  • yield-agentkit-skills/skills/yield-agentkit-moonpay/references/input-format.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-input-format.md
  • yield-agentkit-skills/skills/yield-agentkit/SKILL.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • yield-agentkit-plugin/yield-agentkit/SKILL.md
  • yield-agentkit-skills/skills/yield-agentkit-privy/references/yield-input-format.md

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant