Skip to main content

Advanced Features

Bankr is extensible. Beyond the built-in tools, you can install skills from GitHub (or write your own), connect MCP servers so the agent can call your private APIs, and store secure environment variables for secrets like API keys.

All of these are per-wallet — your skills, MCP servers, and env vars are private to you and sync across every surface the agent runs on, except that MCP servers aren't used on X or Farcaster.

Skills​

Skills are pre-packaged workflows the agent can load on demand. Think "a specialized prompt + optional reference docs" bundled together. A single skill might teach the agent how to add liquidity on a specific AMM, interpret a Zerion portfolio export, or format reports for a specific workflow you use.

Install from GitHub​

Just ask Bankr in chat:

install the ens skill from https://github.com/austintgriffith/ethskills/tree/master/skills/ens

The URL must point to a directory containing a SKILL.md file. Bankr fetches the skill, parses the frontmatter, pulls down any companion reference files, and registers it to your wallet. A repo URL works when the repo holds one skill; if it holds several (like BankrBot/skills), Bankr lists them and asks you to re-run the install with the directory of the one you want.

See the Bankr skill installation guide for the full repo structure, other available skills, and how to contribute your own via PR.

Manual Installation​

If you don't want to push the skill to a public repo, paste the SKILL.md content directly in chat:

create a skill with this content:

---
name: my_workflow
description: Runs my custom portfolio report
tags: [portfolio, reporting]
---

# My Workflow
... skill instructions ...

Bankr validates the frontmatter, saves the skill to your private library, and makes it available via use_skill on any future turn.

Using Installed Skills​

Once installed, the agent picks the right skill automatically based on your question. You can also force it:

use the ens skill to register deployer.eth

Ask what skills do I have? to see your library.

Skill limits

Up to 50 skills per wallet. Each SKILL.md is capped at 1MB, and each reference file is capped at 100KB. Plenty for prose instructions; not for stuffing a whole repo.

MCP Servers​

Model Context Protocol servers expose tools to the agent over HTTP. Add an MCP server once and every tool it provides becomes callable through Bankr — Linear tickets, GitHub PRs, Notion pages, internal APIs, whatever the server exposes.

Adding a Server​

Bankr Console: open the account menu → Connections, then click Connect on the Custom MCPs card. Fill in the URL, transport (HTTP or SSE), and choose how the server authenticates:

  • None — public servers that need no credentials.
  • Header — send a static header (e.g. an API key) on every request. This is the mode shown below.
  • OAuth — sign in to the provider through a popup, no key to paste. See OAuth-gated servers.

Chat: describe the server in plain English:

add an MCP server named "Linear" at https://mcp.linear.app/mcp
with Authorization header "Bearer {{LINEAR_API_KEY}}"

The {{LINEAR_API_KEY}} placeholder is a reference to a secure environment variable — see the next section. The agent stores the server config, hits the tools/list endpoint immediately to discover what tools the server provides, and caches the list.

OAuth-Gated Servers​

Some remote MCP servers require you to sign in with the provider instead of pasting a key. Pick OAuth as the auth mode when adding the server, then click Connect on the server card — a popup opens the provider's consent screen. Approve it, and Bankr exchanges the grant, discovers the server's tools, and marks the card connected. OAuth sign-in is rolling out provider by provider; the first is Coinbase at https://agents.coinbase.com/mcp. Where it isn't enabled yet, Connect fails and the card records an OAuth error; servers that authenticate with a key or header are unaffected.

Bankr keeps your access and refresh tokens in encrypted storage and refreshes them automatically — they're never shown in chat and never stored alongside the server config. OAuth servers don't take custom headers; the sign-in replaces them.

If a grant expires or is revoked, the card flips to NOT CONNECTED and tool calls stop until you click Reconnect and sign in again.

Using MCP Tools​

Once a server is added, the agent can call any tool it exposes. Ask naturally:

show my open Linear issues assigned to me

Bankr looks up the right Linear MCP tool and calls it. You can also:

  • list my MCP servers
  • list tools from the Linear server
  • remove the Linear server
  • sync the Linear server — re-fetches the tool list if the upstream server changed
MCP limits

Up to 20 MCP servers per wallet. MCP tools run everywhere except X and Farcaster.

Secure Environment Variables​

For secrets (API keys, tokens, private credentials) you never want echoed in chat or tool logs. Bankr stores them encrypted under a per-wallet namespace — the agent can pass the values to tools that need them, but the values are never surfaced back to the chat transcript.

Common uses:

  • LINEAR_API_KEY referenced by an MCP server header
  • OPENAI_API_KEY used by a skill that calls an external API
  • Any secret an execute_cli script needs at runtime

Setting Env Vars​

Bankr Console: open the Bankr sidebar → Tools → Environment Variables → add key/value pairs. This is the recommended path — you type the value once, into a form, and it's written straight to the secret store.

API: POST /agent/env, GET /agent/env, DELETE /agent/env/:key. See the Agent API reference.

Using Env Vars​

The agent reads env vars automatically when a tool needs them. You refer to a var by name with the {{VAR_NAME}} placeholder, e.g. in an MCP server header:

Authorization: Bearer {{LINEAR_API_KEY}}

Or have a skill / execute_cli script read them from the environment.

What the Agent Can See​

  • GET /agent/env returns key names only — the agent (and anyone asking it) can see what secrets exist, never the values.
  • Values are decrypted on-demand inside the tool runtime and never echoed back into the conversation.
  • Reserved prefixes used internally by the platform (including BANKR_* and standard cloud-provider prefixes) are blocked to prevent shadowing platform config.

Ask what env vars do I have? to see the key list.

Putting It Together​

A typical advanced setup:

  1. Install a handful of skills you use daily (install skill from github ...)
  2. Add an MCP server or two for your work tools (Linear, Notion, GitHub)
  3. Store the API keys each server needs as secure env vars
  4. Reference them via {{ENV_VAR}} templates in the server configs

Now every time you chat with Bankr — from the web, Telegram, or the CLI — your full toolkit is available and the secrets stay locked away.