Skip to content

[FEATURE]: Add dashboard migration tool - #104

Open
ibakshay wants to merge 4 commits into
mainfrom
feat/migrate-dashboard-tool
Open

[FEATURE]: Add dashboard migration tool#104
ibakshay wants to merge 4 commits into
mainfrom
feat/migrate-dashboard-tool

Conversation

@ibakshay

@ibakshay ibakshay commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

What

Adds the perses_migrate_dashboard tool (new migrate resource) that converts a Grafana dashboard into a native Perses dashboard using the Perses migrate API.

Details

  • New migrate resource + tool, registered in server.go, tool.go (ValidResources), and documented in the README resources table.
  • useDefaultDatasource is optional. When omitted, the user is prompted via MCP elicitation to choose; pass it explicitly to skip the prompt.
  • Refactor: consolidate the two Perses clients into a single top-level client (persesClient) — resources use client.V1(), migrate uses Migrate().

Testing

make build, make checkformat, and go vet ./... pass.

@ibakshay ibakshay changed the title feat: add Grafana dashboard migration tool [FEATURE]: add Grafana dashboard migration tool Sep 6, 2026
@ibakshay ibakshay changed the title [FEATURE]: add Grafana dashboard migration tool [FEATURE]: Add dashboard migration tool Sep 6, 2026
Add a `migrate` resource exposing the `perses_migrate_dashboard` tool,
which converts a Grafana dashboard JSON into a native Perses dashboard
via the Perses migrate API. The result is returned to the caller and is
not persisted.

When `useDefaultDatasource` is omitted, the user is asked to confirm via
MCP elicitation (multi round-trip requests, SEP-2322); pass the value
explicitly to skip the prompt.

Also consolidate the two Perses clients in server.go into a single
top-level client (resources use client.V1(); migrate uses the top-level
Migrate method).

Signed-off-by: Akshay Iyyadurai Balasundaram <akshay.iyyadurai.balasundaram@sap.com>
golangci-lint (unparam) flagged the handler's 'any' return as always
nil. Matches the convention used by the other tool handlers.

Signed-off-by: Akshay Iyyadurai Balasundaram <akshay.iyyadurai.balasundaram@sap.com>
Signed-off-by: Akshay Iyyadurai Balasundaram <akshay.iyyadurai.balasundaram@sap.com>
Signed-off-by: Akshay Iyyadurai Balasundaram <akshay.iyyadurai.balasundaram@sap.com>
@ibakshay
ibakshay force-pushed the feat/migrate-dashboard-tool branch from fe1dcb1 to d2b3560 Compare September 12, 2026 10:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant