TM OIP MCP for AI. Automate Service Orders and Billing Lookups
Works with every AI agent you already use
…and any MCP-compatible client








Connect to your AI in seconds.
Telekom Malaysia (TM) OIP MCP Server connects your AI agent directly to TM's service provisioning backend. It manages the full lifecycle of telecom services, letting you programmatically check coverage, list product plans, file new orders for broadband or mobile lines, and retrieve billing data.
What your AI can do
Check service availability
Verifies if broadband service is available at a specified street address.
Create service order
Submits an order to set up new broadband or mobile services for a customer.
Get account billing
Retrieves current billing details and general account information for the user.
Verify if broadband or mobile services reach a specific street address before any commitment is made.
Retrieve current product offerings, including technical specs and pricing for various broadband and mobile plans.
Create and track the process for new service installations or existing line upgrades programmatically.
Pull detailed reports on data consumption patterns for a specific, active service ID over time.
Retrieve account-level billing details and current status using natural language input.
Ask an AI about this
Waiting for input…
Telekom Malaysia (TM) OIP: 10 Tools for Telecom Management
These ten tools let your agent handle the full telecom service lifecycle—from checking if a line works at an address to submitting the final order and monitoring usage.
Make your AI actually useful.
Add this MCP to Claude, Cursor, or Windsurf and your AI stops guessing. It gets real tools to look things up, take action, and handle the stuff you keep doing by hand.
Start using Telekom Malaysia (TM) OIP on VinkiusCheck Service Availability
Verifies if broadband service is available at a specified street address.
Create Service Order
Submits an order to set up new broadband or mobile services for a customer.
Get Account Billing
Retrieves current billing details and general account information for the user.
Get Offering Details
Fetches detailed specifications and pricing for one specific product plan ID.
Get Service Status
Gets the real-time operational status for an existing, active service line.
Get Order Details
Checks the current status of a service order that was previously submitted.
Get Usage Report
Generates a detailed report tracking data consumption for a specific service ID over time.
List Product Offerings
Retrieves a comprehensive list of all available broadband and telecom product plans.
List Active Services
Lists all services currently associated with the account in the system inventory.
List Trouble Tickets
Lists any open or active support tickets related to network issues for the account.
Security and governance baked right in.
Pick your AI client below to get set up. Just create a Vinkius account, subscribe, and you're instantly up and running. We handle the entire backend infrastructure, delivering out-of-the-box support for HTTPS Streamable, SSE, and OAuth2—zero messy routing required.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with Telekom Malaysia (TM) OIP, then connect any of our 5,100+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 5,100+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by Telekom Malaysia. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This connection provides 10 powerful capabilities that interface natively with Claude, ChatGPT, Cursor, and other compatible AI platforms. No middleware. No custom integration required.
Checking service availability shouldn't require three different web forms.
Today, verifying if broadband is available at a new site means bouncing between the main TM website and sometimes even calling customer support. You fill out an address form in one place, get a vague 'maybe' response, and then have to guess which plan ID or technical requirement you need for your next step.
With this MCP server, you ask your agent directly: 'Is UniFi Home 100Mbps available at 123 Jalan Ampang?' The agent runs `check_service_availability` and gets a definitive answer—and sometimes even the supported plan IDs—all in one go. No clicking required.
get_usage_report: Get data consumption reports instantly.
Manually compiling usage reports means downloading a CSV, opening it in Excel, and manually calculating the totals for different billing cycles. If you need to compare 30 days of usage against a limit, that’s hours of spreadsheet work.
Now, running `get_usage_report` hands you structured data consumption details directly into your agent's context. You immediately see the total consumed data and even which weeks saw the highest spikes. It's instant analysis.
What your AI can actually do with this
This MCP connects your AI agent straight into Telekom Malaysia's service provisioning backend. You can manage the entire lifecycle of telecom services—from checking if coverage even reaches an address, to submitting a full order for a new line, and pulling detailed billing reports. It’s everything you need to automate how you handle broadband or mobile accounts.
Discovery and Planning:
You gotta know what's available before you pitch anything. You can use list_product_offerings to get a massive list of every single telecom product plan out there, plus the details on each one via get_offering_details. This lets your agent pull specs and pricing for any specific broadband or mobile package.
Before you even commit, though, you'll want to run check_service_availability against a street address. That tells you right away if the service lines can actually reach that location.
Account Setup and Orders:
When you're ready to sell something, you submit an order using create_service_order. This handles setting up brand new services or upgrading existing ones for a customer. You don't want to lose track of what you sent out, so the system lets you check on that process status anytime with get_order_details.
To keep tabs on everything currently active, you can run list_active_services which shows every service associated with an account in the inventory.
Monitoring and Usage:
Once the line is live, monitoring it is key. You get real-time operational status for any existing service using get_service_status. If you need to check how much data a user's service has been eating up over time, run get_usage_report against that specific service ID. For troubleshooting, your agent can pull every open or active support ticket related to network issues by calling list_trouble_tickets.
Billing and Account Management:
For the money stuff, you've got two main tools. First, run get_account_billing to grab current billing details and general account info for the user. Second, if you need a complete rundown of every service attached to the customer, list_active_services gives you that full list. You can also pull up all historical usage reports using data from get_usage_report.
Basically, this server lets your agent handle everything: checking coverage via check_service_availability, finding product specs with get_offering_details, submitting orders via create_service_order, tracking service status with get_service_status, pulling billing records with get_account_billing, and getting usage data using get_usage_report.
019d848f-1d95-7302-b7f4-caf4f01e8003 Here's how it actually works
The bottom line is: you plug in your TM developer keys to let your agent talk directly to the telecommunication backend.
First, subscribe to the server. You'll need to register at the TM OIP Developer Portal.
Next, create an application in the API Manager and generate your Consumer Key and Secret credentials.
Finally, pass those credentials into the fields below so your AI agent can begin running telecom workflows against the live TMF APIs.
Who is this actually for?
System Integrators and Property Managers. You're the person who has to connect a client's needs (e.g., 'I need 10 lines at this building') to complex, multi-stage vendor backends. You hate having to manually click through five different portals just to check availability and file an order.
Automating the connection between a client's CRM/portal and TM’s actual service provisioning system.
Bulk checking broadband availability for dozens of units across a single building before sales or tenant move-ins happen.
Monitoring real-time data usage and incident reports across multiple organizational accounts without logging into the main dashboard.
What Changes When You Connect
You can instantly verify coverage using check_service_availability. Instead of manually checking a website with an address form, your agent runs this tool to confirm if broadband lines are available at a specific Kuala Lumpur street address.
Stop guessing about plans. Use list_product_offerings and get_offering_details together. You pull the whole catalog list, then drill into one ID to get precise technical specs—all without leaving your chat window.
The billing headache ends with get_account_billing. Instead of calling customer support or navigating complex PDF statements, you ask your agent for 'last month's bill,' and it runs this tool immediately.
Monitoring usage used to mean logging into a dashboard. Now, running get_usage_report pulls 30 days of data consumption directly into the workflow for immediate analysis.
You can track service deployments end-to-end. File an order with create_service_order, and then minutes later use get_order_details to check if it moved from 'Submitted' to 'In Progress.'
Need a quick status update? Running list_trouble_tickets gives you an immediate rundown of all open network issues, preventing redundant support calls.
See it in action
New Client Site Assessment
A Property Manager is onboarding a new corporate tenant. They first run check_service_availability for the building's main address. Once confirmed, they use list_product_offerings to select the right plan and then execute create_service_order immediately, submitting the whole process without manual data entry.
Troubleshooting a Service Outage
A Network Ops engineer gets an alert. They first run list_active_services to confirm which lines are affected. Next, they use get_service_status on the primary line and then check list_trouble_tickets to see if support has already opened a ticket for that incident.
Quarterly Billing Audit
A System Integrator needs to verify billing discrepancies. They run get_account_billing first, and then use list_active_services to confirm that all expected services are accounted for before the payment cycle closes.
Product Comparison Shopping
A client wants to switch plans. They ask the agent to run list_product_offerings, identify three potential upgrades, and then use get_offering_details on each one to compare the exact data caps and speeds before making a decision.
The honest tradeoffs
Checking everything via manual web forms
Logging into the TM website, navigating to 'Service Check,' entering the address, waiting for the page to load, and then opening a second tab to check billing details.
Use your agent. Run check_service_availability first. If available, use list_product_offerings, and if you need payment info, run get_account_billing. Keep it in the chat.
Assuming a single tool handles everything
Thinking that calling create_service_order is enough. You might submit an order but have no way of knowing if it failed or what its current status is.
Always follow up immediately after submitting an order with get_order_details. This confirms the submission and gives you a real-time tracking number.
Confusing usage data with billing
Asking for 'my total bill' when what you actually need is to know how much data was used in the last month. The two pieces of info are handled differently.
Use get_account_billing for payment amounts and dates. Use get_usage_report specifically for monitoring actual bandwidth consumption.
When It Fits, When It Doesn't
Use this server if your workflow requires managing the full telecom service lifecycle: checking physical availability, cataloging plans, submitting orders, or pulling usage/billing data. It handles complex multi-step processes (e.g., check availability -> pick plan -> submit order). Don't use it if you just need a simple fact, like 'What is Kuala Lumpur's zip code?' Use this if the output of one tool (like an address from check_service_availability) becomes the required input for another tool (like create_service_order). If your task is purely informational and doesn't involve creating or changing a record, you might be better off with a simple database lookup API instead.
Questions you might have
How do I find out what broadband plans are available using list_product_offerings? +
Running list_product_offerings gives you a full catalog of all current plans. You can then use the specific IDs returned from that tool to call get_offering_details for deep-dive specs and pricing.
Can I check if an order I placed last week was successful using get_order_details? +
Yes. You pass the service order ID into get_order_details. The tool returns the current status, telling you exactly where it is in the fulfillment pipeline (e.g., 'Pending Installation' or 'Complete').
What if my address isn't supported? Does check_service_availability tell me why? +
The tool confirms service reachability for a given street address. If it fails, the response provides technical details on what services are not viable at that location.
How do I get my bill details and check if I have any open complaints? Do I need two separate calls? +
You can run get_account_billing for payment info, and then immediately follow up with list_trouble_tickets. These tools manage different data domains (Finance vs. Support) but give you the full operational picture.
When I use `create_service_order`, what information do I need to ensure successful service provisioning? +
You must provide the customer's complete physical address, desired plan ID, and a valid billing account identifier. The system validates these inputs against TM’s core records before submitting the order.
If `get_service_status` returns an error code, how do I determine if it’s my end or their end? +
Check the specific error code returned by the call. If the service is marked 'Suspended' or 'Inactive', use list_trouble_tickets to check for existing reported network outages.
How can I efficiently monitor multiple locations using `list_active_services`? +
The tool accepts an array of service IDs, allowing you to pull inventory status across multiple sites in a single request. This is ideal for property managers handling many properties.
When I run `get_usage_report`, what parameters control the data granularity and time frame? +
You define the date range using start and end timestamps, and you specify the breakdown frequency (e.g., daily or weekly) in the payload. This lets you focus only on the consumption patterns that matter.
Is this API compliant with TM Forum standards? +
Yes! TM is a global leader in TMF compliance. This MCP uses standard endpoints like TMF 620 (Catalog) and TMF 641 (Ordering) for maximum interoperability.
Can I check if UniFi is available at a specific address? +
Yes! Use the check_service_availability tool with the full street address. Your agent will return the qualification results for broadband services at that location.
How do I monitor data consumption for an active account? +
Use the get_usage_report tool with the Service ID. It will retrieve real-time volume data and usage patterns associated with that specific broadband or mobile line.
We've already built the connector for TM OIP. Just plug in your AI agents and start using Vinkius.
No hosting. No infrastructure. No complex setup.
All 10 tools are live and waiting.
You're up and running in seconds.
Vinkius gives your AI agents access to the full catalog of app connectors, all fully managed, secure, and enterprise-ready. One subscription, every tool you need.
Built, hosted, and secured by Vinkius. You just connect and go.