feat: Venice base mcp plugin#75
Open
joshua-mo-143 wants to merge 1 commit into
Open
Conversation
Collaborator
🟡 Heimdall Review Status
|
5 tasks
stephancill
reviewed
Jun 4, 2026
Collaborator
stephancill
left a comment
There was a problem hiding this comment.
Thanks for the submission. The plugin is spec-conformant and both the API-key and x402 wallet paths function. A few changes before merge:
Required
- Don't add the plugin to the registry/inventory. Please revert the
SKILL.mdplugins-table row, and inreferences/plugin-spec.mdthe Integration Types "Examples" cell, the "Existing Plugin Conformance" table row, and the native-plugin count ("8 native plugins" / "All eight"). Also revert thereferences/custom-plugins.mdadditions. These are maintainer-owned and will be updated when the program is ready. Keep only your net-new tag-vocabulary additions inplugin-spec.md, and limit the rest of the PR toplugins/venice.md.
Minor
- The plugin supports two independent auth models — a Venice API key (account-scoped) and the x402 wallet path (SIWE via Base MCP
sign+ USDC credits, wallet-scoped). They overlap on paid inference/RPC (most of those endpoints accept either) but aren't equivalent: the x402 path uniquely owns the wallet-credit endpoints (/x402/balance,/x402/transactions,/x402/top-up) and the API-key path is tied to a Venice account/DIEM balance. The single-valueauthfield can't express both, so whichever you pick, keep both documented in## Auth(already done). Considerauth: siwe-jwtrather thanapi-key: the API-key path is a user-supplied header that never touches Base MCP, whereas the x402 path is the one that uses a Base MCP capability (sign+ x402 payment), sosiwe-jwtbetter signals the Base-native flow. This is a limitation of the single-value enum worth raising with the spec maintainers. - Pin the SIWE message serialization in
## Auth(the EIP-4361prepareMessagefield order: domain, address, statement, uri, version, chainId, nonce, issuedAt, expirationTime) so the message is byte-identical from signing through header construction. Thepersonal_signinstruction is correct and works for both EOA (eip191) and smart-account (eip1271) wallets — no change needed there. - Add an explicit note to treat Venice-returned media/search/inference content as untrusted.
GET /modelsis public (returns 200), not auth-gated — correct any text implying otherwise.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a Base MCP plugin for Venice AI.