Facilitating AI-Driven Sustainability: A Service-Oriented Architecture for Interoperable Environmental Data Access
Abstract
1. Introduction
2. Materials and Methods
2.1. Model Context Protocol (MCP)
2.2. WeatherInfo_MCP
2.2.1. Service-Oriented Core Architecture and the Object Model
2.2.2. MCP Layer: Agent Interaction and Protocol Design
3. Results
3.1. Unit Tests
3.2. Rigorous Validation of MCP Tool Compliance
- MCP Protocol Compliance (2025-06-18):
- Tool Manifest Validation: Validates the presence and correctness of the entire tool manifest. This guarantees the discoverability of the functions for agents.
- Tool Execution Validation: Confirms the correct execution of declared tools, such as create_location and related utilities, and the delivery of expected outputs for valid input.
- Session and Lifecycle Management
- Protocol Version Negotiation: Ensures accurate communication of the MCP protocol version.
- Session Initialization and State Management: Assesses robust session creation, state transitions, maintenance, and cleanup, ensuring stable and predictable operation, especially in continuous or long-running deployments.
- Error Handling & Recovery
- Investigates system responses to invalid inputs, malformed requests, and external API timeouts. The test verified that the system fails gracefully under stress conditions (such as rapid sequential requests or upstream API outages), preserving data integrity. Multi-user load testing was not conducted because the system is designed to run as an independent instance for each user. This design inherently prevents one user’s heavy usage from slowing down or affecting another’s session.
- WeatherInfo_MCP-Specific Functional Tests
- Focuses on domain-relevant capabilities unique to WeatherInfo_MCP, including location-aware weather queries, observation retrieval, and alert serving, ensuring correct operation and robustness for real-world environmental health use cases.
3.3. A Simple Use Case: An AI Agent Using WeatherInfo_MCP and a Memory MCP
4. Discussion
5. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Abbreviations
| AI | Artificial Intelligence |
| LLMs | Large Language Models |
| MCP | Model Context Protocol |
| NWS | National Weather Service |
| SOA | Service-Oriented Architecture |
| WMO | World Meteorological Organization |
Appendix A
Appendix A.1. Unit Test Report

Appendix A.2. Comprehensive Stdio MCP Conformance Test Report
| =============================================== |
| ☑ Testing stdio-based MCP server with comprehensive validation |
| Server Command: /Users/babak.jfard/projects/WeatherInfoMCP/weatherinfo_mcp/.venv/bin/python |
| Server Args: [‘-m’, ‘weatherinfo_mcp.mcp_tools.main’] |
| Server CWD: /Users/babak.jfard/projects/WeatherInfoMCP/weatherinfo_mcp |
| Protocol Version: 2025-06-18 |
| Test Date: 10 December 2025 15:55:36 |
| Summary: |
| -------- |
| Total Tests: 7 |
| Passed: 7 |
| Failed: 0 |
| Success Rate: 100.0% |
| Test Categories: |
| ---------------- |
| Base MCP Protocol: 3 tests (3 passed) |
| WeatherInfo_MCP Specific: 3 tests (3 passed) |
| MCP Inspector: 1 tests (1 passed) |
| Detailed Results: |
| ---------------- |
| ✓ PASS: [BASE] Base MCP Connection and Initialization (0.19 s) |
| MCP Spec: Base Protocol-Lifecycle |
| Details: { |
| “protocol_version”: “2025-06-18”, |
| “has_capabilities”: true, |
| “has_server_info”: true, |
| “server_name”: “nws_weather_server”, |
| “server_version”: “1.13.0”, |
| } |
| ✓ PASS: [BASE] Base MCP Tool Manifest Compliance (0.19 s) |
| MCP Spec: Server Features-Tools |
| Details: { |
| “tools_found”: 8, |
| “all_tools_valid”: true |
| } |
| ✓ PASS: [BASE] Base MCP Tool Execution Compliance (3.72 s) |
| MCP Spec: Server Features-Tools |
| Details: { |
| “tool_executed”: “create_location”, |
| “has_result”: true, |
| “result_type”: “CallToolResult” |
| } |
| ✓ PASS: [WEATHERINFO_MCP] WeatherInfo_MCP Tool Availability (0.22 s) |
| MCP Spec: Server Features-Tools |
| Details: { |
| “expected_tools”: [ |
| “create_location”, |
| “get_current_observation”, |
| “get_temperature_from_observation”, |
| “get_humidity_from_observation”, |
| “get_weather_description_from_observation”, |
| “get_wind_info_from_observation”, |
| “get_alerts”, |
| “get_HeatRisk” |
| ], |
| “available_tools”: [ |
| “create_location”, |
| “get_current_observation”, |
| “get_temperature_from_observation”, |
| “get_humidity_from_observation”, |
| “get_weather_description_from_observation”, |
| “get_wind_info_from_observation”, |
| “get_alerts”, |
| “get_HeatRisk” |
| ], |
| “missing_tools”: [], |
| “all_tools_present”: true |
| } |
| ✓ PASS: [WEATHERINFO_MCP] WeatherInfo_MCP Location Creation (1.35 s) |
| MCP Spec: Server Features-Tools |
| Details: { |
| “location_created”: true, |
| “address”: “San Francisco, CA”, |
| “latitude”: 37.7879363, |
| “longitude”: −122.4075201, |
| “has_station_url”: true |
| } |
| ✓ PASS: [WEATHERINFO_MCP] WeatherInfo_MCP Weather Observation (3.01 s) |
| MCP Spec: Server Features-Tools |
| Details: { |
| “observation_retrieved”: true, |
| “has_timestamp”: true, |
| “has_temperature”: true, |
| “has_humidity”: true, |
| “observation_keys”: [ |
| “@id”, |
| “@type”, |
| “elevation”, |
| “station”, |
| “stationId”, |
| “stationName”, |
| “timestamp”, |
| “rawMessage”, |
| “textDescription”, |
| “icon” |
| ] |
| } |
| ✓ PASS: [INSPECTOR] MCP Inspector Availability (0.53 s) |
| MCP Spec: Developer Tools |
| Details: { |
| “inspector_available”: true, |
| “npx_accessible”: true, |
| “help_output_length”: 559 |
| } |
| Test Coverage: |
| -------------- |
| ☑ Base MCP Protocol Tests: |
| -Connection and Initialization (Base Protocol-Lifecycle) |
| -Tool Manifest Compliance (Server Features-Tools) |
| -Tool Execution Compliance (Server Features-Tools) |
| ☑ WeatherInfo_MCP-Specific Tests: |
| -Tool Availability Validation |
| -Location Creation Functionality |
| -Weather Observation Retrieval |
| ☑ MCP Inspector Integration: |
| -Inspector Tool Availability |
| -CLI Integration Testing |
| Compliance Status: |
| ------------------ |
| ☑ COMPREHENSIVE TESTING with MCP specification version 2025-06-18 |
| ☑ All required protocol components tested |
| ☑ Proper stdio transport implementation |
| ☑ FastMCP server compatibility validated |
| ☑ WeatherInfo_MCP-specific functionality validated |
| References: |
| ----------- |
| -MCP Specification: https://modelcontextprotocol.io/specification/2025-06-18, accessed on 10 December 2025. |
| -FastMCP Documentation: https://github.com/modelcontextprotocol/python-sdk, accessed on 10 December 2025 |
| -MCP Inspector: https://modelcontextprotocol.io/docs/tools/inspector, accessed on 10 December 2025 |
| -WeatherInfo_MCP Documentation: ../README.md, accessed on 10 December 2025 |
Appendix B
Appendix B.1. Agent Instruction Prompt
| “”” |
| You are a weather assistant with two specialized MCP tools: |
| 1. A weather data tool for live weather information. |
| 2. A memory management tool for storing and recalling user-related information. |
| Your responsibilities: |
| - Provide accurate and context-aware weather information. |
| - Maintain persistent memory of users and their associated locations. |
| Capabilities: |
| - Retrieve weather observations (temperature, humidity, wind, weather description). |
| - Report weather alerts only when the user explicitly asks for them. |
| - Provide relevant heat risk context as appropriate. |
| - Create, recall, and update user and location entities in long-term memory. |
| Memory and Identification Workflow: |
| Always begin by identifying the user. Use memory to check for an existing entity representing this person. |
| Use consistent entity naming when saving people, e.g.,: |
| person_<user_name> → location_<city_name> |
| If a person or location entity does not exist, create both: |
| -person entity: represents the user (e.g., “John Doe”) |
| -location entity: represents their location (e.g., “New York, NY”) |
| -create_relation: link person to location using “lives_in” |
| After identifying the entities, use the stored location for all weather queries. |
| Weather Query Workflow: |
| Retrieve the user’s stored location (if exists). |
| If not found, ask for it, then store using the memory tool. |
| Fetch new weather data using get_current_observation. |
| Extract only the requested details (e.g., temperature, humidity, or heat risk). |
| Only check and report active weather alerts if the user explicitly mentions alerts or warnings. |
| Response Guidelines: |
| Never ask for a location again if it is already stored in memory. |
| Persist all newly discovered user details consistently. |
| Recognize returning users by their saved memory entities. |
| Only mention weather alerts when explicitly requested. |
| Always prioritize clarity, factual accuracy, and contextual completeness in responses. |
| “”” |
Appendix B.2. Python Code Snippet to Create the Sample Agent
| # MCP server params |
| params_weather_mcp = {“name”: “heat-mcp”, |
| “command”: “python”, |
| “args”: [“-m”, “heat_mcp.mcp_tools.main”], |
| “env”: {“PYTHONPATH”: “/path/to/heat_mcp/src”}} |
| params_memory_mcp = {“name”: “memory-”, “command”: “npx”, |
| “args”: [“-y”, “mcp-memory-libsql”], |
| “env”: {“LIBSQL_URL”: “file:./memory/test_memory.db”}} |
| # Create and connect MCP servers |
| weather_server = MCPServerStdio(params=params_weather_mcp, client_session_timeout_seconds=30) |
| memory_server = MCPServerStdio(params=params_memory_mcp, client_session_timeout_seconds=30) |
| mcp_servers = [weather_server, memory_server] |
| # Create agent |
| agent = Agent( |
| name = “weather-agent”, |
| instructions = instructions, |
| model = “gpt-4.1-mini”, |
| mcp_servers = mcp_servers |
| ) |
| # Running example query |
| question = “Hi. My name is John Dove and I live in Omaha, Nebraska. What’s the weather like today?” |
| for server in mcp_servers: |
| await server.connect() |
| result = await Runner.run(agent, question, max_turns = 10) |
| print(result.final_output) |
Appendix B.3. Links to Other Weather-Related MCP Products
| MCP Name | MCP/Github Link | Initial Publication Date | Related Paper Link | Language |
| WeatherInfo_MCP (This model) | https://github.com/Babakjfard/weatherinfo_mcp accessed on 25 February 2026 | 2025 | TBD | Python |
| OpenWeatherMap MCP | https://playbooks.com/mcp/rossshannon-openweathermap accessed on 8 December 2025 | 8 April 2025 | N/A | Python |
| Weather MCP (Jiří Spilka) | https://apify.com/jiri.spilka/weather-mcp-server https://github.com/isdaniel/mcp_weather_server accessed on 8 December 2025 | 29 May 2025 | N/A | Python |
| MCP-Weather (TimLukaHorstmann) | https://github.com/TimLukaHorstmann/mcp-weather accessed on 8 December 2025 | 3 May 2025 | N/A | TypeScript |
| MCP-Weather (adhikasp) | https://github.com/adhikasp/mcp-weather accessed on 8 December 2025 | 31 December 2024 | N/A | Unknown |
| MCP Weather Server (FlowHunt) | https://www.flowhunt.io/mcp-servers/mcp-weather/ accessed on 8 December 2025 | 17 June 2025 | N/A | Unknown |
| OpenWeather MCP (RoystonDAlmeida) | https://mcp.so/server/mcp-weather-server/RoystonDAlmeida accessed on 8 December 2025 | Unknown | N/A | Unknown |
| knmi-weather-mcp | https://github.com/wolkwork/knmi-mcp accessed on 8 December 2025 | 27 February 2025 | N/A | Unknown |
References
- World Meteorological Organization. Weather-Related Disasters Increase over Past 50 Years, Causing More Damage but Fewer Deaths. 2021. Available online: https://wmo.int/media/news/weather-related-disasters-increase-over-past-50-years-causing-more-damage-fewer-deaths (accessed on 20 December 2025).
- Climate Central. U.S. Sees 14 Billion-Dollar Disasters in First Half of 2025. 2025. Available online: https://www.climatecentral.org/climate-matters/billion-dollar-disasters-2025 (accessed on 20 December 2025).
- Climate Central. U.S. Billion-Dollar Weather and Climate Disasters. Available online: https://www.climatecentral.org/climate-services/billion-dollar-disasters (accessed on 5 January 2026).
- Rajabi, N.; Rajabi, K.; Rajabi, F. Forecasting and management of disasters triggered by climate change. In Visualization Techniques for Climate Change with Machine Learning and Artificial Intelligence; Elsevier: Amsterdam, The Netherlands, 2023; pp. 181–207. [Google Scholar] [CrossRef]
- World Meteorological Organization. Atlas of Mortality and Economic Losses from Weather, Climate and Water Extremes (1970–2019). 2021. Available online: https://library.wmo.int/index.php?lvl=notice_display&id=21930 (accessed on 20 December 2025).
- Johar, H.; Abdulsalam, F.I.; Guo, Y.; Baernighausen, T.; Jahan, N.K.; Watterson, J.; Leder, K.; Gouwanda, D.; Ramanathan, G.R.L.; Lee, K.K.C.; et al. Community-based heat adaptation interventions for improving heat literacy, behaviours, and health outcomes: A systematic review. Lancet Planet. Health 2025, 9, 101207. [Google Scholar] [CrossRef] [PubMed]
- Errett, N.A.; Hartwell, C.; Randazza, J.M.; Nori-Sarma, A.; Weinberger, K.R.; Spangler, K.R.; Sun, Y.; Adams, Q.H.; Wellenius, G.A.; Hess, J.J. Survey of extreme heat public health preparedness plans and response activities in the most populous jurisdictions in the United States. BMC Public Health 2023, 23, 811. [Google Scholar] [CrossRef] [PubMed]
- Hoehne, C.G.; Hondula, D.M.; Chester, M.V.; Eisenman, D.P.; Middel, A.; Fraser, A.M.; Watkins, L.; Gerster, K. Heat exposure during outdoor activities in the US varies significantly by city, demography, and activity. Health Place 2018, 54, 1–10. [Google Scholar] [CrossRef] [PubMed]
- Kochkov, D.; Yuval, J.; Langmore, I.; Norgaard, P.; Smith, J.; Mooers, G.; Klöwer, M.; Lottes, J.; Rasp, S.; Düben, P.; et al. Neural general circulation models for weather and climate. Nature 2024, 632, 1060–1066. [Google Scholar] [CrossRef] [PubMed]
- Chen, L.; Han, B.; Wang, X.; Zhao, J.; Yang, W.; Yang, Z. Machine Learning Methods in Weather and Climate Applications: A Survey. Appl. Sci. 2023, 13, 12019. [Google Scholar] [CrossRef]
- Hewage, P.; Trovati, M.; Pereira, E.; Behera, A. Deep learning-based effective fine-grained weather forecasting model. Pattern Anal. Appl. 2021, 24, 343–366. [Google Scholar] [CrossRef]
- Kim, B.; Kim, T. AI in extreme weather events prediction and response: A systematic topic-model review (2015–2024). Front. Environ. Sci. 2025, 13, 1659344. [Google Scholar] [CrossRef]
- World Meteorological Organization. Forecasting the Future: The Role of Artificial Intelligence in Transforming Weather Prediction and Policy. 2025. Available online: https://wmo.int/media/magazine-article/forecasting-future-role-of-artificial-intelligence-transforming-weather-prediction-and-policy (accessed on 20 December 2025).
- Shaik, F.A.; Oussalah, M. On mining mobile emergency communication applications in Nordic countries. Int. J. Disaster Risk Reduct. 2024, 108, 104566. [Google Scholar] [CrossRef]
- Wetterhall, F.; Zollo, A.; Colombelli, S. A roadmap to Multi-Risk Impact-Based Early Warning System for Weather and Geo Hazards in Europe. In Proceedings of the EMS Annual Meeting, Ljubljana, Slovenia, 7–12 September 2025. [Google Scholar] [CrossRef]
- Cao, A.; Nakamura, S.; Otsuyama, K.; Namba, M.; Yoshimura, K. Current status and challenges in operating flood early warning systems at the local level in Japan. Int. J. Disaster Risk Reduct. 2024, 112, 104802. [Google Scholar] [CrossRef]
- Akter, S.; Wamba, S.F. Big data and disaster management: A systematic review and agenda for future research. Ann. Oper. Res. 2019, 283, 939–959. [Google Scholar] [CrossRef]
- Imran, M.; Castillo, C.; Diaz, F.; Vieweg, S. Processing Social Media Messages in Mass Emergency: A Survey. ACM Comput. Surv. 2015, 47, 67. [Google Scholar] [CrossRef]
- Giambelli, M.; Meninno, S.; Deda, M.; Paniccia, C.; Vio, R.; Renzulli, S.; Morando, M.; Ponte, E.; Massabò, M. Linking early warnings to early actions through system approach: Learnings from pilots in Western Balkans and Türkiye. In Proceedings of the 25th EGU General Assembly, Vienna, Austria, 23–28 April 2023. [Google Scholar] [CrossRef]
- Hasan, M.M.; Bitto, A.K.; Chakraborty, A.; Nanwani, R.; Rahman, M.M.; Hameed, N. Net0Chain: An AI-Enabled Climate and Environmental Risks (CER) Framework for Achieving Net-Zero. In 2023 15th International Conference on Software, Knowledge, Information Management and Applications (SKIMA); IEEE: Piscataway, NJ, USA, 2023; pp. 163–168. [Google Scholar] [CrossRef]
- Anthropic. Introducing the Model Context Protocol. Announcements. Available online: https://www.anthropic.com/news/model-context-protocol (accessed on 20 December 2025).
- Ehtesham, A.; Singh, A.; Gupta, G.K.; Kumar, S. A survey of agent interoperability protocols: Model Context Protocol (MCP), Agent Communication Protocol (ACP), Agent-to-Agent Protocol (A2A), and Agent Network Protocol (ANP). arXiv 2025, arXiv:2505.02279. [Google Scholar] [CrossRef]
- Shethiya, A.S. LLM-Powered Architectures: Designing the Next Generation of Intelligent Software Systems. Acad. Nexus J. 2023, 2, 1–8. Available online: http://academianexusjournal.com/index.php/anj/article/view/21 (accessed on 21 November 2025).
- Ray, P.P. A Survey on Model Context Protocol: Architecture, State-of-the-art, Challenges and Future Directions. Available online: https://www.authorea.com/users/913189/articles/1286748-a-survey-on-model-context-protocol-architecture-state-of-the-art-challenges-and-future-directions (accessed on 12 November 2025).
- Marks, E.A.; Bell, M. (Eds.) Service-Oriented Architecture: A Planning and Implementation Guide for Business and Technology, 1st ed.; Wiley: Hoboken, NJ, USA, 2012. [Google Scholar] [CrossRef]
- JSON-RPC Working Group. JSON-RPC 2.0 Specification. 2013. Available online: https://www.jsonrpc.org/specification (accessed on 20 December 2025).
- Hou, X.; Zhao, Y.; Wang, S.; Wang, H. Model Context Protocol (MCP): Landscape, Security Threats, and Future Research Directions. arXiv 2025, arXiv:2503.23278. [Google Scholar] [CrossRef]
- Fowler, M. Patterns of Enterprise Application Architecture; Addison-Wesley: Boston, MA, USA, 2012; Available online: https://books.google.com/books?hl=en&lr=&id=vqTfNFDzzdIC&oi=fnd&pg=PR7&dq=Fowler,+M.+(2002).+Patterns+of+Enterprise+Application+Architecture.+Addison-Wesley.&ots=oVFlEuNOqD&sig=bD7FoqlhhivSPxYIAZnR14z5B-k (accessed on 12 December 2025).
- ANSI/IEEE Std 1008-1987; IEEE Standard for Software Unit Testing. IEEE: New York, NY, USA, 1987. [CrossRef]
- Fowler, M. Mocks Aren’t Stubs. Available online: https://martinfowler.com/articles/mocksArentStubs.html (accessed on 20 December 2025).
- Radhakrishnan, S.; Cheng, Y.; Chu, J.; Jain, A.; Raghavan, B. TCP fast open. In Proceedings of the Seventh COnference on Emerging Networking EXperiments and Technologies, Tokyo, Japan, 6–9 December 2011; pp. 1–12. [Google Scholar] [CrossRef]
- Jirka, S.; Nüst, D.; Proß, B. Sensor web and web processing standards for crisis management. In Proceedings of the ISCRAM 2013 Conference Proceedings—10th International Conference on Information Systems for Crisis Response and Management, Baden-Baden, Germany, 12–15 May 2013. [Google Scholar]
- Reznik, T.; Charvat, K., Jr.; Charvat, K.; Horakova, S.; Lukas, V.; Kepka, M. Open data model for (precision) agriculture applications and agricultural pollution monitoring. In EnviroInfo and ICT for Sustainability 2015; Atlantis Press: Paris, France, 2015; pp. 97–107. [Google Scholar] [CrossRef]
- Turbelin, C.; Boëlle, P.-Y. Exposing public health surveillance data using existing standards. Stud. Health Technol. Inform. 2013, 192, 802–806. [Google Scholar] [CrossRef]



| No. | Category | Test Name | Total Tests | % Passed | Notes |
|---|---|---|---|---|---|
| 1 | MCP Protocol Compliance 2025-06-18 | Tool Manifest, Connection, and Execution Validation | 3 | 100% | Validated initialization, tool manifest (8 tools), and execution of create_location |
| 2 | Session and Lifecycle Management | Protocol Version Negotiation | 7 | 100% | Includes protocol version negotiation and lifecycle tests, including session initialization and session state transition |
| 3 | Error Handling & Recovery | Error Handling & Recovery | 10 | 100% | Comprehensive error, retry, and timeout handling tests |
| 4 | MCP-Specific Functional Tests | MCP-Specific Functional Tests | 3 | 100% | Location creation, weather observation, and alert retrieval |
| 5 | Security Compliance | Security Compliance | 0 | 100% | Not tested; system does not handle sensitive information |
| Interaction | Speaker | Utterance |
|---|---|---|
| 1 | User | Hi. My name is John Dove and I live in Omaha, Nebraska. What’s the weather like today? |
| Agent | John, the current weather in Omaha, Nebraska, is clear with a temperature of about 9 °C (48 °F). The wind is coming from the north-northwest at approximately 24 km/h (15 mph) with gusts up to 33 km/h (21 mph). The relative humidity is around 57%. | |
| 2 | User | Hi. I am Bobby Jones. Is there any weather alert today? |
| Agent | I don’t have your location saved yet. Could you please tell me the city or area where you are located? This will help me check for any weather alerts for your location. | |
| 3 | User | Hi. I am John Dove. Is there any weather alert today? |
| Agent | Hello John Dove. There are no weather alerts for Omaha, Nebraska, today. |
| Feature | Direct NWS AIP Integration | WeatherInfo_MCP (Proposed) |
|---|---|---|
| Integration Complexity | High: Requires handling HTTP headers, rate limits, and JSON parsing logic within the agent’s codebase. | Low: Agent uses predefined tools (e.g., get_weather) without needing knowledge of the underlying API protocols. |
| Development Effort | Linear (M × N): Each new agent requires a fresh integration script for every new data source. | Modular (M + N): Once the MCP server is running, any number of agents can connect instantly without new code. |
| Error Handling | Manual: Developers must write custom logic to catch timeouts or 500-level errors for every request. | Built-in: The SOA core handles retries, timeouts, and graceful failures automatically before the agent sees a result. |
| Maintainability | Low: If the NWS API changes its endpoints, every agent’s code must be rewritten. | High: API updates are handled once within the MCP server; agents remain unaffected. |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license.
Share and Cite
Jalalzadeh Fard, B.; Hasan, S.A.; Bell, J.E. Facilitating AI-Driven Sustainability: A Service-Oriented Architecture for Interoperable Environmental Data Access. Sustainability 2026, 18, 2445. https://doi.org/10.3390/su18052445
Jalalzadeh Fard B, Hasan SA, Bell JE. Facilitating AI-Driven Sustainability: A Service-Oriented Architecture for Interoperable Environmental Data Access. Sustainability. 2026; 18(5):2445. https://doi.org/10.3390/su18052445
Chicago/Turabian StyleJalalzadeh Fard, Babak, Sadid A. Hasan, and Jesse E. Bell. 2026. "Facilitating AI-Driven Sustainability: A Service-Oriented Architecture for Interoperable Environmental Data Access" Sustainability 18, no. 5: 2445. https://doi.org/10.3390/su18052445
APA StyleJalalzadeh Fard, B., Hasan, S. A., & Bell, J. E. (2026). Facilitating AI-Driven Sustainability: A Service-Oriented Architecture for Interoperable Environmental Data Access. Sustainability, 18(5), 2445. https://doi.org/10.3390/su18052445

