IMBA Wallet Agentic MCP
OfficialRead-only docs server for IMBA Agent policy and public info; it does not move money or call spend APIs.
get_agent_facts: Get canonical prepaid-agent policy (USDT TRC-20, catalog buy, forbidden rails, tiers).
get_tier_policy: Learn tier 0 vs 1+ rules; conversion is closed at tier 0 and withdraw stays closed.
get_catalog_placement: See which MCP goes in which directory (OpenAI is docs-only).
get_public_url: Fetch an allowlisted public IMBA Agent URL (HowTo, discovery JSON, llms-agent).
list_docs_urls: List available public Agent documentation URLs (HowTo, tiers, discovery, OpenAPI, MCP endpoints).
Allows agents to search for and purchase Apple gift cards from the live gift card catalog.
Allows agents to search for and purchase Google Play gift cards from the live gift card catalog.
Enables issuing MasterCard prepaid cards that can be used for payments to airlines, hotels, SaaS, and other card-billing merchants.
Allows agents to search for and purchase Steam gift cards from the live gift card catalog.
Enables issuing Visa prepaid cards that can be used for payments to airlines, hotels, SaaS, and other card-billing merchants.
IMBA Agent MCP (Docker)
Stdio images for the prepaid IMBA Agent API. They install the public npm packages only. This repository does not contain API keys, Ed25519 private keys, or registry seeds.
Default Dockerfile is the docs server so Glama and other scanners can
build without secrets. Spend is a separate image.
File | npm | Registry name | What it does |
|
|
| Policy, HowTo, what agents buy. No money. |
|
|
| USDT TRC-20 + Visa prepaid / eSIM / gift cards with your key. No withdraw. |
Playbooks: what agents buy · HowTo · API docs
What agents buy
IMBA issues the payment instrument, not the booking:
Visa/MasterCard prepaid — airlines, hotels, SaaS, or a datacenter that bills a card
Travel eSIM — cheap mobile data
Gift cards — live catalog (~20,000 positions; Apple, Steam, Google Play — search, do not hard-code a SKU)
ChatGPT Actions must not call spend.
Related MCP server: ASG Card
Install (stdio)
Docs (no secrets):
npx -y @imba_wallet/agent-mcp-docs@0.1.5{
"mcpServers": {
"imba-agent-docs": {
"command": "npx",
"args": ["-y", "@imba_wallet/agent-mcp-docs@0.1.5"]
}
}
}Spend (operator key):
{
"mcpServers": {
"imba-agent": {
"command": "npx",
"args": ["-y", "@imba_wallet/agent-mcp"],
"env": {
"IMBA_AGENT_CLIENT_ID": "YOUR_CLIENT_ID",
"IMBA_AGENT_PRIVATE_KEY": "-----BEGIN PRIVATE KEY-----\\n...\\n-----END PRIVATE KEY-----"
}
}
}
}Claude Code marketplace (this repo):
/plugin marketplace add IMBAwallet/agent-mcp
/plugin install imba-agent@imba-agentAgent skill: npx skills add IMBAwallet/agent-mcp --skill imba-agent
Docker
docker build -t imba-agent-docs .
docker run -i --rm imba-agent-docs
docker build -f Dockerfile.spend -t imba-agent-spend .
docker run -i --rm \
-e IMBA_AGENT_CLIENT_ID=YOUR_CLIENT_ID \
-e IMBA_AGENT_PRIVATE_KEY=YOUR_PKCS8_PEM_OR_BASE64URL \
imba-agent-spendNot a ChatGPT money plugin. Raising agent_tier does not unlock withdraw.
Glama listing
Repo: glama.ai/mcp/servers/IMBAwallet/agent-mcp
glama.json lists GitHub user clnt2021. After a push to main:
Sign in to Glama with that GitHub account.
Open the listing → Sync Server (mirror can lag).
Claim ownership if Maintainers still shows 0 (org repos need
glama.json+ claim).Make Release against the root
Dockerfile(docs). Do not releaseDockerfile.spendin Glama — the sandbox has no operator key.
Quality grades (tool definitions / coherence) appear only after that Glama release, not after a GitHub tag.
Owner-match catalog copy
LobeHub (and similar) require the GitHub user to own the listing repo. Mirror packaging (no secrets) lives at clnt2021/imba_agent_mcp. When plugin.json, mcp.json, skills, Dockerfiles, or lhm.plugin.json change, update both repos. Wallet SSOT: docs/features/agent_mcp.md.
Available Tools
6 toolsget_agent_factsAgent API factsARead-onlyIdempotent
Canonical prepaid-agent policy and catalog: Visa prepaid, eSIM, gift cards, KYT address screen, USDT TRC-20, forbidden rails, tiers. Cite as-is. Does not move money.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds useful behavioral context beyond this: 'Cite as-is' instructs exact quoting, and 'Does not move money' reinforces the no-side-effect nature of the tool in plain language.
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 compact and every phrase carries weight: the scope comes first, followed by a concrete topic list, then two short usage directives. No filler or redundancy.
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?
For a zero-parameter, read-only facts tool without an output schema, the description is largely sufficient: it names the domain, lists covered topics, and gives quoting guidance. It could be slightly stronger by distinguishing itself from overlapping siblings like get_tier_policy, but nothing essential is missing for invoking it correctly.
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?
The tool has zero parameters and the schema coverage is 100%, so there is nothing to document. The description instead clarifies the content scope of the returned facts, which is the only semantic information an agent needs.
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 clearly identifies the tool as a canonical prepaid-agent policy and catalog reference and enumerates the exact fact domains it covers (Visa prepaid, eSIM, gift cards, KYT, USDT TRC-20, rails, tiers). This is specific and informative, though it does not explicitly differentiate from siblings such as get_tier_policy or get_catalog_placement.
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?
'Canonical... policy and catalog' provides clear context that this is the authoritative reference source, and 'Cite as-is' tells the agent to quote content verbatim. It also excludes transactional use with 'Does not move money.' However, it does not explicitly name alternatives or state when a sibling would be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_use_casesWhat agents can buyARead-onlyIdempotent
Playbook: Visa prepaid (flights, datacenter bills), travel eSIM, ~20k gift cards, paid KYT address screen. MCP tools per job. Cite as-is. Does not move money.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful context by explicitly stating 'Does not move money' and by instructing that the content should be cited as-is. This clarifies that the tool is informational and has a specific usage expectation.
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 compact and information-dense, front-loading the word 'Playbook' and immediately providing substantive examples. Each clause contributes value: scope, examples, tool association, citation rule, and safety caveat. It is slightly telegraphic, but it wastes no words.
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?
For a zero-parameter, read-only informational tool with no output schema, the description sufficiently conveys the content and scope. The safety note and citation instruction add important behavioral context. It does not specify the exact output format, but given the simplicity of the tool and strong annotations, this is a minor gap.
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?
The tool has zero parameters and the input schema is empty, so there are no parameter semantics to document. The description adds useful context about what kind of content will be returned, which helps compensate for the absence of any parameter-driven behavior. The 0-parameter 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 name and title clearly indicate this tool returns agent purchasing use cases, and the description lists concrete examples such as Visa prepaid cards, travel eSIM, gift cards, and KYT address screens. It distinguishes itself from sibling tools by framing the content as a buying playbook rather than generic agent facts or policy. It lacks an explicit verb like 'returns' or 'lists,' but the intent is still clear.
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 provides no explicit when-to-use guidance or comparison with sibling tools like get_agent_facts, get_tier_policy, or get_catalog_placement. 'Cite as-is' is a post-retrieval instruction, not a tool-selection guideline. The intended usage is only implied by the title and playbook framing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_catalog_placementWhere to list each MCPARead-onlyIdempotent
Which directories take the docs MCP vs the spend MCP. OpenAI is docs-only.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool read-only, idempotent, and non-destructive. The description adds useful domain context by clarifying the catalog placement logic (docs vs spend, OpenAI docs-only), but it does not describe the exact return shape or any behavioral caveats. With annotations carrying the safety profile, this is adequate but not rich.
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?
One short, front-loaded sentence with no filler. The additional fact 'OpenAI is docs-only' is compact and directly useful. Slightly telegraphic style, but every word earns its place.
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?
For a zero-parameter, read-only, annotated tool, the description communicates the core output. However, there is no output schema, and the description does not specify whether the response is a list, mapping, or config snippet, or how complete the coverage is. This is a minor gap given the tool's simplicity.
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?
The tool has zero parameters, so per the rubric the baseline is 4. The description still adds meaningful semantics about what kind of mapping the tool reports, even though there are no parameters to document.
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 states the tool's specific output: which directories should list the docs MCP versus the spend MCP, with the OpenAI docs-only exception. It is clearly distinct from siblings focused on facts, tier policy, URLs, and docs links. It lacks an explicit verb like 'returns' or 'lists,' but the phrasing is unambiguous.
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?
Usage is implied: an agent would call this when it needs to decide where to place each MCP in a catalog. However, the description gives no explicit direction about when to choose this tool over alternatives or whether any context/preconditions apply.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_public_urlFetch a public IMBA Agent URLARead-onlyIdempotent
HTTP GET of an allowlisted public docs URL (HowTo, use cases, discovery JSON, llms-agent). Never calls register/deposit/buy.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Absolute https://imbawallet.com URL from the allowlist (HowTo, use cases, tiers, well-known, openapi discovery, llms-agent). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey readOnlyHint, idempotentHint, and non-destructive behavior. The description adds concrete detail: it performs an HTTP GET, targets only allowlisted public docs, and explicitly disavows state-changing operations. This enriches the safety profile beyond the annotations without contradicting them.
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?
Two tight sentences with the core action and constraints front-loaded. No filler or redundancy; the negative assurance about register/deposit/buy earns its place by reinforcing the tool's non-mutating nature.
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?
For a one-parameter, read-only tool with full schema coverage and safety annotations, the description is nearly complete. It lacks only explicit error or return behavior for non-allowlisted URLs, which is not critical for correct invocation.
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 description coverage is 100%, and the description adds little beyond the schema's own explanation of the url parameter. The mention of public docs and allowlist is already in the parameter description, so no extra semantic value is provided.
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?
States the mechanism (HTTP GET) and resource (an allowlisted public docs URL), with concrete categories like HowTo, use cases, discovery JSON, and llms-agent. This is specific enough to separate it from the sibling getters and from mutating operations.
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 only usage guidance is implicit: the URL must be allowlisted public docs and the tool never calls register/deposit/buy. It does not explicitly say when to choose this over siblings like get_agent_use_cases or list_docs_urls, nor give positive selection criteria beyond the allowlist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tier_policyAgent tier policyCRead-onlyIdempotent
Tier 0 vs 1+. Convert closed at 0 (AML). Convert at 1 is a separate request. Withdraw stays closed.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, and the description does not contradict them. However, it adds no behavioral detail about the tool itself, such as output format, edge cases, or what 'AML' means; the safety profile is covered, but the policy content is unexplained.
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 extremely short and free of filler, but the terseness sacrifices comprehensibility. The key facts are not front-loaded in a recognizable way, and the cryptic phrasing reduces the value of the brevity.
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?
With no output schema, the description should explain what the caller receives or can infer from the policy. Instead, it offers ambiguous fragments and undefined acronyms, leaving an agent to guess the response semantics and the meaning of 'AML'.
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?
The tool has zero parameters and schema coverage is 100%, so no parameter documentation is required. The description correctly avoids inventing 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 never states a verb or object; it reads as cryptic policy fragments ('Tier 0 vs 1+', 'Convert closed at 0'). The name and title imply retrieval of tier policy, but the body does not explicitly say what the tool returns or does. This borders on restating the title without adding a clear operation.
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?
There is no when-to-use guidance and no mention of alternatives. The intended use is only implied by the tool name, and the description does not clarify when this policy lookup is appropriate versus the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_docs_urlsList public Agent URLsBRead-onlyIdempotent
HowTo, use cases, tiers, discovery, OpenAPI, MCP endpoints.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark the operation as read-only, idempotent, and non-destructive. The description adds a loose content scope, mentioning several categories, but does not state return format, whether the list is exhaustive, or how results are ordered. It does not contradict the 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 very brief and has no filler, but it is a fragment, not a structured sentence. It front-loads keywords, yet the lack of a verb reduces clarity, making it less effective than a concise complete sentence would be.
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?
For a no-parameter read-only tool, annotations and schema cover safety and invocation constraints. However, the description leaves ambiguity about what is actually returned: documentation URLs, endpoints, or both. The listed categories are helpful but not sufficient to fully predict the tool's output.
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?
The tool accepts zero parameters, so the schema fully specifies invocation. No further parameter documentation is needed, and the baseline of 4 applies.
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 lacks a verb and reads as a list of content categories rather than a clear statement. It implies that the tool returns URLs for HowTo, use cases, tiers, discovery, OpenAPI, and MCP endpoints, but the purpose is only clear from the title. It does not meaningfully distinguish the tool from siblings beyond the title.
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?
No guidance is provided on when to use this tool versus siblings like get_public_url, get_agent_facts, or get_tier_policy. There are no exclusions, alternatives, or context cues that would help an agent choose among the listed tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Several tools, such as get_agent_facts, get_agent_use_cases, get_tier_policy, and get_catalog_placement, cover overlapping reference material around policy, tiers, and catalog placement. get_public_url and list_docs_urls are related but distinguishable, yet agents may still struggle to choose the right knowledge tool for a given request.
Tool names consistently use snake_case with a get_ prefix, making the pattern predictable and readable. The only deviation is list_docs_urls, which uses list_ instead of get_, but this is still a minor and conventional variation.
Six tools is a reasonable size for a read-only reference/docs MCP and fits comfortably within a well-scoped set. However, a few tools have overlapping purposes, so the count is slightly higher than strictly necessary.
The tool surface covers facts, use cases, tier policy, catalog placement, URL listing, and remote fetching, which forms a nearly complete docs-only workflow. Wallet operations are explicitly out of scope, so the lack of money-moving tools is not a gap for this server's stated purpose.
Maintenance
Related MCP Connectors
BuyUKeSIM MCP lets AI agents search and purchase global travel eSIMs, UK +44 number eSIMs, and related connectivity services programmatically. Agents can search plans, compare pricing and coverage, create and fund prepaid crypto wallets, purchase eSIMs, and check order status — with no traditional account or KYC workflow.
Agent-native global eSIM: buy for 193 countries, per-MB in USDT/USDC. Agents earn 20% referral.
No-KYC crypto VPS AI agents rent & run over MCP — 57 tools, pay USDC/USDT on Base/Eth/Polygon/Solana
Agentic commerce + trust MCP: discover, verify, and transact across droplinked's merchant network.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server for AgentPay — the payment gateway for autonomous AI agents. Fund a wallet once, give your agent the key, and it discovers, provisions, and pays for tool APIs on its own. One key, every tool.1121MIT

ASG Cardofficial
AlicenseNot gradedqualityFmaintenanceVirtual MasterCards for AI agents. Issue and manage cards via MCP.15MIT- AlicenseNot gradedqualityCmaintenanceAI-to-AI marketplace MCP server with 46 tools — swap 65+ crypto tokens on 7 chains, rent GPUs, trade 25 tokenized stocks, on-chain escrow (Solana + Base), DeFi yields, sentiment analysis, wallet monitoring, and image generation. Supports USDC payments across 14 blockchains.MIT
- AlicenseAqualityCmaintenanceEnables AI agents to autonomously buy and operate mobile proxies via MCP, supporting both API key and on-chain USDC payments for tasks like port creation, IP rotation, and traffic management.4461MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/IMBAwallet/agent-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server