feat(powerio): expose pandapower-json, PyPSA CSV, and gridfm Parquet formats#41
Merged
Merged
Conversation
…formats powerio 0.1.1 adds pandapower JSON (a text format, alias `pp`) plus the PyPSA static CSV folder and gridfm-datakit Parquet formats, which are folder/binary and don't fit the single-file convert_case/save_case shape. - Document pandapower-json/`pp` in convert_case, save_case, parse_case, and the module header — it already converted through the text pass-through, only the advertised format lists were stale. - Add read_pypsa_csv_folder / write_pypsa_csv_folder for the PyPSA CSV folder format, and read_gridfm / write_gridfm for the gridfm Parquet datasets; both bridge to/from the JSON transport like the existing tools. - Cover all three with round-trip and error-mapping tests. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This was referenced Jun 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
powerio0.1.1 (already our pinned floor) supports more formats than the MCP wrapper advertised. This wires them up.pandapower-json, aliaspp) — a text format. It already converted through the existingconvert_case/save_casepass-through; only the advertised format lists were stale. Now documented inconvert_case,save_case,parse_case, and the module header.read_pypsa_csv_folder/write_pypsa_csv_folderbridge it to/from the JSON transport.read_gridfm/write_gridfm.Formats still under development upstream (surge
.surge.json, PowerModelsDistribution JSON, IEEE BMOPF JSON) are not in 0.1.1 and are intentionally not added here yet.Tests
Added round-trip and error-mapping tests for all three. Full
tests/test_powerio_server.pysuite: 39 passed, 3 skipped.Note
powerio/powerio_mcp.pyis a synced copy of the canonicalpowerio.mcp.serverupstream (eigenergy/powerio). Per the file header, these changes should also be landed upstream first/in parallel.🤖 Generated with Claude Code