Esimfly Mcp

io.github.eSimfly-Official由 GitHub 账号 eSimfly-Official 发布v0.1.3更新于 Nov 2, 2026

eSIMfly Business API: search eSIM plans, check usage, diagnose eSIMs, optionally order (confirmed)

已验证Streamable HTTP可网页运行沟通与协作商业与电商

概览

AI 生成的概览

将助手接入 eSIMfly 商务 API,可搜索 eSIM 套餐、查询余额与用量、诊断 eSIM,并可选地下单和充值。

可以做什么
  • 按目的地或类型搜索 eSIM 套餐目录,并显示你的成本价,查询账户或企业余额
  • 列出你的 eSIM 及其状态、剩余流量和有效期,读取已存用量或实时网络用量
  • 查看最近 7 天的网络事件,以及按国家和运营商统计的每日用量报告
  • 查看订单历史、单个订单、充值套餐和 Webhook 设置
  • 开启写入后:下单、充值、取消、暂停或恢复 eSIM、发送短信和设置 Webhook,均先预览再确认
  • 提供集成指南和 eSIM 诊断两个内置提示词
适用场景
适合使用 eSIMfly 商务账户、希望让助手比较批发套餐、监控各 eSIM 流量、排查某张卡无数据问题,或在确认步骤下完成下单与充值的场景。
运行要求
可使用托管远程端点并通过 OAuth 登录 eSIMfly 商务账户,也可通过 npx(需 Node.js)或 Docker 本地运行。本地模式需要商务后台提供的 ESIMFLY_ACCESS_CODE 和 ESIMFLY_SECRET_KEY;设置 ESIMFLY_MCP_ALLOW_WRITES=true 才会注册写入工具。需要能访问 eSIMfly API 的网络。
安装前请注意
写入工具会动用账户余额:create_order、topup_esim、cancel_esim(退款)、暂停/恢复、send_sms 和 set_webhook。除非 ESIMFLY_MCP_ALLOW_WRITES 为 true,否则这些工具不会注册;每次调用在带 confirm: true 前只返回预览。ESIMFLY_ACCESS_CODE 与 ESIMFLY_SECRET_KEY 是密钥,建议使用限速较低的专用密钥,如有疑虑请在后台轮换。实时状态查询被说明为开销较大。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Esimfly Mcp,将其添加到工作区。
  2. 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.eSimfly-Official%2Fesimfly-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。

{
  "mcpServers": {
    "esimfly": {
      "type": "http",
      "url": "https://mcp.esimfly.net/mcp"
    }
  }
}

README

@esimfly/mcp — eSIMfly MCP server

[eSimfly-Official/esimfly-mcp MCP server] [npm] [CI] [smithery badge] [M8ven Score]

Give your AI assistant hands on the eSIMfly Business API. With this Model Context Protocol server, Claude, Cursor, ChatGPT and other MCP clients can search eSIM plans with your wholesale prices, check balances and usage, diagnose "no data" problems from live network data — and, if you enable it, place orders and top-ups with an explicit confirmation step.

  • Read-only by default. Nothing can spend your balance unless you opt in.
  • Two-step writes. Every write tool returns a preview (what, cost, balance) until called with confirm: true.
  • Built on the official @esimfly/sdk — signing, retries and error codes handled.
  • Ships two prompts: the complete integration guide and an eSIM diagnosis workflow.

Docs: https://docs.esimfly.net · Credentials: Business Dashboard → Settings → API Keys.

Hosted server (no install)

Prefer not to run anything locally? eSIMfly hosts this same server at https://mcp.esimfly.net/mcp. Add it as a remote MCP server in Claude.ai, ChatGPT, Claude Code (claude mcp add --transport http esimfly https://mcp.esimfly.net/mcp), Cursor or VS Code and sign in with your eSIMfly business account — OAuth 2.1, no keys to paste, write tools opt-in on the consent screen. Details: https://docs.esimfly.net/docs/mcp-server

Local install

The server runs locally over stdio; your API key never leaves your machine.

Claude Desktop

claude_desktop_config.json → mcpServers:

json
{  "mcpServers": {    "esimfly": {      "command": "npx",      "args": ["-y", "@esimfly/mcp"],      "env": {        "ESIMFLY_ACCESS_CODE": "esf_...",        "ESIMFLY_SECRET_KEY": "sk_..."      }    }  }}

Claude Code

bash
claude mcp add esimfly -e ESIMFLY_ACCESS_CODE=esf_... -e ESIMFLY_SECRET_KEY=sk_... -- npx -y @esimfly/mcp

Cursor / Windsurf / other MCP clients

.cursor/mcp.json (or the client's equivalent):

json
{  "mcpServers": {    "esimfly": {      "command": "npx",      "args": ["-y", "@esimfly/mcp"],      "env": { "ESIMFLY_ACCESS_CODE": "esf_...", "ESIMFLY_SECRET_KEY": "sk_..." }    }  }}

Docker

bash
docker build -t esimfly-mcp .docker run -i --rm -e ESIMFLY_ACCESS_CODE=esf_... -e ESIMFLY_SECRET_KEY=sk_... esimfly-mcp

Enable write tools

Add "ESIMFLY_MCP_ALLOW_WRITES": "true" to env. Without it the ordering, top-up, cancel, suspend, SMS and webhook tools are not even registered.

Try it

  • "Find the cheapest 5 GB plan for Turkey and tell me my margin at €9.99."
  • "Which of my eSIMs are active and below 200 MB?"
  • "ICCID 8948010010036785060 says no data — diagnose it." (uses the diagnose_esim prompt)
  • "Set up webhooks for installed / status / low-data events at https://my.app/hooks." (write tool, previews first)
  • "Build me a Node.js integration." (uses the esimfly_integration_guide prompt)

Tools

ToolWhat it doesMode
search_packagesCatalogue search by destination / type with your cost priceread
get_balanceAccount (or enterprise) balanceread
list_esimsYour eSIMs with status, data left, validityread
get_esim_usageStored usage for one eSIM (cheap)read
get_esim_live_statusLive status from the network: install state, last network, device, usageread (expensive)
get_network_eventsLast 7 days of attach / data-session events, wrong-network flagread
get_usage_reportDaily usage by country and operator (up to 90 days)read
list_orders / get_orderOrder history and one order with its eSIMread
get_topup_packagesTop-up options for one eSIMread
get_webhook_settingsWebhook URL, events, recent deliveriesread
create_orderBuy eSIMs — preview → confirm: true + idempotency keywrite
topup_esimAdd data to an eSIM — preview shows package and costwrite
cancel_esimCancel an unused eSIM and refund to balancewrite (destructive)
suspend_esim / activate_esimBlock / restore network accesswrite
send_smsText the device holding the eSIMwrite
set_webhookConfigure webhook URL and eventswrite

Prompts: esimfly_integration_guide (optional stack), diagnose_esim (iccid).

Safety model

  • Read-only unless ESIMFLY_MCP_ALLOW_WRITES=true.
  • Write tools are two-step: a call without confirm returns a preview and makes no mutable API call; create_order additionally requires the idempotency_key from its own preview, so an agent cannot place the same order twice.
  • Tool annotations mark reads as readOnlyHint and cancel/suspend as destructiveHint, so hosts that ask for user approval on risky tools do so.
  • The server never logs credentials and never writes to stdout except the MCP protocol.
  • Give the agent a dedicated API key with the smallest rate limits you are comfortable with, and rotate it from the dashboard if in doubt.

Configuration

VariableRequiredDescription
ESIMFLY_ACCESS_CODEyesAPI access code (esf_…)
ESIMFLY_SECRET_KEYyesAPI secret key (sk_…)
ESIMFLY_MCP_ALLOW_WRITESnotrue to register write tools
ESIMFLY_BASE_URLnoOverride the API base URL

Embedding

ts
import { createEsimflyMcpServer } from '@esimfly/mcp';const server = createEsimflyMcpServer({ config: { accessCode, secretKey }, allowWrites: false });// connect it to any MCP transport

Releasing (maintainers)

Bump version in package.json, server.json and MCP_VERSION in src/server.ts, add a CHANGELOG entry, push, then publish a GitHub Release tagged vX.Y.Z — the workflow publishes to npm with Trusted Publishing (OIDC), and the MCP Registry entry is republished automatically afterwards (GitHub OIDC, no tokens).

Support

[email protected] · https://docs.esimfly.net

来源:README.md,提交 73f44a5

工具

0
该服务器需要登录,因此 SourceWeft 无法在没有账号的情况下读取其工具,也未收录。已连接账号所能看到的内容可能因账号及其权限而异。

版本历史

1
  1. v0.1.3最新Sep 16, 2026

评分

已满足适用检查项的 85%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分