Skip to content

Conversation

@pkalsi97
Copy link
Contributor

@pkalsi97 pkalsi97 commented Nov 1, 2025

This PR fullfills both requirement of the issue (#23)

Summary

  • In internal/handler/tools/handler.go - Adds create_dashboard MCP tool. Validates input, decodes JSON into types.Dashboard, calls SigNoz API, returns result or error.
  • In pkg/types - Adds dashboard.go which Defines Dashboard schema used by the MCP tool. Contains layout, variables, and widgets with JSON and jsonschema annotations for validation and UI generation.
  • In internal/client/client.go - Adds CreateDashboard which Creates a dashboard by POSTing the marshaled Dashboard JSON to SigNoz. Sets auth header, applies timeout, returns raw API response or error.
  • Updates README.md with necessary details

DEMO

DEMO 1

demo_1.mp4

DEMO 2

demo_2.mp4

Followup

@pranay01 @pradeepitm12 Let me know if this is satisfactory. If yes, I’ll add the Update Dashboard tool in the same PR.

@pradeepitm12
Copy link
Member

Hi @pkalsi97, sorry for the delay in review.
Could you please rebase (if not done already)
Interesting demo, as you mention sometimes wrong json being created, try to provide some example of expected json that way LLM would correct the json immediately.
Allow me some time to review the code later today.

@pkalsi97 pkalsi97 force-pushed the feat/dashboard-create-and-update branch from afd8ad8 to a078ef8 Compare November 21, 2025 07:39
@pradeepitm12 pradeepitm12 added the safe-to-test Add this label to run CI. label Nov 21, 2025
@pkalsi97
Copy link
Contributor Author

@pradeepitm12

The error

Parameter decoding error: The provided JSON structure for the dashboard configuration is invalid. Error details: json: cannot unmarshal string into Go struct field Widget.widgets.nullZeroValues of type bool

video

https://www.loom.com/share/46a1babb50b24f8e977231dd8c582b97

I think the failure is entirely from LLM-produced JSON, what you think?

@pkalsi97
Copy link
Contributor Author

Update Dashboard Tool

@trashhalo @pradeepitm12 , I have added update dashboard tool.

Here is a video of its working
https://www.loom.com/share/e29246903e25469e9eda2907a9e10d2e

So both the objectives of the Issue #23 have been fulfilled.

@pkalsi97 pkalsi97 changed the title feat: add create dashboard tool and required types (#23) feat: add create/update dashboard tools to MCP server (#23) Nov 22, 2025
@pkalsi97 pkalsi97 requested a review from trashhalo November 22, 2025 07:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

safe-to-test Add this label to run CI.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants