Blockchain-RPC in ElizaOS-Agenten mit BlockVectra nutzen
Richten Sie das plugin-evm von ElizaOS mit zwei Umgebungsvariablen auf BlockVectra aus, starten Sie schlüssellos am öffentlichen Endpunkt und fügen Sie den Docs-MCP-Server über plugin-mcp hinzu.
ElizaOS-Agenten erreichen EVM-Chains über @elizaos/plugin-evm, das seine RPC-URLs aus der Umgebung liest. Setzen Sie EVM_PROVIDER_URL auf https://api.blockvectra.com/v1/eth_mainnet/public, und das Plugin nutzt BlockVectra für Ethereum Mainnet ohne API key. Der Free Plan ergänzt Methoden mit Key-Pflicht mit 30,000,000 CU pro 30-Tage-Fenster. Geprüft am .
# .env (the plugin also needs the wallet key; keep it in your secret store)
EVM_PRIVATE_KEY=your-wallet-private-key
EVM_PROVIDER_URL=https://api.blockvectra.com/v1/eth_mainnet/public
ETHEREUM_PROVIDER_BASE=https://api.blockvectra.com/v1/base_mainnet/public{
"name": "DeFiAgent",
"plugins": ["@elizaos/plugin-evm"],
"settings": { "chains": { "evm": ["base"] } }
}Installieren Sie das Plugin mit bun add @elizaos/plugin-evm. Ethereum Mainnet ist standardmäßig aktiviert; jede weitere Chain in settings.chains.evm muss ihren Exportnamen aus viem/chains verwenden, und ihre URL-Variable lautet ETHEREUM_PROVIDER_<CHAIN_NAME> in Großbuchstaben, wie in der README des Plugins auf npm.
Einen API key verwenden
Öffentliche Endpunkte decken nur die Methoden in den public.methods der jeweiligen Chain ab. Für alle anderen setzen Sie den Key in den URL-Pfad (/v1/{chain}/{api_key}). Das Plugin nimmt nur eine URL entgegen, daher reist der Key hier ausnahmsweise im Pfad. Exportieren Sie die Variablen in der Shell, die den Agenten startet, damit der Key nie in einer Datei landet, die Sie committen:
export EVM_PROVIDER_URL=https://api.blockvectra.com/v1/eth_mainnet/${BLOCKVECTRA_API_KEY}
export ETHEREUM_PROVIDER_BASE=https://api.blockvectra.com/v1/base_mainnet/${BLOCKVECTRA_API_KEY}URLs können in Logs, Proxys und Fehlermeldungen auftauchen. Verwenden Sie daher für den Agenten einen eigenen Key mit niedrigem cu_cap und widerrufen Sie ihn in der Konsole, falls er offengelegt wird.
Um den Key ohne Browser zu erstellen, folgen Sie den vier Schritten im Leitfaden zur programmatischen Registrierung: Challenge, Signatur, Login, dann POST /keys. Entwickler können auch in der Konsole einen Key erstellen. Derselbe Key funktioniert auf jeder Chain, daher bedient ein Key jede ETHEREUM_PROVIDER_*-Variable.
Den Docs-MCP-Server hinzufügen
@elizaos/plugin-mcp lässt einen Character entfernte MCP-Server über Streamable HTTP nutzen. Installieren Sie es mit bun add @elizaos/plugin-mcp und registrieren Sie dann den BlockVectra-Docs-Server in den Character-Einstellungen:
{
"plugins": ["@elizaos/plugin-evm", "@elizaos/plugin-mcp"],
"settings": {
"mcp": {
"servers": {
"blockvectra": { "type": "streamable-http", "url": "https://docs.blockvectra.com/mcp" }
}
}
}
}Der Agent kann dann list_chains, get_status, rpc_call, read_doc und die weiteren Tools von der MCP-Server-Seite schlüssellos aufrufen. Die dokumentierten HTTP-Optionen des Plugins sind type, url und timeout; eine Header-Option ist nicht dokumentiert, daher sind MCP-Tools mit Key-Pflicht mit dieser Konfiguration nicht erreichbar. Lassen Sie Lesezugriffe mit Key-Pflicht wie oben über plugin-evm laufen.
Fehler, die auftreten können
| Antwort | Bedeutung | Was zu tun ist |
|---|---|---|
HTTP 401, -32024, missing_api_key | URL mit Key-Pflicht ohne Key aufgerufen | Den Key in den Pfad oder den Header x-api-key setzen |
HTTP 401, -32024, invalid_api_key | Key unbekannt, deaktiviert oder widerrufen | Den Key in der Konsole prüfen; ein neuer Key braucht einige Sekunden bis zur Aktivierung |
-32601, method_not_public | Methode steht nicht in den public.methods der Chain | Die URL dieser Chain von /public auf die Form mit Key umstellen |
| Chain not recognised | Name in settings.chains.evm passt zu keinem Namen aus viem/chains | Den exakten Namen aus viem/chains verwenden |
Jeder BlockVectra-Fehler enthält data.reason und eine docs_url; die vollständige Liste steht auf der Fehlerseite.
Offizielle Dokumentation
- ElizaOS-Dokumentation
- elizaos/eliza auf GitHub
@elizaos/plugin-evmauf npm@elizaos/plugin-mcpauf npm
Häufige Fragen
Gilt EVM_PROVIDER_URL auch für Base? Nein. Sie legt nur Ethereum Mainnet fest; andere Chains verwenden ETHEREUM_PROVIDER_<CHAIN_NAME>.
Kann ein Agent über den öffentlichen Endpunkt Transaktionen signieren und senden? eth_sendRawTransaction steht für die Chains, die es aufführen, in public.methods, mit einem eigenen, niedrigeren Ratenlimit pro IP unter public.send_raw_rate_limit in GET /v1/chains. Lesen Sie das Limit dort nach, bevor Sie darauf aufbauen.
Brauche ich für den MCP-Server einen Key? Nein. Die Verbindung sowie die Dokumentations-, Chain- und Preis-Tools sind schlüssellos.
Nächste Schritte
- Übersicht der Agent-Frameworks für LangChain, viem, wagmi und Coinbase AgentKit.
- Einen KI-Agenten verbinden, um Endpunkte mit MCP, llms.txt und OpenAPI zu entdecken.
- Abrechnungsregeln für CU-Messung, Ratenlimits und nicht abgerechnete Fehler.
Zuletzt aktualisiert:
DEX-Tagespreise
Tägliche DEX-OHLC-Preise und VWAP über die Data-API abfragen, exakte rationale Brüche in TypeScript und Python verarbeiten und historische Daten effizient nacherfassen.
Historischer EVM-State
Unterscheiden Sie authentifizierte State-Fenster, schlüssellosen Verlauf und Log-Spannen. Wählen Sie einen festen Block für eth_call und diagnostizieren Sie state_window-Fehler.