tako-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@tako-mcpShow my electricity usage and cost estimates for yesterday"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
tako-mcp
Octopus Energy Japan GraphQL API の MCP サーバー。
電力の使用量・コスト見積、契約情報、料金プランなどを MCP ツール経由で取得できます。Claude をはじめとする LLM でのエネルギー使用状況の分析に活用できます。
特徴
30分単位の電力消費量・コスト見積の取得
アカウント・契約情報の取得(プロダクト・基本料金含む)
郵便番号からのエリア情報検索
プライバシー重視: 住所等の個人情報はツールレスポンスから除外
Related MCP server: edinet-mcp
必要条件
Node.js 22+
Octopus Energy Japan のアカウント(メールアドレス・パスワード)
使い方
デフォルトは stdio トランスポートで動作します。
OCTOPUS_EMAIL=you@example.com OCTOPUS_PASSWORD=your-password OCTOPUS_ACCOUNT_NUMBER=A-AAAA1111 npx tako-mcpHTTP モード
--http フラグで Streamable HTTP トランスポートに切り替えられます。
OCTOPUS_EMAIL=you@example.com OCTOPUS_PASSWORD=your-password OCTOPUS_ACCOUNT_NUMBER=A-AAAA1111 npx tako-mcp --httpPORT 未指定時は空きポートが自動選択されます。
環境変数
変数名 | 必須 | 説明 |
| Yes | Octopus Energy Japan のログインメールアドレス |
| Yes | Octopus Energy Japan のログインパスワード |
| Yes | アカウント番号(例: |
| No | HTTP モード時のポート番号(デフォルト: 自動選択) |
MCP ツール一覧
ツール | 説明 | 認証 |
| アカウント・契約情報(プロダクト・基本料金含む、住所は除外) | 必要 |
| 30分単位の電力消費量・コスト見積 | 必要 |
| 郵便番号からエリア情報を検索 | 不要 |
MCP リソース一覧
URI | 説明 | 認証 |
| 当日(JST)の30分単位の電力消費量・コスト見積(合計サマリ付き) | 必要 |
クライアント設定
Claude Desktop / Claude Code
{
"mcpServers": {
"tako-mcp": {
"command": "npx",
"args": ["-y", "tako-mcp"],
"env": {
"OCTOPUS_EMAIL": "you@example.com",
"OCTOPUS_PASSWORD": "your-password",
"OCTOPUS_ACCOUNT_NUMBER": "A-AAAA1111"
}
}
}
}HTTP モード
{
"mcpServers": {
"tako-mcp": {
"type": "http",
"url": "http://localhost:<port>/mcp"
}
}
}開発
npm install
npm run dev # tsx で起動
npm run build # tsup でバンドル
npm run typecheck # 型チェック
npm run check # Lint & フォーマット (Biome)ライセンス
MIT
Available Tools
3 toolsget_account_infoA
Get account information including contract status, electricity supply points, active agreements, product details and standing charges. Address is excluded for privacy.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description partially transparent: discloses address exclusion for privacy. However, does not mention other behaviors like data freshness, authentication needed, or error scenarios. Could be more thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with front-loaded purpose. No wasted words; each sentence provides essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, description covers key aspects of what is included and what is excluded. Could mention if it returns current account or multiple accounts, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so schema coverage is 100%. Description adds meaning beyond schema by detailing what data is returned, giving the agent a clear picture of the output content.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Get' and resource 'account information', lists included data fields (contract status, electricity supply points, etc.), and notes excluded data (address for privacy). Clearly distinct from siblings get_electricity_consumption and get_postal_areas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied use when needing account details, but no explicit when-to-use or when-not-to-use compared to alternatives. Lacks guidance on prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_electricity_consumptionA
Get half-hourly electricity consumption data with cost estimates. Returns 30-minute interval readings for the specified period.
| Name | Required | Description | Default |
|---|---|---|---|
| period_to | Yes | End datetime in ISO 8601 format, e.g. 2024-02-01T00:00:00+09:00 | |
| period_from | Yes | Start datetime in ISO 8601 format, e.g. 2024-01-01T00:00:00+09:00 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions cost estimates and 30-minute intervals, but omits details like data freshness, rate limits, authentication needs, or response size. Disclosures are minimal and insufficient for an agent to understand side effects or constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the core action and resource. Every word adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description should explain return structure. It states 'returns 30-minute interval readings' but lacks details on format, nested fields, or cost estimate representations. For a data retrieval tool, this is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters (period_from, period_to) with ISO 8601 formats. The description adds context about half-hourly data and cost estimates, but does not provide additional meaning beyond what the schema offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves half-hourly electricity consumption data with cost estimates, using specific verbs ('Get') and resource ('electricity consumption'). It distinguishes well from sibling tools which are about account info and postal areas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool does but does not provide explicit guidance on when to use it over alternatives. Since siblings are unrelated, the lack of exclusions is less critical, but still no context on prerequisites or best use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_postal_areasA
Look up area information by Japanese postcode. Returns prefecture, city, and area. No authentication required.
| Name | Required | Description | Default |
|---|---|---|---|
| postcode | Yes | Japanese postcode, e.g. 916-0045 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It correctly identifies this as a read-only operation by stating 'look up' and explicitly mentions 'No authentication required'. It also describes the return values. However, it doesn't disclose potential limitations like data freshness or rate limits, which is acceptable for a simple lookup.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that cover the purpose, return values, and authentication requirement. Every word is meaningful, and the structure is front-loaded with the key action and outcome.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter lookup tool without an output schema, the description provides all necessary context: what it does, what it returns, and that it requires no authentication. It is fully complete for an AI agent to correctly select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage for the 'postcode' parameter with an example. The description adds value by specifying the output (prefecture, city, area), which the schema does not provide. This helps the agent understand what the tool returns.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'look up', the resource 'area information by Japanese postcode', and specifies the returned fields (prefecture, city, area). It is easily distinguishable from sibling tools (get_account_info, get_electricity_consumption) which serve entirely different domains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implicitly clear due to the tool's specific domain (postal areas) versus siblings (account info, electricity consumption). It mentions 'No authentication required', indicating public availability. No explicit when-not-to-use guidance is needed given the narrow scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
v1.1.0- First observed
get_account_info - First observed
get_electricity_consumption - First observed
get_postal_areas
TDQS
All three tools have clearly distinct purposes: account info, electricity consumption, and postal area lookup. No overlap exists between them.
All tools follow a consistent 'get_' prefix with a noun, forming a uniform verb_noun pattern.
3 tools is quite low for a server that seems to cover energy management plus an unrelated postal lookup. The scope feels thin.
The server lacks obvious tools for billing, agreement management, or other energy-related operations. The inclusion of a Japanese postal area tool suggests an inconsistent or incomplete domain coverage.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP server that audits the fairness of construction and renovation estimates in Japan. Provides fair-price ranges, overcharge detection, and verifiable unit-cost data based on JCCDB (65,520 items across 402 categories, CC BY 4.0, DOI-backed).
Hosted MCP server for AWS cloud spend: service breakdowns, anomalies, savings and forecasts.
An MCP server giving access to Grafana dashboards, data and more.
MCP server for Japan geodata: cadastral lot numbers (chiban) and reverse geocoding, for AI agents.
Related MCP Servers
- FlicenseBqualityDmaintenanceA server that allows you to explore the GitHub GraphQL schema and execute GraphQL queries through MCP client tools, enabling efficient data retrieval from GitHub with reduced token consumption.44-
- FlicenseNot gradedqualityDmaintenanceAn MCP server that interfaces with the Japanese EDINET API v2 to search, download, and extract text from financial disclosure documents. It enables users to browse disclosure lists, retrieve document originals, and perform natural language searches for specific financial filings.-
- FlicenseNot gradedqualityDmaintenanceAn unofficial MCP server that integrates with the hokan Insurance CRM API v2 to manage customer data, schedules, and tasks. It also features specialized tools for Japanese insurance law compliance, including intent confirmation and regulatory check generation.-
- AlicenseAqualityDmaintenanceMCP server for the German energy market master data register (MaStR), enabling querying of energy units, actors, grid connections, and more via 21 SOAP and public tools.76MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/arrow2nd/tako-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server