Skip to main content
Glama

pylon_create_contact

Add new contacts to your Pylon customer support platform by providing name, email, account association, and access permissions.

Instructions

Create a new contact in Pylon

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the contact
emailNoEmail address of the contact
account_idNoID of the account to associate with
avatar_urlNoURL of the contact avatar
portal_roleNoPortal access role

Implementation Reference

  • src/index.ts:199-221 (registration)
    Registration of the 'pylon_create_contact' MCP tool using server.tool(), including description, Zod input schema, and thin handler wrapper.
    server.tool(
    	'pylon_create_contact',
    	'Create a new contact in Pylon',
    	{
    		name: z.string().describe('The name of the contact'),
    		email: z.string().optional().describe('Email address of the contact'),
    		account_id: z
    			.string()
    			.optional()
    			.describe('ID of the account to associate with'),
    		avatar_url: z.string().optional().describe('URL of the contact avatar'),
    		portal_role: z
    			.enum(['no_access', 'member', 'admin'])
    			.optional()
    			.describe('Portal access role'),
    	},
    	async (params) => {
    		const result = await client.createContact(params);
    		return {
    			content: [{ type: 'text', text: JSON.stringify(result.data, null, 2) }],
    		};
    	},
    );
  • Zod schema defining the input parameters for the pylon_create_contact tool.
    {
    	name: z.string().describe('The name of the contact'),
    	email: z.string().optional().describe('Email address of the contact'),
    	account_id: z
    		.string()
    		.optional()
    		.describe('ID of the account to associate with'),
    	avatar_url: z.string().optional().describe('URL of the contact avatar'),
    	portal_role: z
    		.enum(['no_access', 'member', 'admin'])
    		.optional()
    		.describe('Portal access role'),
    },
  • MCP tool handler that invokes PylonClient.createContact and returns formatted JSON response.
    async (params) => {
    	const result = await client.createContact(params);
    	return {
    		content: [{ type: 'text', text: JSON.stringify(result.data, null, 2) }],
    	};
    },
  • PylonClient method implementing the core API call to create a contact via POST /contacts.
    async createContact(
    	data: Partial<Contact> & { name: string },
    ): Promise<SingleResponse<Contact>> {
    	return this.request<SingleResponse<Contact>>('POST', '/contacts', data);
    }

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/JustinBeckwith/pylon-mcp'

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