You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Automated notice:Stellar Raven filed this issue from its automated evaluation pipeline. The issue includes evidence and a public source record. Please verify the live surface before you act.
Finding
The agentic-payments skill teaches MPP Charge mode and MPP Session mode. It does
not teach the MPP discovery layer.
mpp.md builds an mppx server for both modes. The mppx SDK exposes a discovery() call that serves /openapi.json with x-payment-info offers for
each paid route. The file never names that call.
The file also omits the authority rule. MPP treats the discovery document as an
informational hint and treats the runtime 402 Challenge as authoritative for
price, token, network, expiry, and terms. mpp.md mentions "challenge" only as
an SDK event-type string in two code comments.
The two optional aggregators are absent as well: MPPScan and the mpp.dev
services directory, including the read-only https://mpp.dev/mcp/services
surface.
A developer who follows the skill ships a working paid API that no agent can
find. The skill answers "how do I charge" and never answers "how does a paying
agent discover me".
Evidence
The skill read and the specification read both ran on 2026-08-14.
The skill file was read at its pinned commit 812598a8538dc5479196145d2175b4a991bee1d9. Its headings are: "When to use MPP",
"Charge mode: per-request payments", "Session mode: high-frequency off-chain
payments", "Session lifecycle", "Prerequisites", "Server:", "Client:", "Closing
the channel (server-initiated):", "Packages and subpath imports", "Testnet
runbook", and "Common pitfalls". No heading covers discovery.
https://mpp.dev/advanced/discovery supplied every fact above on the same day.
Additional recorded evidence:
2026-08-14 live read of skills.stellar-dev.agentic-payments file:mpp.md at pinned commit 812598a returned 11875 characters with zero matches for "openapi", "x-payment-info", "offers", "MPPScan", "registry", and "discover"
2026-08-14 the only "challenge" matches in that file are SDK event-type string literals on two code-comment lines, not the 402 Challenge authority rule
2026-08-14 live read of https://mpp.dev/advanced/discovery confirms servers publish an OpenAPI 3.1 document at /openapi.json with x-payment-info offers, that MPPScan and the mpp.dev services directory are the two aggregators, and that "Discovery documents are informational hints. The runtime 402 Challenge remains the authoritative source of payment terms."
2026-08-14 the same page states that adding discovery() to an mppx server serves /openapi.json automatically, and mpp.md already teaches mppx server setup
eval round 2026-08-14, main stamp 2026-08-14T03-56-23-variantA, row q-mpp-discovery-and-modes
Recommendation
Add one "Discovery" section to skills/agentic-payments/mpp.md. Keep it short.
It needs four points:
Serve an OpenAPI 3.1 document, commonly at /openapi.json, with x-payment-info offers on each paid operation. Show the mppx discovery() call that generates it.
State that discovery metadata is advisory, and that the runtime 402
Challenge is authoritative for price, token, network, expiry, and terms.
Name MPPScan and the mpp.dev services directory as optional registrations,
and link https://mpp.dev/mcp/services.
State that listing a service in a registry does not verify any client
payment.
Add a matching line to the SKILL.md decision table so a reader selling an API
reaches the discovery step.
Source Record
Raven recorded this finding as sk-016 (skills, discovered 2026-08-14).
Include the finding ID and the resolving issue or pull request.
Include the deployed version or timestamp. Include the smallest live recheck.
Raven verifies the live surface before it sets the finding to fixed-upstream.
An issue closure or merged pull request does not prove the fix.
A separate reviewer repeats the live check before Raven retires the active finding.
Raven keeps a commit-pinned snapshot when one is available.
Note
Automated notice: Stellar Raven filed this issue from its automated evaluation pipeline. The issue includes evidence and a public source record. Please verify the live surface before you act.
Finding
The agentic-payments skill teaches MPP Charge mode and MPP Session mode. It does
not teach the MPP discovery layer.
mpp.mdbuilds anmppxserver for both modes. ThemppxSDK exposes adiscovery()call that serves/openapi.jsonwithx-payment-infooffers foreach paid route. The file never names that call.
The file also omits the authority rule. MPP treats the discovery document as an
informational hint and treats the runtime 402 Challenge as authoritative for
price, token, network, expiry, and terms.
mpp.mdmentions "challenge" only asan SDK event-type string in two code comments.
The two optional aggregators are absent as well: MPPScan and the mpp.dev
services directory, including the read-only
https://mpp.dev/mcp/servicessurface.
A developer who follows the skill ships a working paid API that no agent can
find. The skill answers "how do I charge" and never answers "how does a paying
agent discover me".
Evidence
The skill read and the specification read both ran on 2026-08-14.
The skill file was read at its pinned commit
812598a8538dc5479196145d2175b4a991bee1d9. Its headings are: "When to use MPP","Charge mode: per-request payments", "Session mode: high-frequency off-chain
payments", "Session lifecycle", "Prerequisites", "Server:", "Client:", "Closing
the channel (server-initiated):", "Packages and subpath imports", "Testnet
runbook", and "Common pitfalls". No heading covers discovery.
https://mpp.dev/advanced/discoverysupplied every fact above on the same day.Additional recorded evidence:
Recommendation
Add one "Discovery" section to
skills/agentic-payments/mpp.md. Keep it short.It needs four points:
/openapi.json, withx-payment-infooffers on each paid operation. Show themppxdiscovery()call that generates it.Challenge is authoritative for price, token, network, expiry, and terms.
and link
https://mpp.dev/mcp/services.payment.
Add a matching line to the SKILL.md decision table so a reader selling an API
reaches the discovery step.
Source Record
Raven recorded this finding as sk-016 (skills, discovered 2026-08-14).
Public source record: improvements/skills/sk-016-agentic-payments-mpp-discovery-gap.md
Immutable source snapshot: dbc466e55105
Resolution Handoff
When you deploy a fix, link the resolving issue or pull request to the source record.
Then notify Raven through:
https://github.com/stellar-experimental/stellar-raven/issues/new?template=upstream-improvement-ready.yml&title=%5Bupstream-ready%5D%20sk-016%3A%20
Include the finding ID and the resolving issue or pull request.
Include the deployed version or timestamp. Include the smallest live recheck.
Raven verifies the live surface before it sets the finding to
fixed-upstream.An issue closure or merged pull request does not prove the fix.
A separate reviewer repeats the live check before Raven retires the active finding.
Raven keeps a commit-pinned snapshot when one is available.