Builder Prime MCP by usefulapi

Read Builder Prime projects and meetings, and create or update them from chat.

Should I use this

Quality & Safety

A
Description quality
93%
Schema completeness
80%
Naming quality
96%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (3)

  • LOWTool 'builderprime_list_meeting_types' name length outside 3-30 rangein builderprime_list_meeting_types
  • LOWTool 'builderprime_list_meeting_results' name length outside 3-30 rangein builderprime_list_meeting_results
  • LOWTool 'builderprime_get_meeting_result' name length outside 3-30 rangein builderprime_get_meeting_result

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,293Tokens (tool definitions)
~1.3 KBTypical response size
Moderate attention impact (1.79% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "builder-prime": {
      "url": "https://builder-prime.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://builder-prime.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (14)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢builderprime_list_projects(limit, page, opportunity_id, project_status, last_modified_since)

Read projects with projects.read. Pages start at 0, max100. Vendor defaults last-modified-since to one year ago and forbids older dates; this is not a complete all-history report. Response includes customer names available on projects.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "page": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "opportunity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "project_status": {
      "type": "string"
    },
    "last_modified_since": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Unix epoch milliseconds, not seconds."
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_get_project(project_id)

Read one project and its customer/status/value fields. Requires projects.read.

Input Schema

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "project_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_list_meetings(limit, page, start_date_from, start_date_to, opportunity_id, ...)

Read meetings beginning in a required date range (epoch milliseconds). Requires meetings.read; page is zero-based, limit max100.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "page": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "start_date_from": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Unix epoch milliseconds, not seconds."
    },
    "start_date_to": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Unix epoch milliseconds, not seconds."
    },
    "opportunity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "employee_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "start_date_from",
    "start_date_to"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_get_meeting(id)

Read one meeting; requires meetings.read.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_list_employees(limit, page)

Read employees; requires employees.read. Pagination is zero-based, limit max100.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "page": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_get_employee(id)

Read one employee; requires employees.read.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_list_meeting_types(limit, page)

Read meeting-types; requires meetingtypes.read. Pagination is zero-based, limit max100.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "page": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_get_meeting_type(id)

Read one meeting type; requires meetingtypes.read.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_list_meeting_results(limit, page)

Read meeting-results; requires meetingresults.read. Pagination is zero-based, limit max100.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "page": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢builderprime_get_meeting_result(id)

Read one meeting result; requires meetingresults.read.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴builderprime_create_project(projectName, projectStatus, estimatedValue, projectManager, salesPerson, ...)

Create a project attached to an existing client opportunity; projects.create required. Show the exact fields to the user before calling. Executes immediately, may trigger vendor workflows.

Input Schema

{
  "type": "object",
  "properties": {
    "projectName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "projectStatus": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "estimatedValue": {
      "type": "number",
      "minimum": 0
    },
    "projectManager": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "id"
      ],
      "description": "Employee ID from builderprime_list_employees."
    },
    "salesPerson": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "id"
      ],
      "description": "Employee ID from builderprime_list_employees."
    },
    "clientOpportunityId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "projectStatus",
    "clientOpportunityId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴builderprime_update_project(project_id, projectName, projectStatus, estimatedValue, projectManager, ...)

Modify only supplied project fields; projects.edit required. Status names must exactly match the account. Runs immediately; status changes may trigger workflows. No deletion/archiving.

Input Schema

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "projectName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "projectStatus": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "estimatedValue": {
      "type": "number",
      "minimum": 0
    },
    "projectManager": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "id"
      ],
      "description": "Employee ID from builderprime_list_employees."
    },
    "salesPerson": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "id"
      ],
      "description": "Employee ID from builderprime_list_employees."
    }
  },
  "required": [
    "project_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴builderprime_create_meeting(title, location, startDateTime, endDateTime, employee, ...)

Create a meeting for a client opportunity. meetings.create required. Confirm dates, timezone, attendee and type before calling; writes immediately and vendor notifications may occur.

Input Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "location": {
      "type": "string",
      "maxLength": 1000
    },
    "startDateTime": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Unix epoch milliseconds, not seconds."
    },
    "endDateTime": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Unix epoch milliseconds, not seconds."
    },
    "employee": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "id"
      ],
      "description": "Employee ID from builderprime_list_employees."
    },
    "meetingTypeId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "clientOpportunityId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "title",
    "startDateTime",
    "endDateTime",
    "employee",
    "meetingTypeId",
    "clientOpportunityId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴builderprime_update_meeting(meeting_id, title, location, startDateTime, endDateTime, ...)

Reschedule or edit meeting details; meetings.edit required. Runs immediately, no separate enforced approval. Blank location clears it. Read the existing meeting to check any unchanged start/end time before changing only one date.

Input Schema

{
  "type": "object",
  "properties": {
    "meeting_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "location": {
      "type": "string",
      "maxLength": 1000
    },
    "startDateTime": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Unix epoch milliseconds, not seconds."
    },
    "endDateTime": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Unix epoch milliseconds, not seconds."
    },
    "employee": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "id"
      ],
      "description": "Employee ID from builderprime_list_employees."
    },
    "meetingTypeId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "meeting_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded14 tools