Copper MCP server. Read and write Copper CRM people, companies, opportunities and activities.
Add to your MCP config, then reload & authorize:
{
"mcpServers": {
"copper": {
"url": "https://copper.usefulapi.io/mcp"
}
}
}| Tool | Type | What it does |
|---|---|---|
copper_get_account | read | Get account Get details of the authenticated Copper account. Copper REST: GET /account. |
copper_list_users | read | List users List users in the Copper account (id, name, email) — useful for resolving assignee ids. Copper REST: POST /users/search. |
copper_search_people | read | Search people Search/list people (contacts). All filters optional; returns a page of people. Copper REST: POST /people/search. |
copper_get_person | read | Get person Get a single person (contact) by id. Copper REST: GET /people/{id}. |
copper_search_companies | read | Search companies Search/list companies. All filters optional; returns a page of companies. Copper REST: POST /companies/search. |
copper_get_company | read | Get company Get a single company by id. Copper REST: GET /companies/{id}. |
copper_search_opportunities | read | Search opportunities Search/list opportunities (deals). All filters optional; returns a page of opportunities. Copper REST: POST /opportunities/search. |
copper_get_opportunity | read | Get opportunity Get a single opportunity (deal) by id. Copper REST: GET /opportunities/{id}. |
copper_search_leads | read | Search leads Search/list leads. All filters optional; returns a page of leads. Copper REST: POST /leads/search. |
copper_get_lead | read | Get lead Get a single lead by id. Copper REST: GET /leads/{id}. |
copper_search_tasks | read | Search tasks Search/list tasks. All filters optional; returns a page of tasks. Copper REST: POST /tasks/search. |
copper_get_task | read | Get task Get a single task by id. Copper REST: GET /tasks/{id}. |
copper_list_activities | read | List activities List activities (notes, calls, meetings, system events) attached to a record. Copper REST: POST /activities/search. |
copper_list_activity_types | read | List activity types List the account's activity types (user + system), needed to log an activity. Copper REST: GET /activity_types. |
copper_list_pipelines | read | List pipelines List sales pipelines and their stages (ids needed to place opportunities). Copper REST: GET /pipelines. |
copper_create_person | write | Create person Create a new person (contact). Copper REST: POST /people. |
copper_update_person | write | Update person Update fields on an existing person. Only provided fields are changed. Copper REST: PUT /people/{id}. |
copper_create_company | write | Create company Create a new company. Copper REST: POST /companies. |
copper_create_opportunity | write | Create opportunity Create a new opportunity (deal). `name` and `primary_contact_id` are required by Copper. Copper REST: POST /opportunities. |
copper_create_lead | write | Create lead Create a new lead. Copper REST: POST /leads. |
copper_create_task | write | Create task Create a new task. Copper REST: POST /tasks. |
copper_log_activity | write | Log activity Log a user activity (e.g. a note or call) on a record. Get the activity_type_id from copper_list_activity_types. Copper REST: POST /activities. |
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 100 tool calls / month |
| Pro | $9/mo · $90/yr | Unlimited |
This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.