@@ -33,30 +33,40 @@ func ListProjects(client apiClient.ClientInterface) (tool mcp.Tool, handler serv
3333func GetProjectByName (client apiClient.ClientInterface ) (tool mcp.Tool , handler server.ToolHandlerFunc ) {
3434 return mcp .NewTool ("perses_get_project_by_name" ,
3535 mcp .WithDescription ("Get a project by name" ),
36- mcp .WithString ("name " , mcp .Required (),
36+ mcp .WithString ("project " , mcp .Required (),
3737 mcp .Description ("Project name" ))),
3838 func (ctx context.Context , request mcp.CallToolRequest ) (* mcp.CallToolResult , error ) {
39- name , err := request .RequireString ("name " )
39+ project , err := request .RequireString ("project " )
4040 if err != nil {
4141 return mcp .NewToolResultError (err .Error ()), nil
4242 }
4343
44- project , err := client .Project ().Get (name )
44+ response , err := client .Project ().Get (project )
4545 if err != nil {
46- return nil , fmt .Errorf ("error retrieving project '%s': %w" , name , err )
46+ return nil , fmt .Errorf ("error retrieving project '%s': %w" , project , err )
4747 }
4848
49- projectJSON , err := json .Marshal (project )
49+ projectJSON , err := json .Marshal (response )
5050 if err != nil {
51- return nil , fmt .Errorf ("error marshalling project '%s': %w" , name , err )
51+ return nil , fmt .Errorf ("error marshalling project '%s': %w" , project , err )
5252 }
5353 return mcp .NewToolResultText (string (projectJSON )), nil
5454 }
5555}
5656
5757func CreateProject (client apiClient.ClientInterface ) (tool mcp.Tool , handler server.ToolHandlerFunc ) {
5858 return mcp .NewTool ("perses_create_project" ,
59- mcp .WithDescription ("Create a new Perses Project" ), mcp .WithString ("project" , mcp .Required ())),
59+ mcp .WithDescription ("Create a new Perses Project" ),
60+ mcp .WithString ("project" ,
61+ mcp .Required (),
62+ mcp .Description ("Project name" )),
63+ mcp .WithToolAnnotation (mcp.ToolAnnotation {
64+ Title : "Creates a new project in Perses" ,
65+ ReadOnlyHint : ToBoolPtr (false ),
66+ DestructiveHint : ToBoolPtr (false ),
67+ IdempotentHint : ToBoolPtr (true ),
68+ OpenWorldHint : ToBoolPtr (false ),
69+ })),
6070 func (ctx context.Context , request mcp.CallToolRequest ) (* mcp.CallToolResult , error ) {
6171 project , err := request .RequireString ("project" )
6272 if err != nil {
0 commit comments