Skip to main content
Glama

update-status

Update section statuses (planned, in_progress, completed) in Web3 Research MCP for consistent progress tracking across projects.

Input Schema

NameRequiredDescriptionDefault
sectionYesSection name to update (e.g., 'projectInfo', 'technicalFundamentals')
statusYesNew status for the section

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "section": { "description": "Section name to update (e.g., 'projectInfo', 'technicalFundamentals')", "type": "string" }, "status": { "description": "New status for the section", "enum": [ "planned", "in_progress", "completed" ], "type": "string" } }, "required": [ "section", "status" ], "type": "object" }

Implementation Reference

  • Handler function that updates the status of a specific section in the research plan stored in ResearchStorage.
    async ({ section, status, }: { section: string; status: "planned" | "in_progress" | "completed"; }) => { try { const researchPlan = storage.getSection("researchPlan"); if (!researchPlan || !researchPlan[section]) { return { isError: true, content: [ { type: "text", text: `Section '${section}' not found in research plan`, }, ], }; } const updatedSection = { ...researchPlan[section], status, }; const updatedPlan = { ...researchPlan, [section]: updatedSection, }; storage.updateSection("researchPlan", updatedPlan); storage.addLogEntry(`Updated status of ${section} to ${status}`); return { content: [ { type: "text", text: `Updated status of '${section}' to '${status}'`, }, ], }; } catch (error) { return { isError: true, content: [ { type: "text", text: `Error updating status: ${error}`, }, ], }; } }
  • Zod input schema defining 'section' (string) and 'status' (enum: planned, in_progress, completed).
    { section: z .string() .describe( "Section name to update (e.g., 'projectInfo', 'technicalFundamentals')" ), status: z .enum(["planned", "in_progress", "completed"]) .describe("New status for the section"), },
  • Registration of the 'update-status' tool on the McpServer instance within the registerResearchTools function.
    server.tool( "update-status", { section: z .string() .describe( "Section name to update (e.g., 'projectInfo', 'technicalFundamentals')" ), status: z .enum(["planned", "in_progress", "completed"]) .describe("New status for the section"), }, async ({ section, status, }: { section: string; status: "planned" | "in_progress" | "completed"; }) => { try { const researchPlan = storage.getSection("researchPlan"); if (!researchPlan || !researchPlan[section]) { return { isError: true, content: [ { type: "text", text: `Section '${section}' not found in research plan`, }, ], }; } const updatedSection = { ...researchPlan[section], status, }; const updatedPlan = { ...researchPlan, [section]: updatedSection, }; storage.updateSection("researchPlan", updatedPlan); storage.addLogEntry(`Updated status of ${section} to ${status}`); return { content: [ { type: "text", text: `Updated status of '${section}' to '${status}'`, }, ], }; } catch (error) { return { isError: true, content: [ { type: "text", text: `Error updating status: ${error}`, }, ], }; } } );

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/aaronjmars/web3-research-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server