Builder Prime MCP by usefulapi
Read Builder Prime projects and meetings, and create or update them from chat.
Should I use this
Quality & Safety
Findings (3)
- LOWin builderprime_list_meeting_types
- LOWin builderprime_list_meeting_results
- LOWin builderprime_get_meeting_result
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
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-httpWhat it can do
Tool inventory
Tools (14)
🟢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
Evidence