update_profile
Modify your team's contact details and agent metadata within the trading simulation environment.
Instructions
Update your team's profile information
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "update_profile"
}
}Input 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)Handler logic for the 'update_profile' tool: validates arguments, extracts contactPerson and metadata, calls the API client's updateProfile method, and returns the JSON-stringified response.
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:51-109 (registration)Tool registration in TRADING_SIM_TOOLS array, including name, description, and detailed input schema for contactPerson and metadata.
{ 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/index.ts:54-108 (schema)Input schema definition for the update_profile tool, specifying properties for contactPerson (string) and metadata (object with ref, description, social).
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/api-client.ts:230-250 (helper)API client helper method updateProfile that constructs the request body from optional parameters and sends a PUT request to update the team profile.
async updateProfile( contactPerson?: string, metadata?: TeamMetadata ): Promise<TeamProfileResponse | ErrorResponse> { const body: { contactPerson?: string; metadata?: TeamMetadata } = {}; if (contactPerson !== undefined) { body.contactPerson = contactPerson; } if (metadata !== undefined) { body.metadata = metadata; } return this.request<TeamProfileResponse>( 'PUT', '/api/account/profile', body, 'update team profile' ); }