maine.gov API
Live Maine Public Utilities Commission HTML standard-offer price tables for CMP residential and small-commercial customers, including archived docket entries, intervals, suppliers, announcements and supporting link metadata. Linked document contents are outside coverage and are never fetched; the API does not calculate bundled or delivery prices.
Endpoint health
Loading verification…
Connect your agent
Connect through MCP so your agent can find this API, read its docs, and call its endpoints.
Add the server from your terminal.
claude mcp add --transport http agent-data https://agent-data.motie.dev/mcpIn Claude Code, run /mcp, select agent-data, then Authenticate. Sign in to your agent-data account in the browser.
Then ask your agent to use the maine.gov API for your task.
Call it over HTTP
Get an API keySign up free, generate an API key, and set it as AGENT_DATA_API_KEY in your environment. Your first 100 calls each month are free.
curl --request GET --get 'https://api.agent-data.dev/maine-gov/v1/rates' \
--header "Authorization: Bearer $AGENT_DATA_API_KEY"Endpoints
Inputs and response fields for every endpoint in this API.
GETRates/v1/rates
Fetch the full bounded source page; no pagination or implicit filters.
Input
No input parameters.
Response
recordsobject[]records[].idstringrecords[].linksobject[]records[].links[].urlstringrecords[].links[].hrefstringrecords[].links[].labelstringrecords[].links[].contextstringrecords[].docketstringrecords[].statusstringrecords[].captionstringrecords[].headersstring[]records[].periodsobject[]records[].periods[].pricestringrecords[].periods[].intervalstringrecords[].periods[].positionintegerrecords[].periods[].price_unitstringrecords[].periods[].price_valuestringrecords[].periods[].price_columnstringrecords[].periods[].interval_columnstringrecords[].sectionstringrecords[].id_originstringrecords[].row_indexintegerrecords[].suppliersobject[]records[].suppliers[].textstringrecords[].suppliers[].columnstringrecords[].suppliers[].entriesobject[]records[].suppliers[].entries[].namestringrecords[].suppliers[].entries[].sharestringrecords[].table_indexintegerrecords[].docket_cell_textstringrecords[].announcement_refsstring[]records[].customer_class_labelstringrecords[].delivery_utility_labelstringtransportstringpage_titlestringsource_urlstringretrieved_atstring (date-time)announcementsobject[]announcements[].linksobject[]announcements[].links[].urlstringannouncements[].links[].hrefstringannouncements[].links[].labelstringannouncements[].links[].contextstringannouncements[].tablesobject[]announcements[].tables[].rowsobject[]announcements[].tables[].rows[].0stringannouncements[].tables[].headersstring[]announcements[].headingstring | nullannouncements[].sectionstringannouncements[].footnotesstring[]announcements[].row_indexintegerannouncements[].paragraphsstring[]announcements[].table_indexintegerannouncements[].published_date_textstring | nullsource_node_idstring | nulldocument_coveragestringGETRates by rate id/v1/rates/{rate_id}
Fetch the current page and select a published docket; invalid IDs receive JSON 404.
Input
rate_idRequiredPath · stringPublished docket identifier from the live rates list
Example: 2025-00157
Response
recordobjectrecord.idstringrecord.linksobject[]record.links[].urlstringrecord.links[].hrefstringrecord.links[].labelstringrecord.links[].contextstringrecord.docketstringrecord.statusstringrecord.captionstringrecord.headersstring[]record.periodsobject[]record.periods[].pricestringrecord.periods[].intervalstringrecord.periods[].positionintegerrecord.periods[].price_unitstringrecord.periods[].price_valuestringrecord.periods[].price_columnstringrecord.periods[].interval_columnstringrecord.sectionstringrecord.id_originstringrecord.row_indexintegerrecord.suppliersobject[]record.suppliers[].textstringrecord.suppliers[].columnstringrecord.suppliers[].entriesobject[]record.suppliers[].entries[].namestringrecord.suppliers[].entries[].sharestringrecord.table_indexintegerrecord.docket_cell_textstringrecord.announcement_refsstring[]record.customer_class_labelstringrecord.delivery_utility_labelstringtransportstringpage_titlestringsource_urlstringretrieved_atstring (date-time)announcementsobject[]announcements[].linksobject[]announcements[].links[].urlstringannouncements[].links[].hrefstringannouncements[].links[].labelstringannouncements[].links[].contextstringannouncements[].tablesobject[]announcements[].tables[].rowsobject[]announcements[].tables[].rows[].0stringannouncements[].tables[].headersstring[]announcements[].headingstring | nullannouncements[].sectionstringannouncements[].footnotesstring[]announcements[].row_indexintegerannouncements[].paragraphsstring[]announcements[].table_indexintegerannouncements[].published_date_textstring | nullsource_node_idstring | nulldocument_coveragestringDon’t see the endpoint you need?
Ask agent-data to add an endpoint or return more fields. Extensions are free and keep existing endpoints working.
An account is required to submit an extension. Prepare your request, then sign in to build.