yieldsentinel
Server Details
Policy check on a described yield position. Complement to yieldhunter. Research only.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- agentsherpa/yieldsentinel-connect
- GitHub Stars
- 0
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.6/5 across 2 of 2 tools scored.
check_position is the only functional policy-evaluation operation, while health is a liveness/capability check. There is no ambiguous overlap or boundary between the two tools.
check_position follows a clear verb_noun pattern, but health uses a bare noun with no verb, so the naming pattern is not fully consistent. The names are still readable and not chaotic.
Two tools is borderline and slightly thin for the 3-15 range. For a focused read-only policy-checking service, it is acceptable, but it is a minimal surface.
The core policy-checking workflow is covered by check_position with presets, thresholds, and clear verdict handling. The main missing capability is inspecting policy presets or the allowlist before checking, but the core operation has no dead ends.
Available Tools
2 toolscheck_positionCheck position (research policy)ARead-onlyIdempotentInspect
Evaluate a described stablecoin yield position against a research policy (pull).
Always pass your policy rules (or a preset). Without a policy, no meaningful check is possible — the verdict will be review/unknown, never ok.
Pass a yieldhunter opportunity id (poolId / opportunityId / id) or protocolSlug. Required for a real check: policyPreset (treasury-conservative | balanced-research | rwa-selective) and/or minScore / maxRewardShare / excludeCategories / maxExitRisk / requireCurated. Presets: treasury-conservative | balanced-research | rwa-selective. rwa-selective does not exclude RWA but is not a free pass (YS policy allowlist + higher bar). requireCurated uses the Yieldsentinel policy allowlist (curated.json), not yieldhunter scoring priors. Scoring ≠ policy approval.
Fetches live yieldhunter research (score, APY, TVL, category, rewardShare, exitRisk) and curated flags, then returns a PolicyVerdict plus A2H (summary, suggestedNextSteps, legend).
Incomplete or missing data is review/unknown — never a silent ok. A verdict is not an exit signal or execution order. Research only — never holds keys.
Example: { "poolId": "43641cf5-a92e-416b-bce9-27113d3c0db6", "policyPreset": "treasury-conservative", "notionalUsd": 10000 }
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Same as yieldhunter opportunities[].id. | |
| asset | No | Stablecoin symbol, e.g. "USDC". | |
| chain | No | ethereum | base | arbitrum | |
| poolId | No | yieldhunter opportunities[].id (DefiLlama pool UUID). Example: "43641cf5-a92e-416b-bce9-27113d3c0db6" | |
| minScore | No | Minimum compositeRiskAdjusted (0–100). | |
| minNetApy | No | Minimum net APY estimate. | |
| minTvlUsd | No | Minimum pool TVL in USD. | |
| horizonDays | No | Holding horizon in days for net-yield context (default 30). | |
| maxExitRisk | No | Cap on yieldhunter exitRisk heuristic: low | medium | high. Unknown or above the cap → review. | |
| notionalUsd | No | Research notional in USD (size hint only). Example: 10000 | |
| policyPreset | No | Policy preset: "treasury-conservative" | "balanced-research" | "rwa-selective". treasury-conservative excludes RWA; rwa-selective allows RWA but is not a free pass (YS policy allowlist + higher bar). | |
| protocolSlug | No | Protocol slug, e.g. "aave-v3". | |
| riskAppetite | No | conservative | balanced | aggressive (research posture only). | |
| opportunityId | No | Alias for poolId / id. | |
| maxRewardShare | No | Maximum incentive share of gross APY (0–1). | |
| requireCurated | No | If true, the protocol/pool must be on the Yieldsentinel policy allowlist (curated.json), not yieldhunter scoring priors. Missing allowlist entry → review. Scoring ≠ policy approval. | |
| minProtocolScore | No | Minimum yieldhunter protocol risk score (0–100, higher = safer). | |
| excludeCategories | No | Exclude categories, e.g. ["rwa"]. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Even with annotations declaring readOnlyHint, openWorldHint, idempotentHint, and non-destructive, the description adds substantial behavioral context: live yieldhunter data fetching, 'Research only — never holds keys', 'verdict is not an exit signal or execution order', and incomplete data always resolving to review/unknown never silent ok. 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?
The description is dense but reasonably organized: purpose, prerequisites, identifiers, required policy inputs, presets, behavior, caveats, and an example. It is front-loaded with the core purpose. Minor redundancy exists ('Scoring ≠ policy approval' appears twice; the 'never silent ok' point is made twice), but overall every major section earns its place for an 18-parameter tool.
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 18 parameters, no output schema, and only one sibling, the description is quite complete: it names the return payload (PolicyVerdict plus A2H summary/suggestedNextSteps/legend), explains missing data behavior, and provides a concrete example. It does not enumerate possible verdict values or provide an output example, but the essential call/invocation context is covered.
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 adds cross-parameter meaning beyond individual schema entries: it explains that policyPreset and/or thresholds are 'Required for a real check', clarifies rwa-selective is not a free pass, defines requireCurated as using the Yieldsentinel allowlist, and maps aliases for poolId/opportunityId/id. This exceeds baseline while not exhaustively describing all 18 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 opens with a specific verb and resource: 'Evaluate a described stablecoin yield position against a research policy'. It clearly identifies the tool's scope (research/policy check) and distinguishes it from the 'health' sibling by emphasizing policy, verdicts, and research-only behavior rather than system health.
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 gives detailed usage conditions: pass a policy preset or explicit thresholds, pass an opportunity id/protocolSlug, and notes that without a policy the verdict is always review/unknown. It says the tool is research-only and not an execution order, which prevents misuse. However, it does not explicitly contrast with the sibling 'health' tool or state when to prefer this tool over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
healthHealthARead-onlyIdempotentInspect
Liveness and capability check for yieldsentinel (yieldsentinel.eth).
Returns service status, schemaVersion, policyVersion, feature flags, and the list of available tools.
Use this first to verify connectivity, then call check_position with policyPreset treasury-conservative | balanced-research | rwa-selective (or explicit thresholds). Research estimates only — non-custodial; never holds keys or executes transactions.
Example input: {}
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, destructiveHint, and idempotentHint, lowering the burden. The description adds safety-relevant context not present in the annotations, including that the tool returns system fields and that the service is research-only, non-ccustodial, never holds keys, or executes transactions. This goes beyond a bare readOnly flag. While this statement applies broadly to the service, it remains useful behavioral context for the agent.
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 front-loaded with the core purpose, followed by return value, usage sequencing, and risk context. Every sentence earns its place. The `Example input: {}` line is a low-cost confirmation. The structure is effective size and no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool and the rich annotations, the description is fully sufficient. It tells the agent what it returns, when to call it, and explicitly routes to the sibling check_position tool. Even without an output schema, the description lists the relevant fields and is clear that no arguments are needed.
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 zero parameters in the input schema, there is nothing to explain. The description reinforces this by showing 'Example input: {}', confirming the no-argument contract. Since schema description coverage is 100% and there are no params, the baseline of 4 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 opens with a specific verb and resource: it is a liveness and capability check for yieldsentinel. It then enumerates the exact returned fields (service status, schemaVersion, policyVersion, feature flags, available tools). It additionally differentiates from the sibling check_position by instructing that this tool should be used first for connectivity verification.
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?
Contains explicit operational guidance: 'Use this first to verify connectivity, then call check_position...' This tells the agent exactly when in the sequence to invoke it relative to the sibling. It also suggests a reasonable default (policyPreset) while allowing explicit thresholdes, preventing arbitrary selection. No misleading or missing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseAqualityAmaintenanceDeterministic risk governance for crypto trading agents. 5-level policy engine with position sizing, leverage limits, and trade blocking. One tool: get_risk_policy. Supports BTC and ETH.1191MIT
- AlicenseNot gradedqualityAmaintenanceProvides risk-weighted yield signals and MOVE/HOLD decisions for ETH staking and USDC/WETH lending, accessed via x402 payment protocol with verifiable signed responses.MIT
- FlicenseAqualityCmaintenanceEnables AI agents to discover verifiable DeFi yield opportunities, generate algorithmic portfolio plans, and track cryptographic proof receipts, bridging LLMs with blockchain yield protocols.9
- AlicenseNot gradedqualityBmaintenanceThe verifiable risk engine for autonomous agents: deterministic, self-verifying financial calculations that an agent can delegate and prove. It covers liquidation and funding, position sizing and risk of ruin, options Greeks and margin, LP divergence, treasury concentration and depeg, execution quality checks, plus intelligence on options, DeFi, prediction markets, and transaction safety analysis.71MIT