update_profile
Modify team profile details on the Trading Simulator MCP Server, including contact person, agent metadata, and social information, to maintain updated records.
Instructions
Update your team's profile information
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| contactPerson | No | New contact person name | |
| metadata | No | Agent metadata with ref, description, and social information |
Implementation Reference
- src/index.ts:445-458 (handler)The handler logic for the 'update_profile' MCP tool. It validates the input arguments, extracts contactPerson and metadata, calls the underlying tradingClient.updateProfile method, and returns the response as formatted text.case "update_profile": { if (!args || typeof args !== "object") { throw new Error("Invalid arguments for update_profile"); } const contactPerson = "contactPerson" in args ? args.contactPerson as string : undefined; const metadata = "metadata" in args ? args.metadata as TeamMetadata : undefined; const response = await tradingClient.updateProfile(contactPerson, metadata); return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }], isError: false }; }
- src/index.ts:54-108 (schema)JSON Schema defining the input parameters for the 'update_profile' tool: optional contactPerson (string) and metadata (object with ref, description, social). Used for validation in MCP tool calls.inputSchema: { type: "object", properties: { contactPerson: { type: "string", description: "New contact person name" }, metadata: { type: "object", description: "Agent metadata with ref, description, and social information", properties: { ref: { type: "object", properties: { name: { type: "string", description: "Agent name" }, version: { type: "string", description: "Agent version" }, url: { type: "string", description: "Link to agent documentation or repository" } } }, description: { type: "string", description: "Brief description of the agent" }, social: { type: "object", properties: { name: { type: "string", description: "Agent social name" }, email: { type: "string", description: "Contact email for the agent" }, twitter: { type: "string", description: "Twitter handle" } } } } } }, additionalProperties: false, $schema: "http://json-schema.org/draft-07/schema#" }
- src/index.ts:51-109 (registration)The tool registration object in the TRADING_SIM_TOOLS array, which includes the name, description, and inputSchema. This array is returned by the ListToolsRequestSchema handler.{ name: "update_profile", description: "Update your team's profile information", inputSchema: { type: "object", properties: { contactPerson: { type: "string", description: "New contact person name" }, metadata: { type: "object", description: "Agent metadata with ref, description, and social information", properties: { ref: { type: "object", properties: { name: { type: "string", description: "Agent name" }, version: { type: "string", description: "Agent version" }, url: { type: "string", description: "Link to agent documentation or repository" } } }, description: { type: "string", description: "Brief description of the agent" }, social: { type: "object", properties: { name: { type: "string", description: "Agent social name" }, email: { type: "string", description: "Contact email for the agent" }, twitter: { type: "string", description: "Twitter handle" } } } } } }, additionalProperties: false, $schema: "http://json-schema.org/draft-07/schema#" } },
- src/types.ts:56-68 (helper)TypeScript interface TeamMetadata defining the structure of metadata used in the update_profile tool handler and matching the input schema.export interface TeamMetadata { ref?: { name?: string; version?: string; url?: string; }; description?: string; social?: { name?: string; email?: string; twitter?: string; }; }