{"id":13461572,"url":"https://github.com/opencost/opencost","last_synced_at":"2026-07-13T01:01:36.280Z","repository":{"id":37076403,"uuid":"178079595","full_name":"opencost/opencost","owner":"opencost","description":"Cost monitoring for Kubernetes workloads and cloud costs","archived":false,"fork":false,"pushed_at":"2026-07-08T23:22:21.000Z","size":56537,"stargazers_count":6628,"open_issues_count":251,"forks_count":836,"subscribers_count":52,"default_branch":"develop","last_synced_at":"2026-07-09T01:10:59.958Z","etag":null,"topics":["aws","azure","cncf","cost","cost-optimization","finops","gcp","k8s","kubernetes","monitoring","opencost","prometheus"],"latest_commit_sha":null,"homepage":"http://opencost.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/opencost.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":"GOVERNANCE.md","roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":"MAINTAINERS.md","copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2019-03-27T21:49:05.000Z","updated_at":"2026-07-08T08:06:12.000Z","dependencies_parsed_at":"2025-12-11T23:14:29.076Z","dependency_job_id":null,"html_url":"https://github.com/opencost/opencost","commit_stats":{"total_commits":2917,"total_committers":147,"mean_commits":"19.843537414965986","dds":0.8234487487144326,"last_synced_commit":"805b231751843b995e6c56748d9b2d6abf7420bf"},"previous_names":["kubecost/cost-model","kubecost/opencost"],"tags_count":578,"template":false,"template_full_name":null,"purl":"pkg:github/opencost/opencost","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencost%2Fopencost","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencost%2Fopencost/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencost%2Fopencost/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencost%2Fopencost/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/opencost","download_url":"https://codeload.github.com/opencost/opencost/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencost%2Fopencost/sbom","scorecard":{"id":393660,"data":{"date":"2025-08-15T00:39:42Z","repo":{"name":"github.com/opencost/opencost","commit":"6739999170be03a0b42b565cae270dd4df892669"},"scorecard":{"version":"v5.1.1","commit":"cd152cb6742c5b8f2f3d2b5193b41d9c50905198"},"score":8.4,"checks":[{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":-1,"reason":"internal error: internal error: invalid GitHub workflow:\n:245:0: could not parse as YAML: yaml: line 245: did not find expected key [syntax-check]","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#pinned-dependencies"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#maintained"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#security-policy"}},{"name":"Token-Permissions","score":-1,"reason":"internal error: internal error: invalid GitHub workflow:\n:245:0: could not parse as YAML: yaml: line 245: did not find expected key [syntax-check]","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"internal error: internal error: invalid GitHub workflow:\n:245:0: could not parse as YAML: yaml: line 245: did not find expected key [syntax-check]","details":null,"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#packaging"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#dependency-update-tool"}},{"name":"Dangerous-Workflow","score":-1,"reason":"internal error: internal error: invalid GitHub workflow:\n:245:0: could not parse as YAML: yaml: line 245: did not find expected key [syntax-check]","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":2,"reason":"badge detected: InProgress","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#cii-best-practices"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#signed-releases"}},{"name":"SAST","score":-1,"reason":"internal error: internal error: invalid GitHub workflow:\n:245:0: could not parse as YAML: yaml: line 245: did not find expected key [syntax-check]","details":null,"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#sast"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#license"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#branch-protection"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":7,"reason":"3 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GO-2025-3553 / GHSA-mh63-6h87-95cp","Warn: Project is vulnerable to: GO-2022-0635","Warn: Project is vulnerable to: GO-2022-0646"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#vulnerabilities"}},{"name":"CI-Tests","score":10,"reason":"30 out of 30 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#ci-tests"}},{"name":"Contributors","score":10,"reason":"project has 11 contributing companies or organizations","details":["Info: found contributions from: HackBerkeley, ParksOnTheAir, adapt-api, coreweave, grafana, ibm, kubecost, kubecost/apptio (owned by ibm), microsoft, opencost, wiz"],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/cd152cb6742c5b8f2f3d2b5193b41d9c50905198/docs/checks.md#contributors"}}]},"last_synced_at":"2025-08-18T18:26:06.650Z","repository_id":37076403,"created_at":"2025-08-18T18:26:06.650Z","updated_at":"2025-08-18T18:26:06.650Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35406584,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-12T02:00:06.386Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","azure","cncf","cost","cost-optimization","finops","gcp","k8s","kubernetes","monitoring","opencost","prometheus"],"created_at":"2024-07-31T11:00:44.968Z","updated_at":"2026-07-13T01:01:36.274Z","avatar_url":"https://github.com/opencost.png","language":"Go","funding_links":[],"categories":["Go","Continuous Monitoring","By Industry","Tools and Libraries","Cloud cost management","Repositories","By Language","azure","语音识别与合成_其他","Cost \u0026 Governance","Tooling— Observability and Cost Optimization","🚀 DevOps \u0026 Infrastructure"],"sub_categories":["Container Orchestration","DevOps","Miscellaneous","Threat modelling","3. Run it locally","Go","资源传输下载"],"readme":"[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/6219/badge)](https://www.bestpractices.dev/projects/6219)\n[![Gurubase](https://img.shields.io/badge/Gurubase-Ask%20OpenCost%20Guru-006BFF)](https://gurubase.io/g/opencost)\n\n![](./opencost-header.png)\n\n# OpenCost — your favorite open source cost monitoring tool for Kubernetes and cloud spend\n\nOpenCost give teams visibility into current and historical Kubernetes and cloud spend and resource allocation.\nThese models provide cost transparency in Kubernetes environments that support multiple applications, teams, departments, etc.\nIt also provides visibility into the cloud costs across multiple providers.\n\nOpenCost was originally developed and open sourced by [Kubecost](https://kubecost.com). This project combines a [specification](/spec/) as well as a Golang implementation of these detailed requirements. The web UI is available in the [opencost/opencost-ui](http://github.com/opencost/opencost-ui) repository.\n\n[![OpenCost UI Walkthrough](./ui/src/thumbnail.png)](https://youtu.be/lCP4Ci9Kcdg)\n*OpenCost UI Walkthrough*\n\nTo see the full functionality of OpenCost you can view [OpenCost features](https://opencost.io). Here is a summary of features enabled:\n\n- Real-time cost allocation by Kubernetes cluster, node, namespace, controller kind, controller, service, or pod\n- Multi-cloud cost monitoring for all cloud services on AWS, Azure, GCP\n- Dynamic on-demand k8s asset pricing enabled by integrations with AWS, Azure, and GCP billing APIs\n- Supports on-prem k8s clusters with custom CSV pricing\n- Allocation for in-cluster K8s resources like CPU, GPU, memory, and persistent volumes\n- Easily export pricing data to Prometheus with /metrics endpoint ([learn more](https://www.opencost.io/docs/installation/prometheus))\n- Carbon costs for cloud resources\n- MCP support\n- **AI inference cost tracking** for [vLLM](https://vllm.ai/)-based deployments ([llm-d](https://llm-d.ai/) and compatible): cost per million tokens (input/output), KV cache-corrected pricing, shared infrastructure attribution, REST APIs and Prometheus metrics\n- Support for external costs like Datadog through [OpenCost Plugins](https://github.com/opencost/opencost-plugins)\n- Free and open source distribution ([Apache2 license](LICENSE))\n\n## Getting Started\n\nOpenCost is now installed and managed via the official Helm chart only.\n\nQuick install on any Kubernetes 1.20+ cluster:\n\n```bash\nhelm repo add opencost https://opencost.github.io/opencost-helm-chart\nhelm repo update\nhelm install opencost opencost/opencost\n```\n\nNote: The standalone Kubernetes manifest files have been removed. Please use Helm for all installations and upgrades. See the [Helm installation docs](https://www.opencost.io/docs/installation/install) for details and configuration.\n\n\u003e **Note for sharded Prometheus users:**\n\u003e If you run Prometheus in a sharded (HA) setup, set `PROMETHEUS_SERVER_ENDPOINT` to a global query endpoint (e.g., Thanos Query, Cortex, or Mimir). Pointing to a single Prometheus pod may result in incomplete or intermittent export results. See the [Prometheus integration docs](https://www.opencost.io/docs/installation/prometheus) for details.\n\n## Usage\n\n- [Cost APIs](https://www.opencost.io/docs/integrations/api)\n- [CLI / kubectl cost](https://www.opencost.io/docs/integrations/kubectl-cost)\n- [Prometheus Metrics](https://www.opencost.io/docs/integrations/prometheus)\n- [User Interface](https://www.opencost.io/docs/installation/ui)\n- [AI Inference Cost Tracking](docs/inference-cost-tracking.md)\n\n## MCP Server\n\nThe OpenCost MCP (Model Context Protocol) server provides AI agents with access to cost allocation and asset data through a standardized interface. The MCP server is **disabled by default** (opt-in) in all OpenCost deployments, runs on port 8081, and is **built into the Helm chart** for easy production deployment. Users have full control to enable it or configure custom ports and settings.\n\n### Features\n\n- **Opt-in by Default**: MCP server is disabled by default to minimize the attack surface and must be explicitly enabled\n- **Full User Control**: Easy to enable or configure port and settings\n- **Allocation Queries**: Retrieve cost allocation data with filtering and aggregation\n- **Asset Queries**: Access detailed asset information including nodes, disks, load balancers, and more\n- **Cloud Cost Queries**: Query cloud cost data with provider, service, and region filtering\n- **HTTP Transport**: Uses HTTP for reliable communication with MCP clients\n- **Simple Configuration**: Easy to enable using standard environment variables\n- **Helm Integration**: Built into the official Helm chart for production deployments\n\n### Quick Start\n\n#### Using Tilt (Development)\n```bash\n# Clone and start OpenCost with MCP server\n# You may also need to clone opencost-ui and opencost-helm-charts repositories\n# Make sure the cloned repositories are in the same parent tree as opencost\n\ngit clone https://github.com/opencost/opencost.git\ncd opencost\ntilt up\n```\n##### Default Configurations\nThe UI and Prometheus both run on port 9090. You may need to port-forward to a non-default port to access both them at the same time.\n\nTilt configuration notes (cloud costs):\n\nOpenCost's Tilt values (`tilt-values.yaml`) include extra environment variables to enable Cloud Cost ingestion in dev:\n\n```yaml\n# tilt-values.yaml (excerpt)\nopencost:\n  exporter:\n    extraEnv:\n      CLOUD_COST_ENABLED: \"true\"\n      CLOUD_COST_CONFIG_PATH: \"/var/cloud-integration/cloud-integration.json\"\n```\n\n- Set `CLOUD_COST_ENABLED` to \"true\" to turn on cloud cost ingestion.\n- Point `CLOUD_COST_CONFIG_PATH` to the mounted cloud integration file used by Tilt (e.g., `/var/cloud-integration/cloud-integration.json`).\n- Adjust other values in `tilt-values.yaml` as needed during development.\n\n#### Using Helm (Production)\n```bash\n# Add the OpenCost Helm repository\nhelm repo add opencost https://opencost.github.io/opencost-helm-chart\nhelm repo update\n\n# Deploy OpenCost with MCP server enabled (opt-in)\nhelm install opencost opencost/opencost --set opencost.mcp.enabled=true\n\n# Access MCP server via port forwarding (example)\nkubectl port-forward svc/opencost 8081:8081\n```\n\nThe MCP server is **disabled by default** in the Helm chart. For custom configuration:\n\n```bash\n# Deploy with MCP server enabled\nhelm install opencost opencost/opencost \\\n  --set opencost.mcp.enabled=true\n\n# Deploy with custom MCP port\nhelm install opencost opencost/opencost \\\n  --set opencost.mcp.port=9091\n\n# Deploy with debug logging\nhelm install opencost opencost/opencost \\\n  --set opencost.mcp.extraEnv.MCP_LOG_LEVEL=debug\n```\n\n#### Configuration Summary\n\n| Configuration | Command | Description |\n|---------------|---------|-------------|\n| **Default** | `helm install opencost opencost/opencost` | MCP disabled by default |\n| **Enable** | `--set opencost.mcp.enabled=true` | Enable MCP server on port 8081 |\n| **Custom Port** | `--set opencost.mcp.port=9091` | Use different port |\n| **Debug Mode** | `--set opencost.mcp.extraEnv.MCP_LOG_LEVEL=debug` | Enable debug logging |\n\n### MCP Client Configuration\n\nConfigure your MCP client (e.g., Cursor) to connect to the OpenCost MCP server:\n\n**Default configuration (port 8081):**\n```json\n{\n  \"mcpServers\": {\n    \"opencost\": {\n      \"type\": \"http\",\n      \"url\": \"http://localhost:8081\"\n    }\n  }\n}\n```\n\n**Custom port configuration:**\n```json\n{\n  \"mcpServers\": {\n    \"opencost\": {\n      \"type\": \"http\",\n      \"url\": \"http://localhost:9091\"\n    }\n  }\n}\n```\n\n**For Kubernetes deployments:**\n```json\n{\n  \"mcpServers\": {\n    \"opencost\": {\n      \"type\": \"http\",\n      \"url\": \"http://opencost.opencost.svc.cluster.local:8081\"\n    }\n  }\n}\n```\n\n**For external access (with LoadBalancer/Ingress):**\n```json\n{\n  \"mcpServers\": {\n    \"opencost\": {\n      \"type\": \"http\",\n      \"url\": \"http://your-opencost-domain.com:8081\"\n    }\n  }\n}\n```\n\n### Available MCP Tools\n\nThe MCP server provides these tools for AI agents:\n\n#### `get_allocation_costs`\nRetrieve cost allocation data with filtering and aggregation.\n\n**Parameters:**\n- `window` (required): Time window (e.g., \"7d\", \"1h\", \"30m\")\n- `aggregate` (optional): Aggregation properties (e.g., \"namespace\", \"pod\", \"node\")\n- `step` (optional): Resolution step size\n- `accumulate` (optional): Whether to accumulate over time\n- `share_idle` (optional): Whether to share idle costs\n- `include_idle` (optional): Whether to include idle resources\n\n#### `get_asset_costs`\nRetrieve asset cost data including nodes, disks, load balancers, and more.\n\n**Parameters:**\n- `window` (required): Time window (e.g., \"7d\", \"1h\", \"30m\")\n\n#### `get_cloud_costs`\nRetrieve cloud cost data with provider, service, and region filtering.\n\n**Parameters:**\n- `window` (required): Time window (e.g., \"7d\", \"1h\", \"30m\")\n- `aggregate` (optional): Aggregation properties (e.g., \"provider\", \"service\", \"region\")\n- `accumulate` (optional): Time accumulation (\"day\", \"week\", \"month\")\n- `provider` (optional): Filter by cloud provider (e.g., \"aws\", \"gcp\", \"azure\")\n- `service` (optional): Filter by service (e.g., \"ec2\", \"compute\", \"s3\")\n- `category` (optional): Filter by category (e.g., \"compute\", \"storage\", \"network\")\n- `region` (optional): Filter by region (e.g., \"us-west-1\", \"us-central1\")\n- `accountID` (optional): Filter by account ID\n\n#### `get_efficiency`\nRetrieve resource efficiency metrics with rightsizing recommendations and cost savings analysis.\n\n**Parameters:**\n- `window` (required): Time window (e.g., \"7d\", \"1h\", \"30m\")\n- `aggregate` (optional): Aggregation properties (e.g., \"pod\", \"namespace\", \"controller\")\n- `filter` (optional): Filter expression for allocations\n- `buffer_multiplier` (optional): Buffer multiplier for recommendations (default: 1.2 for 20% headroom)\n- `step` (optional): Query step size (e.g., \"1h\", \"6h\"); smaller steps reduce peak memory by batching large windows, but may increase query time/requests\n\n### Supported Asset Types\n\n- **Node**: Compute instances with CPU, RAM, GPU details\n- **Disk**: Storage volumes with usage and cost breakdown\n- **LoadBalancer**: Load balancer instances with IP and private status\n- **Network**: Network-related costs and usage\n- **Cloud**: Cloud service costs with credit information\n- **ClusterManagement**: Kubernetes cluster management costs\n\n### Example Usage\n\nOnce configured, AI agents can query cost data like:\n\n```javascript\n// Get cost allocation for the last 7 days\nconst allocation = await mcpClient.callTool('get_allocation_costs', {\n  window: '7d',\n  aggregate: 'namespace,node'\n});\n\n// Get asset costs for the last 24 hours\nconst assets = await mcpClient.callTool('get_asset_costs', {\n  window: '1d'\n});\n\n// Get cloud costs for AWS EC2 in us-west-1\nconst cloudCosts = await mcpClient.callTool('get_cloud_costs', {\n  window: '7d',\n  aggregate: 'service',\n  provider: 'aws',\n  service: 'ec2',\n  accumulate: 'day',\n  filter: 'regionID:\"us-west-1\"'\n});\n\n// Get efficiency metrics with rightsizing recommendations\nconst efficiency = await mcpClient.callTool('get_efficiency', {\n  window: '7d',\n  aggregate: 'namespace,controller',\n  step: '6h',\n  buffer_multiplier: 1.2\n});\n```\n\nFor detailed setup instructions and advanced configuration, see the [Helm chart documentation](https://github.com/opencost/opencost-helm-chart/blob/main/charts/opencost/README.md#mcp-server).\n\n## Contributing\n\nWe :heart: pull requests! See [`CONTRIBUTING.md`](CONTRIBUTING.md) for information on building the project from source and contributing changes.\n\n## Community\n\nIf you need any support or have any questions on contributing to the project, you can reach us on [CNCF Slack](https://slack.cncf.io/) in the [#opencost](https://cloud-native.slack.com/archives/C03D56FPD4G) channel or attend the biweekly [OpenCost Working Group community meeting](https://bit.ly/opencost-meeting) from the [Community Calendar](https://bit.ly/opencost-calendar) to discuss OpenCost development.\n\n## FAQ\n\nYou can view [OpenCost documentation](https://www.opencost.io/docs/FAQ) for a list of commonly asked questions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopencost%2Fopencost","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopencost%2Fopencost","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopencost%2Fopencost/lists"}