Needle AI Tools Library

Browse our comprehensive collection of AI-powered capabilities that enhance productivity and streamline workflows.

384
tools available

Native Tools

Gmail Tools

Google Calendar Tools

Airtable Tools

HubSpot Tools

HubSpot

Crm Create Company

Create a new company with validated properties

HUBSPOT
HubSpot

Crm Update Company

Update an existing company with validated properties

HUBSPOT
HubSpot

Crm Get Company

Get a single company by ID with specific properties and associations

HUBSPOT
HubSpot

Crm Search Companies

Search companies with company-specific filters (max 20 results)

HUBSPOT
HubSpot

Crm Batch Create Companies

Create multiple companies in a single request

HUBSPOT
HubSpot

Crm Batch Update Companies

Update multiple companies in a single request

HUBSPOT
HubSpot

Crm Get Company Properties

Get all properties available for company objects

HUBSPOT
HubSpot

Crm Create Company Property

Create a new custom property definition for companies

HUBSPOT
HubSpot

Crm List Objects

List CRM objects of a specific type with optional filtering and pagination (max 20 results)

HUBSPOT
HubSpot

Crm Get Object

Get a single CRM object by ID

HUBSPOT
HubSpot

Crm Create Object

Create a new CRM object

HUBSPOT
HubSpot

Crm Update Object

Update an existing CRM object

HUBSPOT
HubSpot

Crm Delete Object

Delete (archive) a CRM object

HUBSPOT
HubSpot

Crm Search Objects

Search CRM objects using filters (max 20 results)

HUBSPOT
HubSpot

Crm Batch Create Objects

Create multiple CRM objects in a single request

HUBSPOT
HubSpot

Crm Batch Update Objects

Update multiple CRM objects in a single request

HUBSPOT
HubSpot

Crm Batch Delete Objects

Delete (archive) multiple CRM objects in a single request

HUBSPOT
HubSpot

Crm List Association Types

List all available association types (labels) between two object types

HUBSPOT
HubSpot

Crm Get Associations

Get all associations of a specific type for a given object

HUBSPOT
HubSpot

Crm Create Association

Create an association between two objects (v4 API format)

HUBSPOT
HubSpot

Crm Delete Association

Delete an association between two objects

HUBSPOT
HubSpot

Crm Batch Create Associations

Create multiple associations in a single request (v4 API format)

HUBSPOT
HubSpot

Crm Batch Delete Associations

Delete multiple associations in a single request (v4 API format)

HUBSPOT
HubSpot

Crm Create Contact

Create a new contact with validated properties

HUBSPOT
HubSpot

Crm Update Contact

Update an existing contact with validated properties

HUBSPOT
HubSpot

Crm Get Contact

Get a single contact by ID with specific properties and associations

HUBSPOT
HubSpot

Crm Search Contacts

Search contacts with contact-specific filters (max 20 results)

HUBSPOT
HubSpot

Crm Batch Create Contacts

Create multiple contacts in a single request

HUBSPOT
HubSpot

Crm Batch Update Contacts

Update multiple contacts in a single request

HUBSPOT
HubSpot

Crm Get Contact Properties

Get all properties available for contact objects

HUBSPOT
HubSpot

Crm Create Contact Property

Create a new custom property definition for contacts

HUBSPOT
HubSpot

Crm Create Lead

Create a new lead with validated properties

HUBSPOT
HubSpot

Crm Update Lead

Update an existing lead with validated properties

HUBSPOT
HubSpot

Crm Get Lead

Get a single lead by ID with specific properties and associations

HUBSPOT
HubSpot

Crm Search Leads

Search for leads (contacts with lead lifecycle stages) with specific filters (max 20 results)

HUBSPOT
HubSpot

Crm Batch Create Leads

Create multiple leads in a single request

HUBSPOT
HubSpot

Crm Batch Update Leads

Update multiple leads in a single request

HUBSPOT
HubSpot

Crm Get Lead Properties

Get all properties available for lead objects

HUBSPOT
HubSpot

Crm Create Lead Property

Create a new custom property definition for leads

HUBSPOT
HubSpot

Meetings List

List all meetings with optional filtering (max 20 results)

HUBSPOT
HubSpot

Meetings Get

Get details of a specific meeting

HUBSPOT
HubSpot

Meetings Create

Create a new meeting

HUBSPOT
HubSpot

Meetings Update

Update an existing meeting

HUBSPOT
HubSpot

Meetings Delete

Delete (archive) a meeting

HUBSPOT
HubSpot

Meetings Search

Search meetings with specific filters (max 20 results)

HUBSPOT
HubSpot

Meetings Batch Create

Create multiple meetings in a single request

HUBSPOT
HubSpot

Meetings Batch Update

Update multiple meetings in a single request

HUBSPOT
HubSpot

Meetings Batch Archive

Archive (delete) multiple meetings in a single request

HUBSPOT
HubSpot

Notes Create

Create a new note

HUBSPOT
HubSpot

Notes Get

Get details of a specific note

HUBSPOT
HubSpot

Notes Update

Update an existing note

HUBSPOT
HubSpot

Notes Archive

Archive (delete) a note

HUBSPOT
HubSpot

Notes List

List all notes with optional filtering (max 20 results)

HUBSPOT
HubSpot

Notes Search

Search notes with specific filters (max 20 results)

HUBSPOT
HubSpot

Notes Batch Create

Create multiple notes in a single request

HUBSPOT
HubSpot

Notes Batch Read

Read multiple notes in a single request

HUBSPOT
HubSpot

Notes Batch Update

Update multiple notes in a single request

HUBSPOT
HubSpot

Notes Batch Archive

Archive (delete) multiple notes in a single request

HUBSPOT
HubSpot

Tasks Create

Create a new task

HUBSPOT
HubSpot

Tasks Get

Get details of a specific task

HUBSPOT
HubSpot

Tasks Update

Update an existing task

HUBSPOT
HubSpot

Tasks Archive

Archive (delete) a task

HUBSPOT
HubSpot

Tasks List

List all tasks with optional filtering (max 20 results)

HUBSPOT
HubSpot

Tasks Search

Search tasks with specific filters (max 20 results)

HUBSPOT
HubSpot

Tasks Batch Create

Create multiple tasks in a single request

HUBSPOT
HubSpot

Tasks Batch Read

Read multiple tasks in a single request

HUBSPOT
HubSpot

Tasks Batch Update

Update multiple tasks in a single request

HUBSPOT
HubSpot

Tasks Batch Archive

Archive (delete) multiple tasks in a single request

HUBSPOT
HubSpot

Engagement Details Get

Get details of a specific engagement (legacy API)

HUBSPOT
HubSpot

Engagement Details Create

Create a new engagement with details (legacy API)

HUBSPOT
HubSpot

Engagement Details Update

Update an existing engagement's details (legacy API)

HUBSPOT
HubSpot

Engagement Details List

List all engagements with optional filtering (legacy API, paged) (max 20 results)

HUBSPOT
HubSpot

Engagement Details Delete

Delete an engagement (legacy API)

HUBSPOT
HubSpot

Engagement Details Get Associated

Get all engagements associated with an object (legacy API, paged)

HUBSPOT
HubSpot

Calls Create

Create a new call record

HUBSPOT
HubSpot

Calls Get

Get details of a specific call

HUBSPOT
HubSpot

Calls Update

Update an existing call record

HUBSPOT
HubSpot

Calls Archive

Archive (delete) a call record

HUBSPOT
HubSpot

Calls List

List all calls with optional filtering (max 20 results)

HUBSPOT
HubSpot

Calls Search

Search calls with specific filters (max 20 results)

HUBSPOT
HubSpot

Calls Batch Create

Create multiple call records in a single request

HUBSPOT
HubSpot

Calls Batch Read

Read multiple call records in a single request

HUBSPOT
HubSpot

Calls Batch Update

Update multiple call records in a single request

HUBSPOT
HubSpot

Calls Batch Archive

Archive (delete) multiple call records in a single request

HUBSPOT
HubSpot

Emails Create

Create a new email record

HUBSPOT
HubSpot

Emails Get

Get details of a specific email

HUBSPOT
HubSpot

Emails Update

Update an existing email record

HUBSPOT
HubSpot

Emails Archive

Archive (delete) an email record

HUBSPOT
HubSpot

Emails List

List all emails with optional filtering (max 20 results)

HUBSPOT
HubSpot

Emails Search

Search emails with specific filters (max 20 results)

HUBSPOT
HubSpot

Emails Batch Create

Create multiple email records in a single request

HUBSPOT
HubSpot

Emails Batch Read

Read multiple email records in a single request

HUBSPOT
HubSpot

Emails Batch Update

Update multiple email records in a single request

HUBSPOT
HubSpot

Emails Batch Archive

Archive (delete) multiple email records in a single request

HUBSPOT
HubSpot

Communications Get Preferences

Get communication preferences for a contact

HUBSPOT
HubSpot

Communications Update Preferences

Update communication preferences for a specific subscription type for a contact

HUBSPOT
HubSpot

Communications Unsubscribe Contact

Unsubscribe a contact from all email communications

HUBSPOT
HubSpot

Communications Subscribe Contact

Subscribe a contact to all email communications

HUBSPOT
HubSpot

Communications Get Subscription Definitions

Get all communication subscription definitions for the portal

HUBSPOT
HubSpot

Communications Get Subscription Status

Get subscription status for multiple contacts for a specific subscription type

HUBSPOT
HubSpot

Communications Update Subscription Status

Update subscription status for multiple contacts for a specific subscription type

HUBSPOT

Linear Tools

Notion Tools

GitHub Tools

Jira Tools

Confluence Tools

Zendesk Tools

Zendesk

List Tickets

List tickets in Zendesk. Returns maximum 20 tickets per page.

ZENDESK
Zendesk

Get Ticket

Get a specific ticket by ID

ZENDESK
Zendesk

Create Ticket

Create a new ticket

ZENDESK
Zendesk

Update Ticket

Update an existing ticket

ZENDESK
Zendesk

Delete Ticket

Delete a ticket

ZENDESK
Zendesk

List Ticket Comments

List all comments for a specific ticket

ZENDESK
Zendesk

List Users

List users in Zendesk. Returns maximum 20 users per page.

ZENDESK
Zendesk

Get User

Get a specific user by ID

ZENDESK
Zendesk

Create User

Create a new user

ZENDESK
Zendesk

Update User

Update an existing user

ZENDESK
Zendesk

List Organizations

List organizations in Zendesk. Returns maximum 20 organizations per page.

ZENDESK
Zendesk

Get Organization

Get a specific organization by ID

ZENDESK
Zendesk

Create Organization

Create a new organization

ZENDESK
Zendesk

Update Organization

Update an existing organization

ZENDESK
Zendesk

List Groups

List agent groups in Zendesk. Returns maximum 20 groups per page.

ZENDESK
Zendesk

Get Group

Get a specific group by ID

ZENDESK
Zendesk

Create Group

Create a new agent group

ZENDESK
Zendesk

Update Group

Update an existing group

ZENDESK
Zendesk

Delete Group

Delete a group

ZENDESK
Zendesk

List Macros

List macros in Zendesk. Returns maximum 20 macros per page.

ZENDESK
Zendesk

Get Macro

Get a specific macro by ID

ZENDESK
Zendesk

Create Macro

Create a new macro

ZENDESK
Zendesk

Update Macro

Update an existing macro

ZENDESK
Zendesk

Delete Macro

Delete a macro

ZENDESK
Zendesk

List Views

List views in Zendesk. Returns maximum 20 views per page.

ZENDESK
Zendesk

Get View

Get a specific view by ID

ZENDESK
Zendesk

Create View

Create a new view

ZENDESK
Zendesk

Update View

Update an existing view

ZENDESK
Zendesk

Delete View

Delete a view

ZENDESK
Zendesk

List Triggers

List triggers in Zendesk. Returns maximum 20 triggers per page.

ZENDESK
Zendesk

Get Trigger

Get a specific trigger by ID

ZENDESK
Zendesk

Create Trigger

Create a new trigger

ZENDESK
Zendesk

Update Trigger

Update an existing trigger

ZENDESK
Zendesk

Delete Trigger

Delete a trigger

ZENDESK
Zendesk

List Automations

List automations in Zendesk. Returns maximum 20 automations per page.

ZENDESK
Zendesk

Get Automation

Get a specific automation by ID

ZENDESK
Zendesk

Create Automation

Create a new automation

ZENDESK
Zendesk

Update Automation

Update an existing automation

ZENDESK
Zendesk

Delete Automation

Delete an automation

ZENDESK
Zendesk

Search

Search across Zendesk data using keywords. Returns maximum 20 results per page.

ZENDESK
Zendesk

List Articles

List Help Center articles. Returns maximum 20 articles per page.

ZENDESK
Zendesk

Get Article

Get a specific Help Center article by ID

ZENDESK
Zendesk

Create Article

Create a new Help Center article

ZENDESK
Zendesk

Update Article

Update an existing Help Center article

ZENDESK
Zendesk

Delete Article

Delete a Help Center article

ZENDESK
Zendesk

Get Talk Stats

Get Zendesk Talk statistics

ZENDESK

Asana Tools

Asana

Get Attachment

Get detailed attachment data including name, resource type, download_url, view_url, and parent. Returns complete attachment information needed for accessing attached files.

ASANA
Asana

Get Attachments For Object

List all attachments for a project, project brief, or task. Returns attachment names, IDs, and URLs (download_url, permanent_url, view_url). Use for accessing files attached to Asana objects. Supports pagination for objects with many attachments.

ASANA
Asana

Get Goals

List goals filtered by context (portfolio, project, task, workspace, or team). One context required. Returns goal names, IDs. Use for goal overview or reporting.

ASANA
Asana

Get Goal

Get detailed goal data including name, owner, current_status_update, and due_on. Use after finding goal ID via typeahead. Returns complete goal configuration needed for goal operations.

ASANA
Asana

Create Goal

Create a new goal. REQUIRES name, time_period, and either workspace or team. Use to establish objectives and key results. Returns created goal details with ID. Supports start/due dates and goal ownership assignment.

ASANA
Asana

Get Parent Goals For Goal

List all parent goals for a specific goal. Returns parent goal names, IDs, and metric.progress. Use to understand goal hierarchy and relationships. Important for managing nested OKRs and goal dependencies.

ASANA
Asana

Update Goal

Update goal properties like name, owner, dates, metrics, or status. Use for adjusting timelines, progress, or reassigning ownership. Returns updated goal data. Partial updates supported - only specified fields will change.

ASANA
Asana

Get Portfolio

Get detailed portfolio data by ID including name, owner, and projects. Use after finding portfolio ID via typeahead. Returns complete portfolio configuration. Essential for understanding portfolio context and content.

ASANA
Asana

Get Portfolios

List portfolios filtered by workspace and owner. REQUIRES workspace parameter. Owner defaults to me (current user) if not specified. Returns portfolio names and IDs. Use for portfolio discovery and management. Supports pagination for workspaces with many portfolios.

ASANA
Asana

Get Items For Portfolio

List projects, goals, and other items in a portfolio. Returns item names, IDs, and types. Use for portfolio content exploration and management. Supports pagination for portfolios with many items.

ASANA
Asana

Get Project

Get detailed project data including name, description, owner, members, custom fields, and settings. Use after finding project ID via typeahead. Returns complete project configuration needed for task operations. Specify opt_fields for custom fields data.

ASANA
Asana

Get Project Sections

List all sections in a project with their IDs. Essential for task placement and organization. Returns section names and IDs needed for creating/moving tasks. Use before creating tasks to find correct section ID.

ASANA
Asana

Get Projects

List projects filtered by workspace. Supports team, archived filters. Returns project names and IDs. Use for filtered project views and bulk operations.

ASANA
Asana

Get Project Status

Get single status update by ID. Returns color (green/yellow/red), text, author, and timestamp. Use when you know specific status ID. For all statuses, use asana_get_project_statuses instead.

ASANA
Asana

Get Project Statuses

List all status updates for a project chronologically. Returns status color, text, author for each update. Use to track project health over time. Supports pagination for projects with many updates.

ASANA
Asana

Create Project Status

Create project status update with color (green/yellow/red) and text. Use for regular project health updates, milestone documentation, or blocker reporting. Supports HTML formatting. Returns created status ID.

ASANA
Asana

Get Project Task Counts

Get task statistics for a project. Returns counts of incomplete, completed, and milestone tasks. Use for quick project progress overview, capacity checks, or reporting dashboards.

ASANA
Asana

Get Projects For Team

List all projects for a team. Returns both active and archived projects with IDs. Use after finding team ID via typeahead. Supports pagination for teams with many projects. Essential for team portfolio views.

ASANA
Asana

Get Projects For Workspace

Get ALL projects in a workspace across all teams. Returns project names and IDs. Use for workspace-wide operations or when team is unknown. May return large result set - consider using typeahead search first.

ASANA
Asana

Create Project

Create new project in Asana. Every project requires a workspace, and this cannot be changed after creation. If workspace is an organization, a team must also be specified. Client agents should explicitly ask for team when creating a project rather than inferring it. Supports custom fields, templates, due dates, and privacy settings. Returns project ID for immediate task creation. Essential for project setup.

ASANA
Asana

Search Tasks

Advanced task search with multiple filters. Supports text search, all date filters, status filters, user filters, project/portfolio/section/tag filters, and custom fields. Returns matching tasks with IDs. Handles complex queries and bulk task operations. Note: If you specify projects.any and sections.any, you will receive tasks for the project and tasks for the section. If you're looking for only tasks in a section, omit the projects.any from the request.

ASANA
Asana

Get Task

Get full task details by ID. Returns name, description, assignee, due dates, custom fields, projects, dependencies. Essential before updating tasks. Use opt_fields for custom field values. Required for understanding task context.

ASANA
Asana

Create Task

Create task in Asana with context. REQUIRES one of: project_id, parent, or workspace+assignee together. For assignee-only tasks, both workspace and assignee must be provided. Returns task ID with confirmation. You can directly tag and mention people by using links in html_notes field

ASANA
Asana

Update Task

Update existing task properties. Change name, notes, assignee, completion status, due dates, custom fields. Requires task ID. Returns updated task data. Use asana_get_task first to understand current state.

ASANA
Asana

Get Stories For Task

Get task activity history (comments, status changes, system events). Returns chronological stories with authors and timestamps. Use for audit trails, understanding task evolution, or retrieving comments.

ASANA
Asana

Create Task Story

Add explicit comment to task. ONLY for discussion, feedback, questions, or context not captured by automatic activity logging. Task actions (assignments, status changes) are logged automatically. Returns story ID.

ASANA
Asana

Set Task Dependencies

Set tasks this task depends on (prerequisites). Creates dependency relationship where this task is blocked until dependencies complete. Use for workflow sequencing and project planning. Requires list of task IDs.

ASANA
Asana

Set Task Dependents

Set tasks blocked by this task (tasks waiting on this one). Creates dependency where other tasks cannot start until this completes. Use for blocking relationships in project schedules. Requires list of task IDs.

ASANA
Asana

Set Parent For Task

Change task parent (convert to/from subtask). Set parent=null to make regular task. Supports insert positioning among siblings. Use for reorganizing task hierarchy. Returns updated task hierarchy data.

ASANA
Asana

Get Tasks

List tasks filtered by context (workspace/project/tag/section/user list). One context required. Supports assignee, date filters. Returns task names and IDs. Use for filtered task views and bulk operations.

ASANA
Asana

Delete Task

Delete task from Asana. Use with extreme caution as recovery is challenging. Deletes the task and any subtasks that are not also in another project. Returns success confirmation. Requires task ID. Essential for removing duplicate or obsolete tasks.

ASANA
Asana

Add Task Followers

Add followers to task (team members to notify of updates). Automatically sends notifications for task changes. Returns updated followers list. Essential for task collaboration and visibility.

ASANA
Asana

Remove Task Followers

Remove followers from task (stop notification subscriptions). Prevents future notifications while maintaining history. Returns updated followers list. Essential for reducing notification noise or when team members change.

ASANA
Asana

Get Teams For Workspace

List all teams in workspace. Returns team names and IDs. Use to discover teams before searching team projects/users. Essential for workspace structure understanding. Supports pagination.

ASANA
Asana

Get Teams For User

Get teams user belongs to. Returns team names and IDs. Use to check user team access or find teams for specific user. Requires organization ID. me supported for current user.

ASANA
Asana

Get Time Period

Get detailed information about a time period by ID. Returns name, start date, end date, and status. Use after finding time period ID from other tools. Essential for working with goals and time-based planning.

ASANA
Asana

Get Time Periods

List available time periods in a workspace. Filterable by date range. Returns time period names, IDs, start/end dates. REQUIRES workspace parameter. Use for goal planning, reporting periods, or OKR cycles.

ASANA
Asana

Typeahead Search

Quick search across Asana objects. ALWAYS use this FIRST before specialized search. Returns most relevant items based on recency and usage. Faster than dedicated search tools for finding specific items. Works for: users, projects, tasks, teams, tags, portfolios, goals. Empty query returns recently accessed items. DO NOT guess the workspace GID. If no workspace GID is provided look it up.

ASANA
Asana

Get User

Get user details by ID, email, or me. Returns name, email, workspaces. Use to find user IDs for task assignment. me returns authenticated user info. Essential before assigning tasks. When no user_id is provided, defaults to me (authenticated user) - equivalent to the former asana_get_user_info tool.

ASANA
Asana

Get Team Users

List all team members. Returns user names and IDs. Use team ID from typeahead search first. Supports pagination for large teams. Results are sorted alphabetically and limited to 2000 results.

ASANA
Asana

Get Workspace Users

Get all users in workspace. Returns compact users with names and IDs. Results are sorted alphabetically and limited to 2000. Prefer searching more narrowly, like by typeahead or team first instead of this.

ASANA
Asana

List Workspaces

Get all accessible workspaces. Returns workspace IDs needed for most other operations. Always call this FIRST to discover valid workspace IDs before using workspace-specific tools. Results include workspace name, ID, and organization info.

ASANA

Intercom Tools

Neon Tools

Neon

List Projects

Lists the first 10 Neon projects in your account. If you can't find the project, increase the limit by passing a higher value to the `limit` parameter.

NEON
Neon

Create Project

Create a new Neon project. If someone is trying to create a database, use this tool.

NEON
Neon

Delete Project

Delete a Neon project

NEON
Neon

Describe Project

Describes a Neon project

NEON
Neon

Run Sql

<use_case> Use this tool to execute a single SQL statement against a Neon database. </use_case> <important_notes> If you have a temporary branch from a prior step, you MUST: 1. Pass the branch ID to this tool unless explicitly told otherwise 2. Tell the user that you are using the temporary branch with ID [branch_id] </important_notes>

NEON
Neon

Run Sql Transaction

<use_case> Use this tool to execute a SQL transaction against a Neon database, should be used for multiple SQL statements. </use_case> <important_notes> If you have a temporary branch from a prior step, you MUST: 1. Pass the branch ID to this tool unless explicitly told otherwise 2. Tell the user that you are using the temporary branch with ID [branch_id] </important_notes>

NEON
Neon

Describe Table Schema

Describe the schema of a table in a Neon database

NEON
Neon

Get Database Tables

Get all tables in a Neon database

NEON
Neon

Create Branch

Create a branch in a Neon project

NEON
Neon

Prepare Database Migration

<use_case> This tool performs database schema migrations by automatically generating and executing DDL statements. Supported operations: CREATE operations: - Add new columns (e.g., "Add email column to users table") - Create new tables (e.g., "Create posts table with title and content columns") - Add constraints (e.g., "Add unique constraint on users.email") ALTER operations: - Modify column types (e.g., "Change posts.views to bigint") - Rename columns (e.g., "Rename user_name to username in users table") - Add/modify indexes (e.g., "Add index on posts.title") - Add/modify foreign keys (e.g., "Add foreign key from posts.user_id to users.id") DROP operations: - Remove columns (e.g., "Drop temporary_field from users table") - Drop tables (e.g., "Drop the old_logs table") - Remove constraints (e.g., "Remove unique constraint from posts.slug") The tool will: 1. Parse your natural language request 2. Generate appropriate SQL 3. Execute in a temporary branch for safety 4. Verify the changes before applying to main branch Project ID and database name will be automatically extracted from your request. If the database name is not provided, the default neondb or first available database is used. </use_case> <workflow> 1. Creates a temporary branch 2. Applies the migration SQL in that branch 3. Returns migration details for verification </workflow> <important_notes> After executing this tool, you MUST: 1. Test the migration in the temporary branch using the 'run_sql' tool 2. Ask for confirmation before proceeding 3. Use 'complete_database_migration' tool to apply changes to main branch </important_notes> <example> For a migration like: ALTER TABLE users ADD COLUMN last_login TIMESTAMP; You should test it with: SELECT column_name, data_type FROM information_schema.columns WHERE table_name = 'users' AND column_name = 'last_login'; You can use 'run_sql' to test the migration in the temporary branch that this tool creates. </example> <next_steps> After executing this tool, you MUST follow these steps: 1. Use 'run_sql' to verify changes on temporary branch 2. Follow these instructions to respond to the client: <response_instructions> <instructions> Provide a brief confirmation of the requested change and ask for migration commit approval. You MUST include ALL of the following fields in your response: - Migration ID (this is required for commit and must be shown first) - Temporary Branch Name (always include exact branch name) - Temporary Branch ID (always include exact ID) - Migration Result (include brief success/failure status) Even if some fields are missing from the tool's response, use placeholders like "not provided" rather than omitting fields. </instructions> <do_not_include> IMPORTANT: Your response MUST NOT contain ANY technical implementation details such as: - Data types (e.g., DO NOT mention if a column is boolean, varchar, timestamp, etc.) - Column specifications or properties - SQL syntax or statements - Constraint definitions or rules - Default values - Index types - Foreign key specifications Keep the response focused ONLY on confirming the high-level change and requesting approval. <example> INCORRECT: "I've added a boolean is_published column to the posts table..." CORRECT: "I've added the is_published column to the posts table..." </example> </do_not_include> <example> I've verified that [requested change] has been successfully applied to a temporary branch. Would you like to commit the migration [migration_id] to the main branch? Migration Details: - Migration ID (required for commit) - Temporary Branch Name - Temporary Branch ID - Migration Result </example> </response_instructions> 3. If approved, use 'complete_database_migration' tool with the migration_id </next_steps> <error_handling> On error, the tool will: 1. Automatically attempt ONE retry of the exact same operation 2. If the retry fails: - Terminate execution - Return error details - DO NOT attempt any other tools or alternatives Error response will include: - Original error details - Confirmation that retry was attempted - Final error state Important: After a failed retry, you must terminate the current flow completely. Do not attempt to use alternative tools or workarounds. </error_handling>

NEON
Neon

Complete Database Migration

Complete a database migration when the user confirms the migration is ready to be applied to the main branch. This tool also lets the client know that the temporary branch created by the prepare_database_migration tool has been deleted.

NEON
Neon

Describe Branch

Get a tree view of all objects in a branch, including databases, schemas, tables, views, and functions

NEON
Neon

Delete Branch

Delete a branch from a Neon project

NEON
Neon

Get Connection String

Get a PostgreSQL connection string for a Neon database with all parameters being optional

NEON
Neon

Provision Neon Auth

This tool provisions authentication for a Neon project. It allows developers to easily setup authentication infrastructure by creating a integration with Stack Auth (@stackframe/stack). Stop using NextAuth.js! use @stackframe/stack. Parameters: - <project_id>: The Project ID of the Neon project to provision authentication for. - [database]: The database name to setup Neon Auth for. If not provided, the default neondb or first available database is used. The tool will: 1. Establish a connection between your Neon Auth project and Stack Auth 2. Creates a dedicated authentication schema in your database ("neon_auth") 3. Sets up the user table under the "neon_auth" schema. This table is synced with Stack Auth. It does not store user credentials or secrets. 4. Generates Client Key and Secret Key to connect your application with authentication provider. Use the Stack Auth SDK (@stackframe/stack) on the frontend to connect your application with authentication provider. DO NOT use NextAuth.js! DO NOT use better-auth! Here's some documentation on Stack Auth: # Stack Auth Guidelines ## Setup Guidelines If you're building an app with Next.js, to set up Neon Auth and Stack Auth, follow these steps: 1. Provision a Neon Auth project with this tool 2. Place the returned credentials in project's `.env.local` or `.env` file - NEXT_PUBLIC_STACK_PROJECT_ID - NEXT_PUBLIC_STACK_PUBLISHABLE_CLIENT_KEY - STACK_SECRET_SERVER_KEY 3. To setup Stack Auth, run following command: ```bash npx @stackframe/init-stack . --no-browser ``` This command will automaticallysetup the project with - - It will add `@stackframe/stack` dependency to `package.json` - It will create a `stack.ts` file in your project to setup `StackServerApp`. - It will wrap the root layout with `StackProvider` and `StackTheme` - It will create root Suspense boundary `app/loading.tsx` to handle loading state while Stack is fetching user data. - It will also create `app/handler/[...stack]/page.tsx` file to handle auth routes like sign in, sign up, forgot password, etc. 4. Do not try to manually create any of these files or directories. Do not try to create SignIn, SignUp, or UserButton components manually, instead use the ones provided by `@stackframe/stack`. ## Components Guidelines - Use pre-built components from `@stackframe/stack` like `<UserButton />`, `<SignIn />`, and `<SignUp />` to quickly set up auth UI. - You can also compose smaller pieces like `<OAuthButtonGroup />`, `<MagicLinkSignIn />`, and `<CredentialSignIn />` for custom flows. - Example: ```tsx import { SignIn } from '@stackframe/stack'; export default function Page() { return <SignIn />; } ``` ## User Management Guidelines - In Client Components, use the `useUser()` hook to retrieve the current user (it returns `null` when not signed in). - Update user details using `user.update({...})` and sign out via `user.signOut()`. - For pages that require a user, call `useUser({ or: "redirect" })` so unauthorized visitors are automatically redirected. ## Client Component Guidelines - Client Components rely on hooks like `useUser()` and `useStackApp()`. - Example: ```tsx "use client"; import { useUser } from "@stackframe/stack"; export function MyComponent() { const user = useUser(); return <div>{user ? `Hello, ${user.displayName}` : "Not logged in"}</div>; } ``` ## Server Component Guidelines - For Server Components, use `stackServerApp.getUser()` from your `stack.ts` file. - Example: ```tsx import { stackServerApp } from "@/stack"; export default async function ServerComponent() { const user = await stackServerApp.getUser(); return <div>{user ? `Hello, ${user.displayName}` : "Not logged in"}</div>; } ``` ## Page Protection Guidelines - Protect pages by: - Using `useUser({ or: "redirect" })` in Client Components. - Using `await stackServerApp.getUser({ or: "redirect" })` in Server Components. - Implementing middleware that checks for a user and redirects to `/handler/sign-in` if not found. - Example middleware: ```tsx export async function middleware(request: NextRequest) { const user = await stackServerApp.getUser(); if (!user) { return NextResponse.redirect(new URL('/handler/sign-in', request.url)); } return NextResponse.next(); } config: { matcher: '/protected/:path*' }; ``` ## Examples ### Example: custom-profile-page #### Task Create a custom profile page that: - Displays the user's avatar, display name, and email. - Provides options to sign out. - Uses Stack Auth components and hooks. #### Response ##### File: app/profile/page.tsx ###### Code ```tsx 'use client'; import { useUser, useStackApp, UserButton } from '@stackframe/stack'; export default function ProfilePage() { const user = useUser({ or: "redirect" }); const app = useStackApp(); return ( <div> <UserButton /> <h1>Welcome, {user.displayName || "User"}</h1> <p>Email: {user.primaryEmail}</p> <button onClick={() => user.signOut()}>Sign Out</button> </div> ); } ```

NEON
Neon

Explain Sql Statement

Describe the PostgreSQL query execution plan for a query of SQL statement by running EXPLAIN (ANAYLZE...) in the database

NEON
Neon

Prepare Query Tuning

<use_case> This tool helps developers improve PostgreSQL query performance for slow queries or DML statements by analyzing execution plans and suggesting optimizations. The tool will: 1. Create a temporary branch for testing optimizations and remember the branch ID 2. Extract and analyze the current query execution plan 3. Extract all fully qualified table names (schema.table) referenced in the plan 4. Gather detailed schema information for each referenced table using describe_table_schema 5. Suggest and implement improvements like: - Adding or modifying indexes based on table schemas and query patterns - Query structure modifications - Identifying potential performance bottlenecks 6. Apply the changes to the temporary branch using run_sql 7. Compare performance before and after changes (but ONLY on the temporary branch passing branch ID to all tools) 8. Continue with next steps using complete_query_tuning tool (on main branch) Project ID and database name will be automatically extracted from your request. The temporary branch ID will be added when invoking other tools. Default database is neondb if not specified. IMPORTANT: This tool is part of the query tuning workflow. Any suggested changes (like creating indexes) must first be applied to the temporary branch using the 'run_sql' tool. and then to the main branch using the 'complete_query_tuning' tool, NOT the 'prepare_database_migration' tool. To apply using the 'complete_query_tuning' tool, you must pass the tuning_id, NOT the temporary branch ID to it. </use_case> <workflow> 1. Creates a temporary branch 2. Analyzes current query performance and extracts table information 3. Implements and tests improvements (using tool run_sql for schema modifications and explain_sql_statement for performance analysis, but ONLY on the temporary branch created in step 1 passing the same branch ID to all tools) 4. Returns tuning details for verification </workflow> <important_notes> After executing this tool, you MUST: 1. Review the suggested changes 2. Verify the performance improvements on temporary branch - by applying the changes with run_sql and running explain_sql_statement again) 3. Decide whether to keep or discard the changes 4. Use 'complete_query_tuning' tool to apply or discard changes to the main branch DO NOT use 'prepare_database_migration' tool for applying query tuning changes. Always use 'complete_query_tuning' to ensure changes are properly tracked and applied. Note: - Some operations like creating indexes can take significant time on large tables - Table statistics updates (ANALYZE) are NOT automatically performed as they can be long-running - Table statistics maintenance should be handled by PostgreSQL auto-analyze or scheduled maintenance jobs - If statistics are suspected to be stale, suggest running ANALYZE as a separate maintenance task </important_notes> <example> For a query like: SELECT o.*, c.name FROM orders o JOIN customers c ON c.id = o.customer_id WHERE o.status = 'pending' AND o.created_at > '2024-01-01'; The tool will: 1. Extract referenced tables: public.orders, public.customers 2. Gather schema information for both tables 3. Analyze the execution plan 4. Suggest improvements like: - Creating a composite index on orders(status, created_at) - Optimizing the join conditions 5. If confirmed, apply the suggested changes to the temporary branch using run_sql 6. Compare execution plans and performance before and after changes (but ONLY on the temporary branch passing branch ID to all tools) </example> <next_steps> After executing this tool, you MUST follow these steps: 1. Review the execution plans and suggested changes 2. Follow these instructions to respond to the client: <response_instructions> <instructions> Provide a brief summary of the performance analysis and ask for approval to apply changes on the temporary branch. You MUST include ALL of the following fields in your response: - Tuning ID (this is required for completion) - Temporary Branch Name - Temporary Branch ID - Original Query Cost - Improved Query Cost - Referenced Tables (list all tables found in the plan) - Suggested Changes Even if some fields are missing from the tool's response, use placeholders like "not provided" rather than omitting fields. </instructions> <do_not_include> IMPORTANT: Your response MUST NOT contain ANY technical implementation details such as: - Exact index definitions - Internal PostgreSQL settings - Complex query rewrites - Table partitioning details Keep the response focused on high-level changes and performance metrics. </do_not_include> <example> I've analyzed your query and found potential improvements that could reduce execution time by [X]%. Would you like to apply these changes to improve performance? Analysis Details: - Tuning ID: [id] - Temporary Branch: [name] - Branch ID: [id] - Original Cost: [cost] - Improved Cost: [cost] - Referenced Tables: * public.orders * public.customers - Suggested Changes: * Add index for frequently filtered columns * Optimize join conditions To apply these changes, I will use the 'complete_query_tuning' tool after your approval and pass the tuning_id, NOT the temporary branch ID to it. </example> </response_instructions> 3. If approved, use ONLY the 'complete_query_tuning' tool with the tuning_id </next_steps> <error_handling> On error, the tool will: 1. Automatically attempt ONE retry of the exact same operation 2. If the retry fails: - Terminate execution - Return error details - Clean up temporary branch - DO NOT attempt any other tools or alternatives Error response will include: - Original error details - Confirmation that retry was attempted - Final error state Important: After a failed retry, you must terminate the current flow completely. </error_handling>

NEON
Neon

Complete Query Tuning

Complete a query tuning session by either applying the changes to the main branch or discarding them. <important_notes> BEFORE RUNNING THIS TOOL: test out the changes in the temporary branch first by running - 'run_sql' with the suggested DDL statements. - 'explain_sql_statement' with the original query and the temporary branch. This tool is the ONLY way to finally apply changes afterthe 'prepare_query_tuning' tool to the main branch. You MUST NOT use 'prepare_database_migration' or other tools to apply query tuning changes. You MUST pass the tuning_id obtained from the 'prepare_query_tuning' tool, NOT the temporary branch ID as tuning_id to this tool. You MUSt pass the temporary branch ID used in the 'prepare_query_tuning' tool as TEMPORARY branchId to this tool. The tool OPTIONALLY receives a second branch ID or name which can be used instead of the main branch to apply the changes. This tool MUST be called after tool 'prepare_query_tuning' even when the user rejects the changes, to ensure proper cleanup of temporary branches. </important_notes> This tool: 1. Applies suggested changes (like creating indexes) to the main branch (or specified branch) if approved 2. Handles cleanup of temporary branch 3. Must be called even when changes are rejected to ensure proper cleanup Workflow: 1. After 'prepare_query_tuning' suggests changes 2. User reviews and approves/rejects changes 3. This tool is called to either: - Apply approved changes to main branch and cleanup - OR just cleanup if changes are rejected ") import { z } from "zod" list_slow_queries: z.object({ "params": z.object({ "projectId": z.string().describe("The ID of the project to list slow queries from"), "branchId": z.string().describe("An optional ID of the branch. If not provided the default branch is used.").optional(), "databaseName": z.string().describe("The name of the database. If not provided, the default neondb or first available database is used.").optional(), "computeId": z.string().describe("The ID of the compute/endpoint. If not provided, the read-write compute associated with the branch will be used.").optional(), "limit": z.number().describe("Maximum number of slow queries to return").default(10), "minExecutionTime": z.number().describe("Minimum execution time in milliseconds to consider a query as slow").default(1000) }).strict().optional() }).strict() .describe(" <use_case> Use this tool to list slow queries from your Neon database. </use_case> <important_notes> This tool queries the pg_stat_statements extension to find queries that are taking longer than expected. The tool will return queries sorted by execution time, with the slowest queries first. </important_notes>

NEON
Neon

List Branch Computes

Lists compute endpoints for a project or specific branch

NEON

Paypal Tools

Square Tools

Webflow Tools

Webflow

Collections List

List all CMS collections in a site. Returns collection metadata including IDs, names, and schemas.

WEBFLOW
Webflow

Collections Get

Get detailed information about a specific CMS collection including its schema and field definitions.

WEBFLOW
Webflow

Collections Create

Create a new CMS collection in a site with specified name and schema.

WEBFLOW
Webflow

Collection Fields Create Static

Create a new static field in a CMS collection (e.g., text, number, date, etc.).

WEBFLOW
Webflow

Collection Fields Create Option

Create a new option field in a CMS collection with predefined choices.

WEBFLOW
Webflow

Collection Fields Create Reference

Create a new reference field in a CMS collection that links to items in another collection.

WEBFLOW
Webflow

Collection Fields Update

Update properties of an existing field in a CMS collection.

WEBFLOW
Webflow

Collections Items Create Item Live

Create and publish new items in a CMS collection directly to the live site.

WEBFLOW
Webflow

Collections Items Update Items Live

Update and publish existing items in a CMS collection directly to the live site.

WEBFLOW
Webflow

Collections Items List Items

List items in a CMS collection with optional filtering and sorting.

WEBFLOW
Webflow

Collections Items Create Item

Create new items in a CMS collection as drafts.

WEBFLOW
Webflow

Collections Items Update Items

Update existing items in a CMS collection as drafts.

WEBFLOW
Webflow

Collections Items Publish Items

Publish draft items in a CMS collection to make them live.

WEBFLOW
Webflow

Collections Items Delete Item

Delete an item in a CMS collection. Items will only be deleted in the primary locale unless a cmsLocaleId is included in the request.

WEBFLOW
Webflow

Pages List

List all pages within a site. Returns page metadata including IDs, titles, and slugs.

WEBFLOW
Webflow

Pages Get Metadata

Get metadata for a specific page including SEO settings, Open Graph data, and page status (draft/published).

WEBFLOW
Webflow

Pages Update Page Settings

Update page settings including SEO metadata, Open Graph data, slug, and publishing status.

WEBFLOW
Webflow

Pages Get Content

Get the content structure and data for a specific page including all elements and their properties.

WEBFLOW
Webflow

Pages Update Static Content

Update content on a static page in secondary locales by modifying text nodes and property overrides.

WEBFLOW
Webflow

Site Registered Scripts List

List all registered scripts for a site. To apply a script to a site or page, first register it via the Register Script endpoints, then apply it using the relevant Site or Page endpoints.

WEBFLOW
Webflow

Site Applied Scripts List

Get all scripts applied to a site by the App. To apply a script to a site or page, first register it via the Register Script endpoints, then apply it using the relevant Site or Page endpoints.

WEBFLOW
Webflow

Add Inline Site Script

Register an inline script for a site. Inline scripts are limited to 2000 characters.

WEBFLOW
Webflow

Delete All Site Scripts

undefined

WEBFLOW
Webflow

Sites List

List all sites accessible to the authenticated user. Returns basic site information including site ID, name, and last published date.

WEBFLOW
Webflow

Sites Get

Get detailed information about a specific site including its settings, domains, and publishing status.

WEBFLOW
Webflow

Sites Publish

Publish a site to specified domains. This will make the latest changes live on the specified domains.

WEBFLOW

Wix Tools

Wix

Search Wix Wds Documentation

Searches the Wix Design System Documentation for components and patterns. Use this tool when you need to understand or implement UI components and design patterns in a Wix project. Search for specific component names, patterns, or UI requirements. If you can't find what you need, try to rephrase your search term or use bigger maxResults value.

WIX
Wix

Search Wix Rest Documentation

Searches the official Wix REST API documentation. Use this tool whenever you need to to interact with the Wix platform via HTTP requests. Specify the API endpoint, resource, or action you need information about (e.g., 'get site details endpoint', 'create data collection', 'update product API', 'REST authentication'). If you can't find what you need, try to rephrase your search term or use bigger maxResults value.

WIX
Wix

Business Flows Documentation

This tool provides step-by-step recipes for setting up complex Wix business solutions that involve multiple API calls. It excels at guiding the creation of features like booking systems with payments. For example, it can guide the setup of a service in Wix Bookings where customers can pay using Wix Payments, such as creating a bookable yoga class It searches the Wix Business Solutions documentation for these integrated workflows involving services, bookings, payments, stores, blogs, and more. This tool returns a list of articles that are potentially relevant to the input search term. **IMPORTANT NOTES:** 1. Before attempting to implement a multi step API calls on Wix, YOU MUST TRY THIS TOOL FIRST. 2. Out of the returned list of articles that you will receive, you MUST select the most relevant one and use the ReadFullDocsArticle tool to fetch it.

WIX
Wix

Search Wix Sdk Documentation

Searches the official Wix javascript SDK documentation. Use this tool whenever you need to write or modify Wix related SDK code. Specify the SDK module, function, or feature you need information about (e.g., 'how to query all items from a data collection?', 'how to use wix-stores-backend', 'authentication methods in the SDK'). If you can't find what you need, try to rephrase your search term or use bigger maxResults value.

WIX
Wix

Search Build Apps Documentation

Searches the official Build Apps documentation. Use this tool when you need to understand or implement Wix CLI applications related code. The search term should be a specific Wix CLI command or specific topic related to Wix CLI applications or its ecosystem (e.g. deployment, creating new extensions etc). If you can't find what you need, try to rephrase your search term or use bigger maxResults value.

WIX
Wix

Search Wix Headless Documentation

Searches the official Wix Headless Documentation. Use this tool when you need to understand or implement Headless related code. The search term should be a specific Wix Headless topic or feature you need information about. If you can't find what you need, try to rephrase your search term or use bigger maxResults value.

WIX
Wix

Read Full Docs Article

Fetches the full Wix docs article or method article. Use this tool when you read a summary of a docs article or method article, you have the docs url and want to read the full article.

WIX
Wix

Read Full Docs Method Schema

Fetches the full method schema for a given method. Always use it before calling the method. This will give you the entire request/response schema with all the fields and their descriptions.

WIX
Wix

Call Wix Site Api

Call Wix apis on a business or site. Use this to create, read, update, and delete data and other Wix entities in your Wix site, You should ALWAYS check the rest docs - "SearchWixRESTDocumentation" for the specific API you want to call, don't just call it without knowing what it does, CHECK THE DOCS Error Handling: If the error is related to missing installed app or "WDE0110: Wix Code not enabled", you should install the missing app by using ReadFullDocsArticle tool to fetch the article - https://dev.wix.com/docs/kb-only/MCP_REST_RECIPES_KB_ID/TRAIN_wix.devcenter.apps.installer.v1.AppsInstallerService.InstallApp **Note:** there is no need to check if an app is installed/ Wix Code enabled in advance, just call the API and handle the error if it occurs, the API error message will state it clearly. For any other error, use your default error handling mechanism

WIX
Wix

List Wix Sites

List Wix sites for the current user, by default it will return all sites, but you can filter by name

WIX
Wix

Manage Wix Site

Use account level API in order to create a site, update a site and publish site. ALWAYS use "SearchWixRESTDocumentation" to search for the API you should invoke, NEVER GUESS THE SITE API URL You should ALWAYS check the rest docs - "SearchWixRESTDocumentation" for the specific API you want to call, don't just call it without knowing what it does, CHECK THE DOCS

WIX
Wix

Support And Feedback

If the user would like to provide Wix with some feedback (good or bad), about the tools in Wix MCP, for example they used the tools provided, and they reflected satisfaction or dissatisfaction with the tools. Also, if you encounter too many errors tyring to call the Wix API, you can also suggest the user to provide feedback to Wix using this tool. **IMPORTANT NOTE** This tool is not sending the message, but formats it in order to another tool to actually send it

WIX