弹性云计费MCP服务器
最小模型上下文协议(MCP)服务器为LLM工具公开弹性云计费/使用数据。
动机
- 在基于LLM的编辑器的帮助下,满足成本跟踪和陈旧环境清理需求(在各种项目的实验和开发阶段)。
_附注:任何可能以任何方式影响当前部署或创建新部署的操作都不是故意实施的。如果你想要这样的功能,请给我留言,考虑贡献和/或赞助它。_
可用工具
- get_部署:获取部署列表。
- get_部署:获取特定部署。需要部署_id。
- get_items_costs:按环境/部署对日期范围进行成本细分
- get_instances_costs(开始日期:日期时间,结束日期:日期日期时间):获取日期范围内所有实例的相关成本。
- 获取实例成本:获取一个日期范围内单个实例的成本。
- get_environment_cost:返回一段时间内环境的总成本(ECU)。
- switch_account:在Elastic Cloud帐户之间切换(假设配置了多个帐户)。
- get_current_account:返回当前活动帐户信息。
- list_计数:根据配置列出可用帐户
.env文件夹。
配置
为了使用它,您需要在下至少有一个环境文件 accounts 目录。环境文件需要以开头 .env. 并以您希望为该org_id命名的名称结尾。 示例 .env.dev 这也是当前配置中的默认值。 其他选项包括(检查 config.py) :
accounts_dir帐户目录的环境文件(默认为accounts)elastic_base_url弹性云基础url(默认为“https://api.elastic-cloud.com")billing_base_url计费基础url(“https://billing.elastic-cloud.com")default_account启动期间将使用的初始帐户(默认为dev)
在帐户文件中,您需要设置以下变量: ELASTIC_API_KEY ELASTIC_ORG_ID
快速开始
编辑和移动 env.example 到 .env.dev 进入 accounts dir。
需求
你需要 uv 因为它是在当前设置的 mcp.json. 如果您不想使用它,请使用正确的python环境更新json(requirement.txt 尚未提供。)
IDE内
使用 .cursor/mcp.json(也可以加载到vscode中)
使用代理
(你需要 mcpo) 像这样使用mcpo: uvx mcpo --config .cursor/mcp.json --hot-reload --port 8080 这也将使您能够检查 swagg-docs (假设您在本地运行它)
许可证
该项目根据麻省理工学院许可证获得许可
赞助
还没有,如果你想赞助开发工作或只是说谢谢,请联系我们。
