MCP ExplorerExplorer

1nce Mcp Server

@1NCE-GmbHon 10 months ago
1 MIT
FreeCommunity
AI Systems
MCP Server for integration of LLMs with the 1NCE Management API

Overview

What is 1nce Mcp Server

1nce-mcp-server is a Model Context Protocol (MCP) server that facilitates the integration of Large Language Models (LLMs) with the 1NCE Management API, enabling AI agents to manage IoT connectivity through natural language interactions.

Use cases

Use cases include retrieving product information, managing orders, monitoring SIM card status, checking data and SMS quotas, updating SIM configurations, and viewing connectivity information through AI-driven interactions.

How to use

To use 1nce-mcp-server, clone the repository, install the required dependencies, set your 1NCE API credentials as environment variables, and then either install it using FastMCP or run it directly for development or testing.

Key features

Key features include secure OAuth 2.0 authentication, product management for querying IoT connectivity options, order management for creating and tracking orders, SIM management for monitoring and configuring SIM cards, and predefined interaction templates for common tasks.

Where to use

1nce-mcp-server is suitable for use in IoT applications, particularly in industries requiring efficient management of connectivity, such as telecommunications, smart cities, and logistics.

Content

1NCE IoT Platform MCP Server

A Model Context Protocol (MCP) server that enables AI agents to interact with the 1NCE IoT connectivity management platform through natural language.

Overview

This project provides a middleware layer that connects Large Language Models (LLMs) to the 1NCE API for managing IoT connectivity. It allows AI assistants to:

  • Retrieve product information
  • Manage orders
  • Monitor SIM card status
  • Check data and SMS quotas
  • Update SIM configurations
  • View connectivity information

By exposing these capabilities through the Model Context Protocol, AI agents can interact with IoT infrastructure using natural language, simplifying the management of connected devices.

Features

  • Authentication: Secure OAuth 2.0 token-based authentication with 1NCE API
  • Product Management: Query available IoT connectivity products
  • Order Management: Create and track orders
  • SIM Management: Monitor and configure SIM cards
  • Resources: Direct access to SIM status and product data
  • Prompts: Pre-defined interaction templates for common tasks

Prerequisites

  • Python 3.8+
  • FastMCP v2
  • 1NCE account with API credentials

Installation

  1. Clone this repository
git clone https://github.com/yourusername/1nce-mcp-server.git
cd 1nce-mcp-server
  1. Install required dependencies
pip install fastmcp httpx
  1. Set environment variables with your 1NCE API credentials
export ONCE_CLIENT_ID="your_client_id"
export ONCE_CLIENT_SECRET="your_client_secret"

Usage

Installing with FastMCP

The recommended way to use this MCP server is to install it using the FastMCP CLI:

fastmcp install 1nce_mcp.py

This will make the server available to compatible MCP clients, including Claude Desktop.

Running Directly

For development or testing, you can run the server directly:

python 1nce_mcp.py

Using with a Client

You can interact with the server programmatically using the FastMCP client:

from fastmcp import Client

async with Client("1nce_mcp.py") as client:
    # Get list of products
    products = await client.call_tool("get_all_products")
    print(products)
    
    # Check SIM status
    sim_status = await client.call_tool("get_sim_status", {"iccid": "your_sim_iccid"})
    print(sim_status)

Available Tools

Product Tools

  • get_all_products() - Retrieve all available 1NCE products

Order Tools

  • get_all_orders(page, page_size, sort) - Get list of orders with pagination
  • get_order_by_number(order_number) - Get details of a specific order
  • create_order(products, delivery_address, customer_reference) - Create a new order

SIM Tools

  • get_all_sims(page, page_size, query, sort) - List SIM cards with filtering options
  • get_sim_details(iccid) - Get detailed information about a specific SIM
  • get_sim_status(iccid) - Check the connectivity status of a SIM
  • get_sim_data_quota(iccid) - Check remaining data quota for a SIM
  • get_sim_sms_quota(iccid) - Check remaining SMS quota for a SIM
  • update_sim_status(iccid, status, label, imei_lock) - Update SIM configuration
  • get_sim_usage(iccid, start_date, end_date) - Get usage statistics for a time period
  • get_sim_events(iccid, page, page_size, sort) - Get event history for a SIM
  • reset_sim_connectivity(iccid) - Trigger a connectivity reset for a SIM

Examples

Checking SIM Status

from fastmcp import Client

async with Client("1nce_mcp.py") as client:
    # Check SIM status
    sim_status = await client.call_tool("get_sim_status", {
        "iccid": "8988303000123456789"
    })
    print(f"SIM Status: {sim_status.get('status')}")
    
    # Check data quota
    quota = await client.call_tool("get_sim_data_quota", {
        "iccid": "8988303000123456789"
    })
    print(f"Remaining data: {quota.get('volume')} MB")
    print(f"Expires on: {quota.get('expiry_date')}")

Creating an Order

from fastmcp import Client

async with Client("1nce_mcp.py") as client:
    # Create an order for 5 SIM cards
    order = await client.call_tool("create_order", {
        "products": [{"productId": 1001, "quantity": 5}],
        "customer_reference": "IoT-Project-XYZ"
    })
    print(f"Order created with number: {order.get('order_number')}")

Security

  • The MCP server requires 1NCE API credentials to be set as environment variables
  • Authentication is performed using OAuth 2.0 with Basic Authentication
  • Access tokens are obtained dynamically and not stored persistently
  • The server only exposes necessary API operations, prioritizing read operations over write operations

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

  • 1NCE for providing the IoT connectivity API
  • FastMCP for the MCP server framework
  • Anthropic for Claude AI assistant capabilities

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers