mcp server
neuron
AI-powered WhatsApp chatbot platform with 196 tools for bots, campaigns, and contacts.
Description as published by the maintainer. Source
- version 1.0.2
- archived
archived — The linked repository returns 404. It was deleted, renamed or made private.
What this server can do
273 functions, named and described by the server itself. Parameter names are shown because they say more about what a function does than its name usually does.
neuron_add_bot_channel(botId, channelId)- Connect an additional WhatsApp channel to a bot as a secondary number. The bot will respond to messages on this channel. Required: botId, channelId.
neuron_add_to_contact_list(entries, idOrSlug)- Add one or more contacts to a list by contact ID or phone number. Phone numbers without existing contacts are auto-created as minimal contact records. Required: idOrSlug, entries.
neuron_add_tool_secret(id, key, value)- Store or update a secret credential (API key, token, etc.) for a custom tool integration. Secrets are encrypted at rest. Required: id, key, value.
neuron_apply_persona_to_bot(id, botId)- Give a bot this persona's voice: merges a delimited voice block into the bot's system prompt (idempotent — re-applying or swapping personas replaces it cleanly) and tags the bot's metadata with the persona id. Required: id, botId.
neuron_approve_reflection(id)- Approve a bot-generated reflection to incorporate the learned insight into the bot's future behavior and responses. Required: id.
neuron_assign_bot_to_channel(id, botId)- Assign a bot to handle incoming messages on a specific WhatsApp channel. Replaces any previously assigned bot. Required: id, botId.
neuron_assign_bot_to_social_channel(id, botId)- Assign a bot to handle interactions on a specific social media channel. The bot will be able to use the channel's credentials for social media actions. Required: id, botId.
neuron_attach_knowledge_base(id, priority, knowledgeBaseId)- Attach a knowledge base to a bot to enhance its responses with domain-specific knowledge. Optional priority determines retrieval order when multiple knowledge bases are attached. Required: id, knowledgeBaseId.
neuron_audio_contact(audioBase64, audioFormat)- Transcribe an audio recording and extract contact information (name, phone, email, notes, tags). Automatically saves the extracted contact to the organization's address book. Required: audioBase64.
neuron_block_contact(jid, channelId)- Block a WhatsApp contact. Blocked contacts cannot message the bot or see its profile. Required: channelId, jid.
neuron_bot_api_chat(apiKey, message, contactName, contactPhone)- Send a message to a bot via the API and receive a streaming or complete AI-generated response. Requires a valid API key with 'nrn_' prefix. Required: apiKey, message, contactPhone.
neuron_bot_api_get_bot(apiKey)- Retrieve configuration and status information about the bot associated with the provided API key. Required: apiKey.
neuron_bot_api_get_messages(limit, apiKey, before, conversationId)- Retrieve message history for a specific conversation with cursor-based pagination. Requires a valid API key. Required: apiKey, conversationId.
neuron_bot_api_list_conversations(page, limit, apiKey, status)- Retrieve a paginated list of conversations managed by the bot. Supports filtering by conversation status. Requires a valid API key. Required: apiKey.
neuron_bot_api_send(to, apiKey, sendAt, message, mediaUrl, channelId, messageType)- Send an outbound message through the bot API to a specified phone number. Supports text and media messages. Requires a valid API key. Required: apiKey, to, message.
neuron_browse_list_pool(page, limit, region, search, category)- Browse verified contact lists available in the shared marketplace pool. Filter by category, region, or search term.
neuron_browse_pool(page, tags, type, limit, query, category, featured)- Browse the shared marketplace pool of published bots, tools, knowledge bases, and reflections with optional filtering by type, category, tags, or search query.
neuron_build_persona(name, sampleLimit, collectionId)- Distill a reusable voice from a Collection of mined content: analyzes the top-engagement items and reverse-engineers a voiceProfile (tone, diction, cadence, emoji/formatting habits, themes, dos/donts) + representative exemplars. Requires the collection to have >=3 usable samples. Runs an LLM call (a few seconds). Required: collectionId.
neuron_bulk_toggle_builtin_tools(botId, settings)- Enable or disable multiple built-in tools at once for a bot. More efficient than toggling tools individually. Required: botId, settings.
neuron_campaign_marketplace(page, limit)- Browse available campaigns in the marketplace that your organization can join to earn rewards by sending messages.
neuron_campaign_participants(id)- Retrieve all participants who have joined a campaign you own, including their delivery counts and earned rewards. Required: id.
neuron_cancel_approval(apiKey, reason, approvalId)- Cancel a still-pending approval (e.g. the upstream action was aborted). Fires the approval.cancelled callback. Requires a bot API key. Required: apiKey, approvalId.
neuron_cancel_scheduled_message(id)- Cancel a scheduled message to prevent it from being sent. Only messages with status 'scheduled' can be cancelled. This action cannot be undone. Required: id.
neuron_cancel_subscription- Cancel the current active subscription. Access continues until the end of the current billing period.
neuron_checkout(plan)- Initiate a checkout session for a subscription plan upgrade. Returns a checkout URL or confirmation to complete the purchase. Required: plan.
neuron_close_conversation(id)- Close an active conversation, marking it as completed. The bot will stop responding and the conversation is archived. Required: id.
neuron_compose_message(to, text, sendAt, mediaUrl, channelId, contactName, messageType)- Compose and send a new message to a phone number via a specific channel. Automatically creates a new conversation if one does not exist. Required: channelId, to, text.
neuron_convert_lead(id, addToList)- Promote a phone-bearing lead into a contact (so it can be messaged / added to lists). Optionally add the new contact to a list. Required: id.
neuron_create_ad_request(budget, message, mediaUrl, targetGoal, messageType, targetDemographics)- Create an ad distribution request to send a message to contacts in pool lists matching target demographics. Deducts from wallet upon approval. Required: message, targetDemographics, targetGoal, budget.
neuron_create_api_key(name, botId, expiresAt)- Create a new API key for programmatic access to a specific bot. Store the key securely as it cannot be retrieved later. Required: botId, name.
neuron_create_blog_post(tags, title, status, content, excerpt, seoTitle, authorType, seoKeywords, coverImageUrl, seoDescription)- Create a new blog post in draft or published status with specified title, content, and optional metadata such as tags, excerpt, and SEO fields. Content supports full markdown (GFM) AND raw HTML — images/GIFs via , videos via <video>, YouTube/Loom embeds via <iframe>, collapsible sections via <details>/<summary>, plus <mark>, <kbd>, <abbr>, <div> with inline styles, etc. Required: title, content, authorType.
neuron_create_bot(name, llmModel, metadata, maxTokens, assignment, systemPrompt, llmTemperature, welcomeMessage, fallbackMessage, greetingMessage, escalationPrompt, responsibilities, whatsappChannelId)- Create a new AI bot with specified name, model, and behavior instructions. Returns the created bot object. Required: name, systemPrompt.
neuron_create_broadcast(name, botId, message, mediaUrl, channelId, recipients, messageType, scheduledAt, recipientSources)- Create a new broadcast message in draft status. Provide recipients directly or use recipientSources to resolve from contact lists. The WhatsApp channel is auto-resolved if not specified. Required: name, message.
neuron_create_campaign(title, message, deadline, guidelines, description, totalBudget, rewardPerDelivery, requireMutualContact)- Create a new outreach campaign with target audience, messaging template, and schedule configuration. Requires a Pro or Business plan. Required: title, message, rewardPerDelivery, totalBudget, deadline.
neuron_create_channel(name, type, phoneNumber, metaAccessToken, metaPhoneNumberId)- Create a new WhatsApp channel with either Meta Cloud API or Baileys (direct WhatsApp) integration. Meta Cloud channels require metaPhoneNumberId and metaAccessToken. Required: name, type.
neuron_create_contact(name, tags, email, notes, phone, doNotBroadcast, doNotAutoRespond)- Create a new contact in the organization's address book. If notes are provided, they are saved as a structured note entry with source tracking. Required: name, phone.
neuron_create_contact_list(name, slug, type, criteria, description, refreshSchedule)- Create a new contact list. Slug is auto-generated from name if not provided. For dynamic lists, provide criteria with rules and/or an AI prompt. Required: name.
neuron_create_kb_entry(id, title, folder, source, content, metadata)- Add a new entry (note, document, or information piece) to a knowledge base. Required: id, title, content.
neuron_create_knowledge_base(name, description, rootInstruction)- Create a new knowledge base to store and organize information, documents, and entries. Required: name.
neuron_create_lead_source(name, type, config, enabled, schedule, timezone, scheduleKind)- Create a lead source. `config` depends on type: text_paste {text}; web_scrape {url|urls[]}; document {mediaUrl,mimeType}; tool_output {toolId,args?}; instagram/x {channelId, query?|hashtag?, limit?}; csv {rows[]}; stream {triggerTaskId?} (fed by the ingest endpoint). Set scheduleKind cron/interval/once for recurring (schedule: cron {time,days?} / interval {everyMinutes} / once {runAt}). Required: name, type.
neuron_create_newsletter(name, channelId, description)- Create a new WhatsApp Channel newsletter for one-way broadcast updates. Requires a connected Baileys session on the specified channel. Required: channelId, name.
neuron_create_outbound_webhook(url, name, botId, eventTypes, filterPrompt)- Register a new outbound webhook that sends HTTP POST requests to an external URL when specified bot events occur. Supported events: message.created, message.assistant, conversation.created, conversation.escalated, conversation.closed, bot.paused, bot.resumed. Required: botId, name, url, eventTypes.
neuron_create_social_channel(label, platform, username, credentials)- Create a new social media channel with platform credentials. Supports Instagram and Twitter/X. Credentials should be the full session JSON including account, cookies, headers, and platform-specific tokens. Required: platform, label.
neuron_create_task(botId, title, config, enabled, schedule, timezone, instruction, scheduleKind)- Create a scheduled autonomous task for a bot. The instruction is a self-contained, natural-language directive the bot executes with its tools (find stale conversations, message contacts, schedule follow-ups, etc.). Sends are always screened against Do-Not-Contact, a per-run cap, and a no-repeat window. Required: botId, title, instruction, scheduleKind.
neuron_create_tool(name, type, botId, config, authType, rateLimit, timeoutMs, description)- Create a custom API tool that the bot can invoke during conversations to fetch external data or trigger actions. Required: botId, name, description, type, config.
neuron_create_webhook(name, slug, botId, isActive, eventType, processingPrompt)- Register a new inbound webhook endpoint that triggers bot actions when called by an external service. Required: botId, name.
neuron_delete_ad_request(adRequestId)- Permanently delete a draft ad request. Only ad requests in draft status can be deleted. Required: adRequestId.
neuron_delete_blog_post(id)- Permanently delete a blog post by its ID. This action cannot be undone. Required: id.
neuron_delete_bot(id)- Permanently delete a bot and all its associated data. This action cannot be undone. Required: id.
neuron_delete_broadcast(id)- Permanently delete a broadcast and its recipient data. This action cannot be undone. Required: id.
neuron_delete_campaign(id)- Permanently delete a campaign that is in 'draft' status. Active or funded campaigns cannot be deleted. Required: id.
neuron_delete_channel(id)- Permanently delete a WhatsApp channel and disconnect any active sessions. This action cannot be undone. Required: id.
neuron_delete_contact(id)- Permanently delete a contact and remove them from all contact lists. This action cannot be undone. Required: id.
neuron_delete_contact_list(idOrSlug)- Permanently delete a contact list. System-protected lists (e.g., 'Do Not Contact') cannot be deleted. Required: idOrSlug.
neuron_delete_kb_entry(kbId, entryId)- Permanently delete a specific entry from a knowledge base. Required: kbId, entryId.
neuron_delete_knowledge_base(id)- Permanently delete a knowledge base and all its associated entries and documents. Required: id.
neuron_delete_message(id, msgId)- Permanently delete a specific message from a conversation. This action cannot be undone. Required: id, msgId.
neuron_delete_newsletter(id)- Permanently delete a WhatsApp Channel newsletter and remove it from WhatsApp. This action cannot be undone. Required: id.
neuron_delete_outbound_webhook(id)- Permanently remove an outbound webhook. The external endpoint will no longer receive event notifications from this bot. Required: id.
neuron_delete_persona(id)- Delete a voice persona. Required: id.
neuron_delete_social_channel(id)- Permanently delete a social media channel and disconnect any active sessions. This action cannot be undone. Required: id.
neuron_delete_task(id)- Delete a scheduled task. This is a soft delete — the task stops running immediately. Required: id.
neuron_delete_tool(id)- Permanently remove a custom API tool integration from a bot. The bot will no longer be able to invoke this tool in conversations. Required: id.
neuron_delete_webhook(id)- Permanently remove an inbound webhook from a bot. External services will no longer be able to trigger this endpoint. Required: id.
neuron_detach_knowledge_base(id, kbId)- Remove a knowledge base from a bot. The bot will no longer reference this knowledge base when generating responses. Required: id, kbId.
neuron_draft_task(botId, prompt, timezone)- Turn a plain-English description into a structured task spec (title, instruction, scheduleKind, schedule, timezone, config) WITHOUT creating it. Use the returned draft as input to neuron_create_task after any edits. Required: botId, prompt.
neuron_edit_message(id, msgId, content)- Edit the content of a previously sent message in a conversation. Only the message sender can edit their messages. Required: id, msgId, content.
neuron_export_contacts- Export all contacts as a downloadable dataset for the current organization.
neuron_extract_leads(type, config)- Run a one-off extraction WITHOUT creating a persistent source, saving the results to the lead pool. Great for pasted text or a web page. `type` + `config` as in neuron_create_lead_source (e.g. type='text_paste', config={text}). Required: type, config.
neuron_find_contact_lists_for_contact(contactId)- Retrieve all contact lists that a specific contact belongs to. Required: contactId.
neuron_forward_message(to, from, channelId, messageId)- Forward a WhatsApp message from one chat to another. Uses copy-send approach — the message content is re-sent to the destination. Required: channelId, messageId, from, to.
neuron_fund_ad_request(adRequestId)- Fund an approved ad request from the organization wallet. This debits the budget amount and activates the campaign for distribution. If wallet balance is insufficient, returns shortfall information instead of an error. Required: adRequestId.
neuron_fund_campaign(id)- Fund an approved campaign by deducting the total budget from the organization's wallet balance. Requires sufficient wallet funds. Required: id.
neuron_fund_wallet(email, amount)- Initialize a wallet funding transaction via Paystack. Returns a checkout URL to complete the payment in a browser. Required: amount, email.
neuron_generate_from_persona(id, count, topic, format, platform, extraInstructions)- Generate content written in the persona's voice for a topic/brief. Returns N variations. Stateless — nothing is persisted. Required: id.
neuron_get_ad_request(adRequestId)- Get detailed information about a specific ad request, including pool selections if targeting mode is manual. Required: adRequestId.
neuron_get_ad_request_analytics(adRequestId)- Retrieve delivery analytics and performance breakdown for a specific ad request, including delivery rates and cost metrics. Required: adRequestId.
neuron_get_approval(apiKey, approvalId, waitSeconds)- Fetch a single approval request by id, including its decision once resolved. Set waitSeconds (1–60) to long-poll until it resolves. Requires a bot API key. Required: apiKey, approvalId.
neuron_get_bank_account- Retrieve the saved bank account details currently configured as the organization's payout destination.
neuron_get_billing- Retrieve the current billing information, subscription plan, and usage details for the organization.
neuron_get_blocklist(channelId)- Fetch the list of all blocked WhatsApp contacts for the bot on the given channel. Required: channelId.
neuron_get_blog_post(slug)- Retrieve a single blog post by its URL-friendly slug, including full content and metadata. Required: slug.
neuron_get_bot(id)- Retrieve detailed information about a specific bot including its configuration, status, and associated resources. Required: id.
neuron_get_bot_analytics(id)- Retrieve analytics and usage statistics for a specific bot, including message counts, response times, and conversation metrics. Required: id.
neuron_get_broadcast(id)- Retrieve detailed information about a specific broadcast, including its status, message content, and recipient summary. Required: id.
neuron_get_broadcast_recipients(id, page, limit, status)- Retrieve the paginated list of recipients for a specific broadcast with their individual delivery status. Required: id.
neuron_get_business_profile(jid, channelId)- Fetch the WhatsApp Business profile of an external contact, including description, website, category, and business hours. Required: channelId, jid.
neuron_get_campaign(id)- Retrieve detailed information about a specific campaign including its status, budget, participants, and delivery metrics. Required: id.
neuron_get_channel(id)- Retrieve detailed information about a specific WhatsApp channel, including its configuration, type, and connection status. Required: id.
neuron_get_channel_events(id, page, limit)- Retrieve the event log for a channel, including connection events, message events, and errors. Supports pagination. Required: id.
neuron_get_channel_qr(id)- Retrieve the current QR code for pairing a Baileys channel with WhatsApp. A session must be started first. Required: id.
neuron_get_channel_status(id)- Retrieve the current connection status and session details for a specific channel (e.g., connected, disconnected, qr_pending). Required: id.
neuron_get_contact(id)- Retrieve detailed information about a specific contact including their tags, notes, and associated lists. Required: id.
neuron_get_contact_list(idOrSlug)- Retrieve detailed information about a specific contact list, including member count and configuration. Required: idOrSlug.
neuron_get_contact_list_members(page, limit, search, idOrSlug)- Retrieve the members of a specific contact list with optional search filtering and pagination. Required: idOrSlug.
neuron_get_conversation(id)- Retrieve detailed information about a specific conversation, including its status, participants, and metadata. Required: id.
neuron_get_eligible_contacts(id)- Retrieve contacts eligible to receive a campaign message. Respects deduplication rules and mutual contact requirements. Required: id.
neuron_get_group_invite_link(groupJid, channelId)- Get the invite link for a WhatsApp group. Only supported on Baileys channels where the bot is a group admin. Required: channelId, groupJid.
neuron_get_group_participants(id, groupJid)- Retrieve the list of participants in a specific WhatsApp group accessible through a channel. Required: id, groupJid.
neuron_get_knowledge_base(id)- Retrieve detailed information about a specific knowledge base by its ID. Required: id.
neuron_get_messages(id, limit, cursor)- Retrieve messages from a specific conversation in chronological order, with optional cursor-based pagination. Required: id.
neuron_get_newsletter(id)- Retrieve detailed information about a specific WhatsApp Channel newsletter, including subscriber count and metadata. Required: id.
neuron_get_organization(orgId)- Retrieve detailed information about a specific organization, including its name, settings, and configuration. Required: orgId.
neuron_get_outbound_webhook_logs(id, page, limit)- Retrieve delivery logs for an outbound webhook to monitor event dispatch history and debug delivery failures. Required: id.
neuron_get_persona(id)- Get one voice persona (full voiceProfile + exemplars). Required: id.
neuron_get_pool_item(id)- Retrieve detailed information about a specific item in the marketplace pool, including its description, category, tags, and install count. Required: id.
neuron_get_privacy_settings(channelId)- Fetch the bot's current WhatsApp privacy settings (last seen, online, profile picture, status, read receipts, groups add). Required: channelId.
neuron_get_profile- Retrieve the authenticated user's profile information including name, email, role, and current organization.
neuron_get_scheduled_message(id)- Retrieve detailed information about a specific scheduled message, including its status, send time, and message content. Required: id.
neuron_get_social_channel(id)- Retrieve detailed information about a specific social media channel, including its platform, credentials status, and connection state. Required: id.
neuron_get_social_channel_status(id)- Retrieve the current session status for a social media channel (e.g., connected, disconnected, error). Required: id.
neuron_get_task_runs(id, page, limit)- Retrieve the paginated execution history for a task — each run's status, AI summary, tool steps, and stats (messages sent, contacts processed). Required: id.
neuron_get_webhook_logs(id, page, limit)- Retrieve execution logs for an inbound webhook to monitor incoming requests and debug processing issues. Required: id.
neuron_handle_join_requests(action, groupJid, channelId, participants)- Approve or reject pending join requests for a WhatsApp group. Requires admin privileges. Required: channelId, groupJid, participants, action.
neuron_import_contacts(contacts)- Bulk import multiple contacts into the organization's address book. Accepts an array of contact objects with name, phone, and optional fields. Required: contacts.
neuron_ingest_knowledge(title, folder, source, content, sourceUrl, externalId, processing, knowledgeBaseId)- Ingest content into a knowledge base. Supports deduplication via externalId and optional LLM processing (summarize, extract_facts, or custom instruction). Required: knowledgeBaseId, title, content.
neuron_install_from_pool(id, mode, targetKbId, targetBotId)- Install a resource from the marketplace pool into the current organization. Choose 'fork' for an independent copy or 'subscribe' to receive future updates from the publisher. Required: id, mode.
neuron_invite_member(name, role, email, orgId, canViewConversations)- Send an invitation to a new member to join the organization. The invitee receives an email with a link to accept. Required: orgId, email, name.
neuron_join_campaign(id, channelId)- Join a marketplace campaign as a participant to earn rewards by sending messages through your WhatsApp channel. Required: id, channelId.
neuron_lead_stats- Counts of leads by status.
neuron_leave_group(groupJid, channelId)- Make the bot leave a WhatsApp group. This action is irreversible — the bot will need to be re-added by an admin. Required: channelId, groupJid.
neuron_list_ad_requests(page, limit, status)- Retrieve all ad requests for the current organization with optional status filtering and pagination.
neuron_list_api_keys(botId)- Retrieve all API keys associated with a specific bot, including their names, creation dates, expiration status, and revocation status. Required: botId.
neuron_list_approvals(page, limit, apiKey, status, channelId)- List approval requests for the organization, newest first. Filter by status (pending/approved/rejected/expired/cancelled). Requires a bot API key. Required: apiKey.
neuron_list_audit_logs(page, limit, action, resourceType)- Retrieve audit logs for the organization, showing a chronological record of actions performed by members. Supports filtering by action type and resource.
neuron_list_blog_posts(tag, page, limit, status, authorId, authorType)- Retrieve a paginated list of blog posts with optional filtering by status, author type, author ID, or tag.
neuron_list_bot_channels(botId)- Retrieve all WhatsApp channels connected to a specific bot, including primary and secondary connections. Required: botId.
neuron_list_bot_knowledge_bases(id)- Retrieve all knowledge bases attached to a specific bot, including their priorities and metadata. Required: id.
neuron_list_bots- Retrieve all bots accessible to the current user, including their configurations and status.
neuron_list_broadcasts(page, limit, status)- Retrieve a paginated list of all broadcasts with optional filtering by status such as draft, sent, or scheduled.
neuron_list_builtin_tools(botId)- Retrieve all available built-in tools with their enabled/disabled status for a specific bot. Built-in tools include WhatsApp actions (send messages, delete messages, post status), utility functions (web search, QR codes, weather), scheduling, knowledge base search, and more. Required: botId.
neuron_list_campaigns(page, limit, status)- Retrieve all campaigns for the current organization with optional status filtering and pagination.
neuron_list_channel_groups(id)- Retrieve all WhatsApp groups that the channel is participating in, including group metadata. Required: id.
neuron_list_channels- Retrieve all WhatsApp channels configured in the current organization, including their type and connection status.
neuron_list_contact_lists(page, type, limit, search)- Retrieve all contact lists for the current organization with optional filtering by search term, type, and pagination.
neuron_list_contacts(tag, page, limit, search, doNotBroadcast, doNotAutoRespond)- Retrieve all contacts for the current organization with optional filtering by search term, tag, and pagination.
neuron_list_conversations(botId, limit, cursor, status)- Retrieve a paginated list of conversations for a specific bot, with optional filtering by status. Required: botId.
neuron_list_installed- List all items the current organization has installed from the marketplace pool.
neuron_list_invitations(orgId)- Retrieve a list of all pending invitations for the organization that have not yet been accepted or revoked. Required: orgId.
neuron_list_kb_bots(id)- Retrieve all bots that are connected to or using a specific knowledge base. Required: id.
neuron_list_kb_entries(id, page, limit, folder, source)- Retrieve entries from a knowledge base with optional filtering and pagination. Required: id.
neuron_list_knowledge_bases- Retrieve all knowledge bases accessible to the current user.
neuron_list_lead_sources- List configured lead sources for the org.
neuron_list_leads(page, limit, search, status, sourceId)- List leads from the pool, filterable by status (new/enriched/contacted/converted/rejected), sourceId, and search.
neuron_list_members(orgId)- Retrieve a list of all members in the organization, including their roles and permissions. Required: orgId.
neuron_list_newsletters(page, limit, channelId)- Retrieve a paginated list of all WhatsApp Channel newsletters for the organization, with optional filtering by WhatsApp session channel.
neuron_list_organizations- Retrieve all organizations the authenticated user belongs to, including their roles in each.
neuron_list_outbound_webhooks(botId)- Retrieve all outbound webhooks configured for a specific bot, including their target URLs and subscribed event types. Required: botId.
neuron_list_payouts(page, limit)- Retrieve the payout history for the organization, including amounts, statuses, and timestamps.
neuron_list_personas- List voice personas for the org. Each persona holds a voiceProfile (tone/style/themes/dos/donts) + exemplars distilled from a Collection of mined content.
neuron_list_published- List all items the current organization has published to the marketplace pool.
neuron_list_reflections(botId, status)- Retrieve pending reflections that the bot has generated from conversations, awaiting human review. Optionally filter by approval status. Required: botId.
neuron_list_scheduled_messages(page, limit, status)- Retrieve a paginated list of scheduled messages for the current organization, with optional filtering by status (scheduled, sent, failed, cancelled).
neuron_list_social_channels- Retrieve all social media channels (Instagram, Twitter/X) configured in the current organization.
neuron_list_tasks(botId)- List all scheduled tasks for a bot. A task is a natural-language instruction the bot carries out autonomously on a schedule (e.g. 're-engage stale contacts every morning at 8am'). Required: botId.
neuron_list_tools(botId)- Retrieve all custom API tool integrations configured for a specific bot, including their endpoints and configuration. Required: botId.
neuron_list_webhooks(botId)- Retrieve all inbound webhooks configured for a specific bot, including their status and configuration. Required: botId.
neuron_list_whatsapp_contacts(q, id)- Retrieve contacts from the WhatsApp account connected to this channel, with optional search filtering. Required: id.
neuron_login- Authenticate with Neuron. Three modes: 1. No args: Opens a browser URL for secure authorization (recommended — no credentials shared with AI) 2. token: Paste an MCP token from the Neuron dashboard 3. email+password: Legacy login (credentials visible to AI)
neuron_logout- Clear the current auth token locally. Does NOT revoke server-side MCP tokens — revoke from the Neuron dashboard (Settings > MCP Tokens) for full invalidation.
neuron_mark_as_read(chatJid, channelId, messageId)- Mark a WhatsApp message as read, sending read receipts to the sender. Required: channelId, chatJid, messageId.
neuron_merge_contact_lists(name, slug, mergeType, sourceListIds)- Merge two or more contact lists into a single unified list, deduplicating entries. Window merge creates a virtual union; materialized merge creates a static copy. Required: name, sourceListIds, mergeType.
neuron_my_participations(page, limit)- Retrieve all campaigns the current organization has joined as a participant, including earnings and delivery stats.
neuron_pause_ad_request(adRequestId)- Pause an active ad request campaign. Distribution stops until resumed. Only active ad requests can be paused. Required: adRequestId.
neuron_pause_bot(id)- Pause a bot to temporarily stop it from processing new messages. The bot retains its configuration and can be resumed later. Required: id.
neuron_pause_campaign(id)- Pause an active campaign to temporarily stop message delivery. Can be resumed later with the resume action. Required: id.
neuron_populate_contacts- Enrich existing contacts with additional data from connected messaging channels. Syncs profile information from linked platforms.
neuron_post_to_newsletter(id, text, mediaUrl, messageType)- Post a message to a WhatsApp Channel newsletter. All subscribers receive the message. Provide at least one of text or mediaUrl. This triggers delivery and cannot be undone. Required: id.
neuron_publish_blog_post(id)- Publish a blog post, making it publicly visible. The post must be in 'draft' status. Required: id.
neuron_publish_to_pool(name, tags, type, category, sourceId, description, defaultSecrets, setupInstructions)- Publish a bot, tool, knowledge base, or reflection to the shared marketplace pool for other organizations to discover and install. Required: type, sourceId, name.
neuron_pull_pool_update(installId)- Pull the latest updates for a subscribed pool resource to sync with the publisher's changes. Only applies to items installed with 'subscribe' mode. Required: installId.
neuron_refresh_contact_list(idOrSlug)- Trigger a refresh of a dynamic contact list. Re-evaluates criteria rules and/or AI prompt and materializes updated members. Required: idOrSlug.
neuron_refresh_newsletter(id)- Re-fetch metadata (name, description, subscriber count) for a WhatsApp Channel newsletter from WhatsApp to synchronize local data. Required: id.
neuron_refresh_token(refreshToken)- Refresh the access token using a refresh token. Automatically sets the new access token for subsequent API calls. Required: refreshToken.
neuron_register(name, email, orgName, password)- Register a new user account with name, email, password, and organization name. Creates both the user and an initial organization. Required: name, email, password, orgName.
neuron_reject_reflection(id)- Reject a bot-generated reflection to prevent it from being incorporated into the bot's learned behavior. Required: id.
neuron_release_conversation(id)- Release a conversation back to the bot, returning control from a human agent. The bot will resume auto-responding. Required: id.
neuron_remove_bot_channel(botId, channelId)- Disconnect a WhatsApp channel from a bot. The bot will no longer respond to messages on this channel. Required: botId, channelId.
neuron_remove_from_contact_list(idOrSlug, contactIds)- Remove one or more contacts from a list by their contact IDs. Does not delete the contacts themselves. Required: idOrSlug, contactIds.
neuron_remove_member(orgId, userId)- Permanently remove a member from the organization. The member loses all access immediately. This action cannot be undone. Required: orgId, userId.
neuron_remove_profile_picture(channelId)- Remove the bot's WhatsApp profile picture, reverting to the default. Required: channelId.
neuron_remove_tool_secret(id, key)- Permanently delete a stored secret from a custom tool integration. The tool will lose access to this credential. Required: id, key.
neuron_request_approval(to, apiKey, prompt, context, callback, metadata, channelId, idempotencyKey, expiresInSeconds)- Ask a human to approve or reject an action over WhatsApp and get the decision back. The recipient replies approve/reject (optionally with a reason) or quotes the message. Use this to gate any action needing human sign-off (refunds, deploys, spend, publishing). Returns an approvalId; poll neuron_get_approval / neuron_list_approvals for the outcome, or supply a webhook in `callback` to be notified. Requires a bot API key ('nrn_' prefix). Required: apiKey, to, prompt.
neuron_request_pair_code(id, phoneNumber)- Request a numeric pairing code for a Baileys channel as an alternative to QR code scanning. Requires the phone number to pair with. Required: id, phoneNumber.
neuron_request_payout(amount)- Request a payout to transfer funds from the organization wallet to the linked bank account. A bank account must be saved first. Required: amount.
neuron_respond_approval(apiKey, reason, decision, approvalId, responderName)- Approve or reject a pending approval programmatically — the decision surface for an authorized operator acting via MCP instead of replying on WhatsApp. Fires the configured callback and posts the outcome to the WhatsApp chat. Exactly-once: the first responder (here or on WhatsApp) wins; later responses return 410. Requires a bot API key. Required: apiKey, approvalId, decision.
neuron_resume_ad_request(adRequestId)- Resume a paused ad request campaign. Distribution resumes from where it left off. Only paused ad requests can be resumed. Required: adRequestId.
neuron_resume_bot(id)- Resume a previously paused bot so it begins processing new messages again. Required: id.
neuron_resume_campaign(id)- Resume a previously paused campaign to restart message delivery. Required: id.
neuron_revoke_api_key(botId, keyId)- Permanently revoke an API key to immediately invalidate it and prevent further programmatic access. This action cannot be undone. Required: botId, keyId.
neuron_revoke_group_invite(groupJid, channelId)- Revoke the current group invite link and generate a new one. The old link will stop working. Requires admin. Required: channelId, groupJid.
neuron_revoke_invitation(orgId, invitationId)- Revoke a pending organization invitation so it can no longer be accepted. This action cannot be undone. Required: orgId, invitationId.
neuron_rewrite_text(text, instruction)- Rewrite or rephrase text using AI with specified tone, style, or instructions (e.g., make it more formal, translate, summarize). Required: text.
neuron_run_lead_source(id)- Run a lead source now to pull new leads into the pool (queues the extraction). Required: id.
neuron_run_task(id)- Trigger a task to run immediately (in addition to its normal schedule). Returns once the run is queued. Required: id.
neuron_save_bank_account(bankCode, bankName, accountName, accountNumber)- Save a verified bank account as the organization's payout destination. Verify the account first using neuron_verify_bank_account. Required: bankCode, bankName, accountNumber, accountName.
neuron_search_contacts(q)- Search contacts by a query string across name, phone number, and email fields. Returns matching contacts ranked by relevance. Required: q.
neuron_search_knowledge(q, id, limit)- Perform semantic search across all entries and documents in a knowledge base to find relevant information. Required: id, q.
neuron_semantic_search_contacts(limit, query)- Search contacts using natural language AI-powered semantic search. Finds contacts based on the meaning of their notes — skills, services, schedules, preferences, etc. Returns ranked results with relevance scores and AI-generated match reasons. Required: query.
neuron_send_broadcast(id)- Send a broadcast message to all its recipients. The broadcast must be in draft status. This triggers message delivery and cannot be undone. Required: id.
neuron_send_campaign_message(id, contactIds)- Send a campaign message to selected eligible contacts via WhatsApp. Requires the campaign to be in 'active' status and contacts to be eligible. Required: id, contactIds.
neuron_send_contact_card(to, channelId, contactOrg, contactName, contactPhone)- Send a vCard contact card via WhatsApp with name, phone, and optional organization. Required: channelId, to, contactName, contactPhone.
neuron_send_location(to, name, address, latitude, channelId, longitude)- Send a location pin via WhatsApp with coordinates and optional name/address. Required: channelId, to, latitude, longitude.
neuron_send_message(id, content, mediaUrl, messageType)- Send a message to an existing conversation. Supports text, image, and document message types with optional media attachments. Required: id, content.
neuron_send_poll(to, name, options, channelId, selectableCount)- Send a poll message via WhatsApp. Polls support 2-12 options and optional multi-select. Only supported on Baileys channels. Required: channelId, to, name, options.
neuron_send_reaction(to, emoji, channelId, messageId)- Send or remove an emoji reaction on a WhatsApp message. Pass an empty emoji string to remove a reaction. Required: channelId, to, messageId, emoji.
neuron_send_sticker(to, channelId, stickerUrl)- Send a WebP sticker image via WhatsApp. Only supported on Baileys channels. Required: channelId, to, stickerUrl.
neuron_send_whatsapp(to, text, sendAt, mediaUrl, channelId, contactName, messageType)- Send a WhatsApp message to a phone number or group. Auto-resolves which channel to use (org default > first connected). Supports text, image, audio, video, and document types. Required: to, text.
neuron_set_default_channel(orgId, channelId)- Set or clear the default WhatsApp channel for the organization. The default channel is used by neuron_send_whatsapp for auto-resolving which channel to send through. Required: orgId, channelId.
neuron_set_group_join_approval(enabled, groupJid, channelId)- Enable or disable join approval mode for a WhatsApp group. When enabled, join requests must be manually approved by admins. Requires admin. Required: channelId, groupJid, enabled.
neuron_set_presence(to, type, channelId)- Set typing indicator or online/offline presence on a WhatsApp chat. Only supported on Baileys channels. Required: channelId, to, type.
neuron_start_channel_session(id)- Start a Baileys (direct WhatsApp) session for the channel. Generates a QR code for device pairing. Only applicable to Baileys-type channels. Required: id.
neuron_start_social_channel_session(id)- Start or reconnect a social media session for the channel. Initializes the platform client with stored credentials. Required: id.
neuron_stop_ad_request(adRequestId)- Stop an active or paused ad request campaign permanently. Any remaining unspent budget is refunded to the organization wallet. This cannot be undone. Required: adRequestId.
neuron_stop_campaign(id)- Permanently stop an active campaign and refund the remaining unspent budget to the organization's wallet. This action cannot be undone. Required: id.
neuron_stop_channel_session(id)- Stop the active Baileys session for the channel and disconnect from WhatsApp. The channel can be restarted later. Required: id.
neuron_stop_social_channel_session(id)- Stop the active session for a social media channel. The channel can be restarted later. Required: id.
neuron_submit_ad_request(adRequestId)- Submit a draft ad request for admin review. The request must be in draft status. After submission, an admin must approve it before it can be funded. Required: adRequestId.
neuron_submit_campaign(id)- Submit a draft campaign for admin review and approval. The campaign must be in 'draft' status. Required: id.
neuron_submit_to_list_pool(listId, category, channelId, description, demographics, pricePerDelivery)- Submit a contact list to the shared pool marketplace for other organizations to discover and use for ad distribution. Required: listId, channelId, category, pricePerDelivery.
neuron_switch_instance(url)- Switch the MCP server to target a different Neuron backend instance. Auth tokens are preserved per instance — if you've previously logged in to an instance, switching back restores your session automatically. Call with no args to list known instances and see which is active.
neuron_switch_org(orgId)- Switch to a different organization. Returns a new access token scoped to the target organization and automatically sets it. Required: orgId.
neuron_sync_knowledge(id)- Trigger a synchronization operation to refresh embeddings, reindex content, or update the knowledge base state. Required: id.
neuron_sync_newsletters(channelId)- Synchronize and import WhatsApp Channels from a connected WhatsApp session into Neuron. Discovers channels created outside Neuron. Required: channelId.
neuron_sync_reflections(botId)- Synchronize all approved reflections into the bot's active knowledge base, applying learned insights to future conversations. Required: botId.
neuron_sync_whatsapp_contacts- Synchronize contacts from all connected WhatsApp channels into the organization's contact database. Creates new contacts for unseen numbers.
neuron_takeover_conversation(id)- Transfer control of a conversation from the bot to a human agent. The bot will stop auto-responding until the conversation is released. Required: id.
neuron_test_tool(id, args)- Execute a dry-run test of a custom API tool with sample arguments to verify the endpoint responds correctly. Required: id, args.
neuron_toggle_builtin_tool(botId, toolId, enabled)- Toggle a built-in tool on or off for a specific bot. Enabled tools become available in the bot's conversations. Example tool IDs: delete_message, post_to_channel, post_status, web_search, send_direct_message, react_to_message, set_reminder, create_poll. Required: botId, toolId, enabled.
neuron_toggle_featured(id)- Toggle the featured status of a pool item. Featured items appear prominently in the marketplace. Requires admin privileges. Required: id.
neuron_toggle_task(id)- Pause or resume a scheduled task (flips its enabled state and reschedules the next run). Required: id.
neuron_unassign_bot_from_channel(id)- Remove the bot assignment from a WhatsApp channel. The channel will stop auto-responding to messages. Required: id.
neuron_unassign_bot_from_social_channel(id, botId)- Remove the bot assignment from a social media channel. The bot will lose access to the channel's social media credentials. Required: id, botId.
neuron_unblock_contact(jid, channelId)- Unblock a previously blocked WhatsApp contact. Required: channelId, jid.
neuron_unpublish_from_pool(id)- Permanently remove a published item from the marketplace pool. Organizations that installed this item will retain their copies. Required: id.
neuron_update_ad_request(budget, message, mediaUrl, targetGoal, targetType, adRequestId, messageType, targetingMode, targetDemographics, selectedPoolEntryIds, selectedGroupPoolEntryIds)- Update a draft or rejected ad request. Only draft and rejected ad requests can be edited. Rejected requests revert to draft on update. Required: adRequestId.
neuron_update_blog_post(id, title, status, content, excerpt, seoTitle, seoKeywords, coverImageUrl, seoDescription)- Update an existing blog post's content, metadata, status, or SEO fields. Only provided fields are changed. Required: id.
neuron_update_bot(id, name, llmModel, metadata, maxTokens, assignment, systemPrompt, llmTemperature, welcomeMessage, fallbackMessage, greetingMessage, escalationPrompt, responsibilities, whatsappChannelId)- Update an existing bot's configuration. Only provided fields are modified; omitted fields remain unchanged. Required: id.
neuron_update_broadcast(id, name, message, mediaUrl, messageType)- Update an existing broadcast's name, message content, or media before sending. The broadcast must still be in draft status. Required: id.
neuron_update_campaign(id, title, message, deadline, guidelines, description, totalBudget, rewardPerDelivery, requireMutualContact)- Update a campaign that is in 'draft' or 'rejected' status. Active or completed campaigns cannot be modified. Required: id.
neuron_update_channel(id, name, phoneNumber, metaAccessToken, metaPhoneNumberId)- Update configuration of an existing WhatsApp channel. Only provided fields are modified; omitted fields remain unchanged. Required: id.
neuron_update_contact(id, name, tags, email, notes, phone, doNotBroadcast, doNotAutoRespond)- Update an existing contact's details. If notes are provided, they are appended as a new structured note entry without overwriting existing notes. Required: id.
neuron_update_contact_list(name, slug, criteria, idOrSlug, description, refreshSchedule)- Update an existing contact list's name, slug, description, criteria, or refresh schedule. Required: idOrSlug.
neuron_update_group_description(groupJid, channelId, description)- Update the description of a WhatsApp group. Requires the bot to be a group admin. Required: channelId, groupJid, description.
neuron_update_group_members(action, groupJid, channelId, participants)- Add, remove, promote, or demote members in a WhatsApp group. Provide phone numbers or JIDs. Requires admin privileges. Required: channelId, groupJid, participants, action.
neuron_update_group_settings(setting, groupJid, channelId)- Change WhatsApp group settings: 'announcement' (only admins send), 'not_announcement' (everyone sends), 'locked' (only admins edit info), 'unlocked' (everyone edits info). Requires admin. Required: channelId, groupJid, setting.
neuron_update_group_subject(subject, groupJid, channelId)- Update the name/subject of a WhatsApp group. Requires the bot to be a group admin. Required: channelId, groupJid, subject.
neuron_update_kb_entry(kbId, title, folder, source, content, entryId, metadata)- Update the content, title, folder, or source of an existing knowledge base entry. Required: kbId, entryId.
neuron_update_knowledge_base(id, name, description, rootInstruction)- Update the properties of an existing knowledge base such as name, description, or root instruction. Required: id.
neuron_update_member(orgId, userId, canViewConversations)- Update a member's permissions within the organization, such as conversation access. Only provided fields are changed. Required: orgId, userId, canViewConversations.
neuron_update_newsletter(id, name, description)- Update the name or description of an existing WhatsApp Channel newsletter. Only provided fields are changed. Required: id.
neuron_update_organization(name, orgId, autoOptOutBroadcast, autoSuppressHostile)- Update organization settings such as name, description, or configuration preferences. Only provided fields are changed. Required: orgId.
neuron_update_outbound_webhook(id, url, name, eventTypes, filterPrompt)- Modify an existing outbound webhook's configuration, including its destination URL, subscribed event types, or filter prompt. Required: id.
neuron_update_persona(id, name, exemplars, description, voiceProfile)- Update a persona's name/description, or hand-tune its voiceProfile / exemplars. Required: id.
neuron_update_pool_item(id, name, tags, category, description, defaultSecrets, setupInstructions)- Update a pool item you have published — metadata (name, description, category, tags) and content fields (setupInstructions, defaultSecrets for tool_template items). The underlying resource is re-snapshotted and version is bumped on every update. Required: id.
neuron_update_privacy_setting(value, setting, channelId)- Update a specific WhatsApp privacy setting. Settings: lastSeen (all/contacts/contact_blacklist/none), online (all/match_last_seen), profilePicture (all/contacts/contact_blacklist/none), status (all/contacts/contact_blacklist/none), readReceipts (all/none), groupsAdd (all/contacts/contact_blacklist). Required: channelId, setting, value.
neuron_update_profile_name(name, channelId)- Update the bot's WhatsApp display name on the given channel. Required: channelId, name.
neuron_update_profile_picture(imageUrl, channelId)- Update the bot's WhatsApp profile picture from an image URL. Required: channelId, imageUrl.
neuron_update_profile_status(status, channelId)- Update the bot's WhatsApp status/bio text. Required: channelId, status.
neuron_update_scheduled_message(id, sendAt, message, mediaUrl, contactName, messageType)- Update the message content, media, or send time of a scheduled message. Only messages with status 'scheduled' can be updated. Required: id.
neuron_update_social_channel(id, label, username, credentials)- Update an existing social media channel. Can update label, username, or refresh credentials. Required: id.
neuron_update_task(id, title, config, enabled, schedule, timezone, instruction, scheduleKind)- Update a scheduled task's instruction, schedule, timezone, enabled state, or config. Only provided fields change. Required: id.
neuron_update_tool(id, name, type, config, authType, rateLimit, timeoutMs, description)- Modify an existing custom API tool's configuration, including its endpoint, authentication, or request template. Required: id.
neuron_update_webhook(id, name, isActive, eventType, processingPrompt)- Modify an existing inbound webhook's configuration, such as its name, event type, or processing prompt. Required: id.
neuron_update_whatsapp_credentials(orgId, whatsappAccessToken, whatsappPhoneNumberId, whatsappBusinessAccountId)- Update WhatsApp Business API credentials for the organization. These credentials are required for sending messages via the WhatsApp Cloud API. Required: orgId, whatsappPhoneNumberId, whatsappBusinessAccountId, whatsappAccessToken.
neuron_upload_document(id, folder, content, filename)- Upload a text document to a knowledge base. The document will be automatically chunked and indexed for semantic search. Required: id, content, filename.
neuron_upload_media(base64, filename, mimetype)- Upload a media file (image, video, audio, or document) by providing its base64-encoded content. Returns a URL for use in messages and broadcasts. Required: base64, filename, mimetype.
neuron_validate_social_channel(id)- Test whether the stored credentials for a social channel are still valid by making a test API call to the platform. Required: id.
neuron_verify_bank_account(bankCode, accountNumber)- Verify a Nigerian bank account number via Paystack to confirm the account holder name before saving. Required: bankCode, accountNumber.
neuron_verify_wallet_funding(reference)- Verify a wallet funding transaction using the Paystack payment reference to confirm the payment was successful. Required: reference.
neuron_wallet_balance- Retrieve the current wallet balance for the organization, including available and pending amounts.
neuron_wallet_transactions(page, type, limit)- Retrieve the wallet transaction history for the organization, with optional filtering by transaction type.
neuron_whoami- Check which Neuron account is currently logged in, including user name, email, role, and organization.
Last successful function declaration observed on . Source: https://mcp.neuron.ng/mcp. We list what the server declared; we do not call any of these functions.
Endpoint status observed on . Source: https://mcp.neuron.ng/mcp.
Signals
These are separate measurements of different things. They are deliberately not combined into one score, because a popularity number that mixes website traffic with saves and stars cannot be checked or acted on.
| Signal | Value | What it measures | Window | Observed | Source |
|---|---|---|---|---|---|
| Latest published version | 1.0.2 | Latest version string the maintainer published to the registry. | as of fetch | Model Context Protocol | |
| Registry record last updated | 2026-06-28 | When the registry record was last updated by its maintainer. | point in time | Model Context Protocol | |
| First listed in the MCP Registry | 2026-06-28 | Date this server was first published to the official MCP Registry. Not a usage or quality measure. | point in time | Model Context Protocol | |
| repository status | not_found | GitHub returned 404 for the repository the maintainer listed. The project was deleted, renamed or made private, so the listing points at nothing. | as of fetch | GitHub | |
| mcp tools declared | 273 tools | Number of functions the server itself declared when asked to list them. This is what the server offers an agent, not a measure of how well any of them work. | as of probe | mcp.neuron.ng | |
| mcp endpoint status | ok | The server listed 273 functions when asked. | as of probe | mcp.neuron.ng |
Where to get it
This record as data
Every field on this page, with its source and observation date, is in the catalog JSON. Fetch the whole kind at once instead of parsing this HTML.
GET /api/v1/entries/mcp_server.json