io.github.eSimfly-Official/esimfly-mcp

Registre officiel Recherche et web

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

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

Remote (streamable-http)
Claude Code
claude mcp add --transport http esimfly-mcp 'https://mcp.esimfly.net/mcp'
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "esimfly-mcp": {
            "type": "http",
            "url": "https://mcp.esimfly.net/mcp"
        }
    }
}
NPM package @esimfly/mcp
Claude Code
claude mcp add esimfly-mcp -e 'ESIMFLY_ACCESS_CODE=<your esimfly_access_code>' -e 'ESIMFLY_SECRET_KEY=<your esimfly_secret_key>' -e 'ESIMFLY_MCP_ALLOW_WRITES=<ESIMFLY_MCP_ALLOW_WRITES>' -- npx -y @esimfly/mcp@0.1.3
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "esimfly-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "@esimfly/mcp@0.1.3"
            ],
            "env": {
                "ESIMFLY_ACCESS_CODE": "<your esimfly_access_code>",
                "ESIMFLY_SECRET_KEY": "<your esimfly_secret_key>",
                "ESIMFLY_MCP_ALLOW_WRITES": "<ESIMFLY_MCP_ALLOW_WRITES>"
            }
        }
    }
}

Variables d'environnement

  • ESIMFLY_ACCESS_CODE obligatoire secret eSIMfly API access code (esf_...)
  • ESIMFLY_SECRET_KEY obligatoire secret eSIMfly API secret key (sk_...)
  • ESIMFLY_MCP_ALLOW_WRITES Set to true to enable ordering, top-up, cancel, suspend, SMS and webhook tools

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. @esimfly/mcp — eSIMfly MCP server
  2. Hosted server (no install)
  3. Local install
  4. Try it
  5. Tools
  6. Safety model
  7. Configuration
  8. Embedding
  9. Releasing (maintainers)
  10. Support

@esimfly/mcp — eSIMfly MCP server

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:

{
  "mcpServers": {
    "esimfly": {
      "command": "npx",
      "args": ["-y", "@esimfly/mcp"],
      "env": {
        "ESIMFLY_ACCESS_CODE": "esf_...",
        "ESIMFLY_SECRET_KEY": "sk_..."
      }
    }
  }
}
Claude Code
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):

{
  "mcpServers": {
    "esimfly": {
      "command": "npx",
      "args": ["-y", "@esimfly/mcp"],
      "env": { "ESIMFLY_ACCESS_CODE": "esf_...", "ESIMFLY_SECRET_KEY": "sk_..." }
    }
  }
}
Docker
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

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

support@esimfly.net · https://docs.esimfly.net

Questions fréquentes

Qu'est-ce que io.github.eSimfly-Official/esimfly-mcp ?

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

Comment installer io.github.eSimfly-Official/esimfly-mcp ?

Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http esimfly-mcp 'https://mcp.esimfly.net/mcp'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.eSimfly-Official/esimfly-mcp ?

Oui. Il attend ESIMFLY_ACCESS_CODE, ESIMFLY_SECRET_KEY, à renseigner dans sa configuration.

io.github.eSimfly-Official/esimfly-mcp est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.eSimfly-Official/esimfly-mcp ?

Il est publié par eSimfly-Official. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.