{"generated_at":"2026-10-14T20:07:22+00:00","item":{"added_at":"2026-07-22","analysis_method":"independent_manual_review_2026-10-10","assessment_status":"provisional","auth_posture":"auth_required","category":"Web Connector","confidence":"medium","description":"Companion.energy retrieves commercial and industrial energy analytics. Inspect assets, sensor readings, costs, forecasts, and European market prices. Requires an account; access is organization-scoped and strictly read-only.","did":"f554fd09-c762-4fd1-a26b-475634fc3a1e","documentation_url":"https://docs.companion.energy/analytics-mcp","editorial_description":{"extended_description":"Analyze consumption, generation, storage charge, flexibility, and market exposure. Query the analytics schema for additional reporting; the server rejects writes and subscriptions.","schema_version":1,"summary":"Companion.energy retrieves commercial and industrial energy analytics.\nInspect assets, sensor readings, costs, forecasts, and European market prices.\nRequires an account; access is organization-scoped and strictly read-only."},"homepage_url":"","icon":"","id":"f554fd09-c762-4fd1-a26b-475634fc3a1e","installs":0,"last_scanned":"","license":"","long_description":"Analyze consumption, generation, storage charge, flexibility, and market exposure. Query the analytics schema for additional reporting; the server rejects writes and subscriptions.","manual_assessment":"high","manual_review":{"all_findings":[{"evidence":"The inventory exposes schema discovery followed by run_graphql_query over the live Companion.energy organization.","reasoning":"A generic GraphQL query can retrieve combinations beyond the named convenience tools, so field, depth, tenant, and volume limits must be verified.","risk_type":"query_execution","severity":"high","title":"Arbitrary GraphQL analytics queries can be executed","triggering_tools_or_skills":["get_graphql_schema","run_graphql_query"]},{"evidence":"The listing covers commercial/industrial locations, batteries, solar/grid connections, meters, sensor time series, futures, prices, and steered capacity.","reasoning":"This is commercially sensitive operational and energy-position data.","risk_type":"private_data_read","severity":"medium","title":"Industrial assets, customers, sensors, and energy positions are exposed","triggering_tools_or_skills":["list_customers","list_assets","list_sensors","get_sensor_readings","get_futures","get_steered_capacity"]}],"assessment_status":"provisional","auth_and_scopes":"Authentication grants read-only access to an organization's Companion.energy assets, customers, sensors, markets, and analytics; exact scopes are not stated.","blocked_missing_evidence":null,"confidence":"medium","displayed_risk":"high","evidence_completeness":"partial","manual_overall_risk":"high","official_sources":[{"accessed_at":"2026-10-10T20:24:37Z","url_or_path":"plutosecurity/plutonium@b749c8dc43536c794409be9805edd48063f045e2:app/data/conn/claudesec/f554fd09-c762-4fd1-a26b-475634fc3a1e.json","what_it_proves":"Candidate PR #125 record identity (name \"Companion.energy\", publisher, type web_connector) and 16 stored tool names; no tool descriptions stored"},{"accessed_at":"2026-09-22T10:46:07Z","url_or_path":"https://api.anthropic.com/api/directory/servers?verified_tier=anthropic,partner,community (snapshot claude-directory-all-tiers-2026-09-22.json)","what_it_proves":"Official Claude Directory listing https://claude.ai/directory/f554fd09-c762-4fd1-a26b-475634fc3a1e: complete tool_names inventory (16 tools), remote streamable-http endpoint https://mcp.companion.energy/mcp, auth_posture auth_required, directory tier community"}],"primary_reason":"Companion.energy executes generic GraphQL queries over private industrial energy analytics.","provisional_risk":null,"publication_recommendation":"accept","requires_runtime_verification":true,"review_key":"claude:f554fd09-c762-4fd1-a26b-475634fc3a1e","reviewed_at":"2026-10-10","reviewer_notes":"Reviewed all 16 tools; description expressly says read-only, but GraphQL scope and complexity need runtime verification.","risk_domains":{"arbitrary_network_access":"false","authz_ambiguity":"false","browser_control":"false","credential_or_admin_actions":"false","deletes_data":"false","deployment_or_infrastructure":"false","dynamic_hidden_actions":"false","filesystem_or_repo_access":"false","forwards_data_to_third_party":"true","modifies_data":"false","persistent_credentials":"true","prompt_injection_exposure":"true","provenance_uncertainty":"true","reads_private_data":"true","runs_code_or_queries":"true","sends_messages_as_user":"false","spends_or_moves_money":"false"},"tools_or_skills_reviewed":16,"tools_or_skills_total":16},"name":"Companion.energy","needs_runtime_verification":true,"plutonium_url":"https://plutonium.pluto.security/detail.html?planet=claudesec&did=f554fd09-c762-4fd1-a26b-475634fc3a1e&utm_source=plutonium_analysis_skill&utm_medium=claude_skill&utm_campaign=connector_risk_assessment","privacy_policy_url":"https://companion.energy/legal/privacy-policy","provisional_risk":null,"publication_recommendation":"accept","publisher":"Companion.energy","publisher_url":"https://companion.energy/","remote_url":"https://mcp.companion.energy/mcp","repository_url":"","risk":"high","risk_severity":"high","security_risks":[{"description":"This connector can execute code, commands, queries, or dynamically selected actions. Review findings: A generic GraphQL query can retrieve combinations beyond the named convenience tools, so field, depth, tenant, and volume limits must be verified.","evidence":"Arbitrary GraphQL analytics queries can be executed: The inventory exposes schema discovery followed by run_graphql_query over the live Companion.energy organization.","manual_risk_type":"query_execution","remediation":{"block_tool_categories":["code_execution"],"steps":["Run only in a sandbox with least-privilege credentials and strict resource limits.","Disable generic execution gateways unless their reachable action set is fully understood.","Require approval before execution against production systems or sensitive data."]},"risk_type":"runs_code","severity":"high","title":"Arbitrary GraphQL analytics queries can be executed","triggering_tools":["get_graphql_schema","run_graphql_query"]},{"description":"This connector can read information available to the connected account and return it to the AI. Review findings: This is commercially sensitive operational and energy-position data.","evidence":"Industrial assets, customers, sensors, and energy positions are exposed: The listing covers commercial/industrial locations, batteries, solar/grid connections, meters, sensor time series, futures, prices, and steered capacity.","manual_risk_type":"private_data_read","remediation":{"block_tool_categories":["data_exfiltration"],"steps":["Use a least-privilege account limited to the information required by the workflow.","Restrict folders, projects, tenants, and other data scopes wherever the provider allows it.","Review access logs for unexpected reads or bulk retrieval."]},"risk_type":"reads_private_data","severity":"medium","title":"Industrial assets, customers, sensors, and energy positions are exposed","triggering_tools":["list_customers","list_assets","list_sensors","get_sensor_readings","get_futures","get_steered_capacity"]}],"signature_status":"unknown","source_code_reviewed":false,"support_url":"support@companion.energy","tags":["network_access","oauth_required","reads_private_data","runs_code","web_connector"],"tools":[{"description":"","name":"get_asset"},{"description":"","name":"get_futures","risk":{"category":"data_exfiltration","level":"medium","recommendation":"Follow the connector-level remediation and require approval for consequential actions.","why":"This connector can read information available to the connected account and return it to the AI. Review findings: This is commercially sensitive operational and energy-position data."}},{"description":"","name":"get_graphql_schema","risk":{"category":"code_execution","level":"high","recommendation":"Follow the connector-level remediation and require approval for consequential actions.","why":"This connector can execute code, commands, queries, or dynamically selected actions. Review findings: A generic GraphQL query can retrieve combinations beyond the named convenience tools, so field, depth, tenant, and volume limits must be verified."}},{"description":"","name":"get_imbalance_dual_pricing_stats"},{"description":"","name":"get_market_price_series"},{"description":"","name":"get_market_price_stats"},{"description":"","name":"get_market_prices"},{"description":"","name":"get_preferred_sensor"},{"description":"","name":"get_sensor_readings","risk":{"category":"data_exfiltration","level":"medium","recommendation":"Follow the connector-level remediation and require approval for consequential actions.","why":"This connector can read information available to the connected account and return it to the AI. Review findings: This is commercially sensitive operational and energy-position data."}},{"description":"","name":"get_sensor_series"},{"description":"","name":"get_steered_capacity","risk":{"category":"data_exfiltration","level":"medium","recommendation":"Follow the connector-level remediation and require approval for consequential actions.","why":"This connector can read information available to the connected account and return it to the AI. Review findings: This is commercially sensitive operational and energy-position data."}},{"description":"","name":"list_assets","risk":{"category":"data_exfiltration","level":"medium","recommendation":"Follow the connector-level remediation and require approval for consequential actions.","why":"This connector can read information available to the connected account and return it to the AI. Review findings: This is commercially sensitive operational and energy-position data."}},{"description":"","name":"list_customers","risk":{"category":"data_exfiltration","level":"medium","recommendation":"Follow the connector-level remediation and require approval for consequential actions.","why":"This connector can read information available to the connected account and return it to the AI. Review findings: This is commercially sensitive operational and energy-position data."}},{"description":"","name":"list_market_products"},{"description":"","name":"list_sensors","risk":{"category":"data_exfiltration","level":"medium","recommendation":"Follow the connector-level remediation and require approval for consequential actions.","why":"This connector can read information available to the connected account and return it to the AI. Review findings: This is commercially sensitive operational and energy-position data."}},{"description":"","name":"run_graphql_query","risk":{"category":"code_execution","level":"high","recommendation":"Follow the connector-level remediation and require approval for consequential actions.","why":"This connector can execute code, commands, queries, or dynamically selected actions. Review findings: A generic GraphQL query can retrieve combinations beyond the named convenience tools, so field, depth, tenant, and volume limits must be verified."}}],"tools_count":16,"transport":"streamable-http","type":"web_connector","url":"https://claude.ai/directory/f554fd09-c762-4fd1-a26b-475634fc3a1e","uuid":"04dd1129-0639-5097-b311-3556d50f5caa","verification_tier":"community","version":""},"query_key":"companion energy","schema_version":1,"status":"match"}
