Bring Billing Data
to Vercel AI SDK
Create your Vinkius account to connect UtilityAPI to Vercel AI SDK and start using all 12 AI tools in minutes. Fully managed, enterprise secure, and ready to use without writing a single line of code. No hosting, no server setup — just connect and start using.
Compatible with every major AI agent and IDE
What is the UtilityAPI MCP Server?
Connect UtilityAPI to any AI agent and access utility billing history, granular usage intervals, and meter data from over 100 US utility companies — including PG&E, Southern California Edison, Con Edison, National Grid, and more — through a single unified API.
What you can do
- Supported Utilities — List all 100+ utility companies available through the platform with their codes and data types
- Customer Authorizations — Create and manage authorization forms for customers to securely share their utility data
- Meter Management — List all authorized utility meters (service points) with addresses, fuel types, and collection status
- Billing History — Retrieve complete billing history with costs, usage amounts (kWh/therms), and billing periods
- Usage Intervals — Access granular smart meter interval data (15-min or hourly readings) for detailed energy analysis
- Historical Collection — Activate backfilling of historical utility data for newly authorized meters
- Combined Meter Data — Get both bills and intervals in a single call for comprehensive energy analysis
- Event Monitoring — Monitor webhook events for authorization flows, data collection status, and errors
- Demo Testing — Test authorization forms with simulated residential and commercial scenarios before production
- Billing Summaries — Track API usage costs and billing periods for your UtilityAPI account
How it works
- Subscribe to this server
- Enter your UtilityAPI API Token
- Start accessing utility billing and usage data from Claude, Cursor, or any MCP-compatible client
UtilityAPI eliminates the need to integrate with each utility company individually — one API connects to 100+ providers.
Who is this for?
- Energy Consultants — analyze customer utility bills and usage patterns to recommend efficiency improvements and cost savings
- Solar Installers — access historical electricity usage to size solar systems accurately and calculate ROI for proposals
- FinTech & Lending — verify utility payment history and spending patterns for energy efficiency loan qualification
- Property Managers — monitor utility costs across portfolios and identify anomalies in billing or consumption
Built-in capabilities (12)
Send an array of meter_uids (from list_meters) to begin backfilling historical data. Once activated, the system will start collecting all available historical data for those meters. Use this after a new customer authorization to ensure you get their complete usage history, not just future data. Data collection may take time depending on the utility and data availability. Activate historical data collection for specific utility meters
Returns a form_uid that can be used to redirect customers to the authorization flow. The utilityCode parameter must be a valid utility code (from list_utilities). Optional scenario parameter controls the test mode: "residential" (home customer), "commercial" (business customer), or other utility-specific scenarios. Use this to set up new data sharing agreements with utility customers. Create a new authorization form for customers to share their utility data
Includes billing periods, costs, and meter counts for your UtilityAPI subscription. Optional meterId parameter retrieves summary for a specific meter. Use this to track API usage costs and understand billing periods for your UtilityAPI account. Get billing account summaries for UtilityAPI accounting
Returns utility bills with: start/end dates, total cost (in dollars), energy usage (kWh for electric, therms for gas), utility name, and meter association. The meters parameter is required — provide a single meter UID or comma-separated multiple UIDs. Use this to analyze customer spending on utilities, identify high-cost periods, or provide billing insights. Bills are only available for meters that have been authorized and are actively collecting data. Get utility billing history for authorized meters
Events include: new authorization created, meter data available, collection completed, errors, etc. Use this to monitor the status of data collection workflows, debug authorization issues, or build real-time notifications for when customer data becomes available. Get webhook events from UtilityAPI (authorizations, data collection status)
Templates define what information is collected during the customer authorization process. Use this to understand available form configurations before creating custom authorization forms. Each template has a unique ID used when creating new forms. Get authorization form templates used for customer data sharing
This is granular consumption data showing energy usage over time intervals (typically 15-minute or hourly readings from smart meters). Each interval includes: start/end timestamp, usage value (kWh or therms), and cost information. The meters parameter is required — provide meter UID(s). Use this for detailed energy analysis, identifying peak usage patterns, demand response analysis, or building energy models. This is more granular than bills — ideal for time-series analysis. Get detailed usage interval data (hourly/15-min) for authorized meters
This is a convenience tool that combines results from get_bills and get_intervals for one meter. Returns: complete bill history (dates, costs, usage) plus granular interval data (time-series readings). Use this when you need a complete picture of a customer's utility data — both the financial (billing) and technical (usage patterns) aspects — for comprehensive energy analysis. The meterUid must be a valid meter UID from list_meters. Get combined billing and interval data for a specific meter in one call
Each authorization represents a customer who has granted access to their utility data. Optional referrals parameter filters by a specific referral code (from test submissions). Set includeMeters=true to also return associated meter data with each authorization. Use this to track which customers have authorized data access and get their referral codes for meter queries. List all customer data sharing authorizations
Each meter represents a specific utility service connection (electricity or gas) at a customer location. Meter data includes: utility name, service address, fuel type (electric/gas), collection status, and the unique meter_uid used for fetching bills and intervals. Optional authorizationId filters meters to a specific customer authorization. Use the meter_uid with get_bills and get_intervals to retrieve usage data. List all authorized utility meters (service points)
Each utility includes its name, utility code (used for form submissions), and supported data types. Use this to find the correct utility code when creating authorization forms or querying utility-specific data. Common utilities include: PG&E (Pacific Gas & Electric), SCE (Southern California Edison), Con Edison, National Grid, and many others across the US. List all supported utility companies available through UtilityAPI
Returns a referral_code that can be used to retrieve the test authorization and associated meter data. Use this during development and testing to verify form configurations work correctly before deploying to production. The formId is the uid returned by create_auth_form. The referral_code returned can be used with list_authorizations to retrieve test data. Test an authorization form to simulate customer authorization and get a referral code
Why Vercel AI SDK?
The Vercel AI SDK gives every UtilityAPI tool full TypeScript type inference, IDE autocomplete, and compile-time error checking. Connect 12 tools through Vinkius and stream results progressively to React, Svelte, or Vue components. works on Edge Functions, Cloudflare Workers, and any Node.js runtime.
- —
TypeScript-first: every MCP tool gets full type inference, IDE autocomplete, and compile-time error checking out of the box
- —
Framework-agnostic core works with Next.js, Nuxt, SvelteKit, or any Node.js runtime. same UtilityAPI integration everywhere
- —
Built-in streaming UI primitives let you display UtilityAPI tool results progressively in React, Svelte, or Vue components
- —
Edge-compatible: the AI SDK runs on Vercel Edge Functions, Cloudflare Workers, and other edge runtimes for minimal latency
UtilityAPI in Vercel AI SDK
Why run UtilityAPI with Vinkius?
The UtilityAPI connection runs on our fully managed, secure cloud infrastructure. We handle the hosting, maintenance, and security so you don't have to deal with servers or code. All 12 tools are ready to work instantly without any complex setup.
You stay in complete control of your data. Your AI only accesses the information you approve, keeping your sensitive passwords and private details completely safe. Plus, with automatic optimizations, your AI works faster and more efficiently.

* Every connection is hosted and maintained by Vinkius. We handle the security, updates, and infrastructure so you don't have to write code or manage servers. See our infrastructure
Over 4,000 integrations ready for AI agents
Explore a vast library of pre-built integrations, optimized and ready to deploy.
Connect securely in under 30 seconds
Generate tokens to authenticate and link external services in a single step.
Complete visibility into every agent action
Audit live requests, latency, success rates, and active security compliance policies.
Optimize spending and track token ROI
Analyze real-time token consumption and cost metrics detailed by connection.




Explore our live AI Agents Analytics dashboard to see it all working
This dashboard is included when you connect UtilityAPI using Vinkius. You will never be left in the dark about what your AI agents are doing with your tools.
UtilityAPI and 4,000+ other AI tools. No hosting, no code, ready to use.
Professionals who connect UtilityAPI to Vercel AI SDK through Vinkius don't need to write code, manage servers, or worry about security. Everything is pre-configured, secure, and runs automatically in the background.
Raw MCP | Vinkius | |
|---|---|---|
| Ready-to-use MCPs | Find and configure each manually | 4,000+ MCPs ready to use |
| Connection Setup | Manual coding & server setup | 1-click instant connection |
| Server Hosting | You host it yourself (needs 24/7 uptime) | 100% hosted & managed by Vinkius |
| Security & Privacy | Stored in plaintext config files | Bank-grade encrypted vault |
| Activity Visibility | Blind execution (no logs or tracking) | Live dashboard with real-time logs |
| Cost Control | Runaway AI token spend risk | Automatic budget limits |
| Revoking Access | Must delete files or code to stop | 1-click disconnect button |
How Vinkius secures
UtilityAPI for Vercel AI SDK
Every request between Vercel AI SDK and UtilityAPI is protected by our secure gateway. We automatically keep your sensitive data private, prevent unauthorized access, and let you disconnect instantly at any time.
Frequently asked questions
How do I get access to a customer's utility billing and usage data?
First, create an authorization form using create_auth_form with the customer's utility code. Share the form URL with the customer to complete authorization. Once authorized, use list_meters to find their service points, then get_bills and get_intervals with the meter UID to retrieve their data. You can also activate historical collection with activate_historical_collection to backfill past data.
What's the difference between bills and intervals data?
Bills provide monthly (or billing cycle) summaries: total cost, total usage (kWh/therms), and billing period dates. Intervals provide granular time-series data from smart meters — typically 15-minute or hourly readings showing exact consumption patterns throughout the day. Use bills for cost analysis and trend overview; use intervals for detailed energy modeling, peak demand identification, and time-of-use analysis.
Which utility companies are supported?
UtilityAPI supports 100+ US utilities including PG&E (Pacific Gas & Electric), Southern California Edison (SCE), Con Edison, National Grid, SDG&E, LADWP, CenterPoint Energy, and many more. Use the list_utilities tool to see the complete, up-to-date list of supported utilities with their codes. Coverage varies by state and continues to expand.
Can I test the authorization flow before going to production?
Yes! Use create_auth_form to create a form, then test_form_submission with utility='DEMO' and scenario='residential' (or 'commercial'). This simulates a customer authorizing their data and returns a referral_code. Use this code with list_authorizations?referrals=YOUR_CODE&include=meters to retrieve test authorization and meter data without needing a real customer.
How does the Vercel AI SDK connect to MCP servers?
Import createMCPClient from @ai-sdk/mcp and pass the server URL. The SDK discovers all tools and provides typed TypeScript interfaces for each one.
Can I use MCP tools in Edge Functions?
Yes. The AI SDK is fully edge-compatible. MCP connections work on Vercel Edge Functions, Cloudflare Workers, and similar runtimes.
Does it support streaming tool results?
Yes. The SDK provides streaming primitives like useChat and streamText that handle tool calls and display results progressively in the UI.
createMCPClient is not a function
Install: npm install @ai-sdk/mcp
Explore More MCP Servers
View all →
Beisen (iTalentX)
10 toolsComprehensive HR cloud platform — manage employees, attendance, and recruitment via AI.

Gift Up!
12 toolsManage gift card orders, track balances, and process redemptions via AI agents with Gift Up!.

Foodpanda
13 toolsAutomate food delivery operations via Foodpanda — manage vendor catalogs, track orders, and control restaurant status directly from any AI agent.

DNSimple
77 toolsManage domains, DNSSEC, and email forwarding via DNSimple — list accounts, control domains, and manage DS records directly from your AI agent.
