Basecamp MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BASECAMP_CLIENT_ID | No | OAuth client ID for token refresh. | |
| BASECAMP_ACCOUNT_ID | No | Your Basecamp account ID (optional, will auto-detect). | |
| BASECAMP_ACCESS_TOKEN | Yes | Your Basecamp OAuth access token. | |
| BASECAMP_CLIENT_SECRET | No | OAuth client secret for token refresh. | |
| BASECAMP_REFRESH_TOKEN | No | Refresh token for automatic token refresh. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| basecamp_readB | Read a Basecamp card or todo with optional comments and images. Supports any Basecamp URL. |
| basecamp_commentB | Post a comment to any Basecamp card or todo. Can include attachments by providing attachment_sgids. |
| basecamp_upload_attachmentA | Upload a file (image, video, document) to Basecamp. Returns an attachable_sgid that can be used in comments, messages, or any rich text content. |
| basecamp_comment_with_fileA | Post a comment with an attached file (image, video, document) to any Basecamp card or todo. Automatically uploads the file and embeds it in one step. |
| basecamp_list_projectsB | List all Basecamp projects |
| basecamp_get_projectB | Get detailed information about a specific project |
| basecamp_create_projectC | Create a new Basecamp project |
| basecamp_update_projectB | Update a project name, description, access policy, or schedule dates |
| basecamp_get_project_dockA | Get a clean map of all dock tool IDs for a project (message_board, todoset, vault, chat, schedule, questionnaire, inbox, kanban_board). Use this to quickly find tool IDs needed by other endpoints. |
| basecamp_trash_projectB | Move a project to trash |
| basecamp_list_columnsB | List all columns in a card table |
| basecamp_get_columnA | Get detailed information about a specific column (including subscribers, color, cards count) |
| basecamp_create_columnC | Create a new column in a card table |
| basecamp_update_columnC | Update a column title or description |
| basecamp_list_cardsA | List cards in a column. Defaults to auto-paginating — walks every page via Link headers so a 224-card Done column returns as one array instead of the first 15 rows. Pass {single_page: true, page: N} to restrict to a single page (useful for UI-style pagination). |
| basecamp_list_card_idsA | Compact card listing for iteration — returns only id, title, status, app_url, timestamps, comment count, assignee names, and completed flag for every card in a column. Payload is ~5% of list_cards so this is the right tool when you just need to walk IDs (e.g. to feed basecamp_get_card in a loop over the Done column). Always auto-paginates. |
| basecamp_get_cardB | Get detailed information about a specific card |
| basecamp_create_cardA | Create a new card in a specific column. Can include attachments by providing attachment_sgids. |
| basecamp_update_cardB | Update an existing card (title, content, assignees, due date, completion). Can include attachments. |
| basecamp_move_cardC | Move a card to a different column (status change) |
| basecamp_trash_cardC | Move a card to trash |
| basecamp_change_column_colorB | Change the color of a card table column. Available colors: white, red, orange, yellow, green, blue, aqua, purple, gray, pink, brown |
| basecamp_move_columnB | Move/reorder a column within a card table |
| basecamp_watch_columnB | Start watching/subscribing to a column for notifications |
| basecamp_unwatch_columnB | Stop watching/subscribing to a column |
| basecamp_set_column_on_holdC | Add an on-hold section to a column |
| basecamp_remove_column_on_holdC | Remove the on-hold section from a column |
| basecamp_list_stepsB | List all steps/checklist items on a card |
| basecamp_add_stepB | Add a new step to a card |
| basecamp_update_stepA | Update a step title, due date, or assignees |
| basecamp_complete_stepC | Mark a step as completed |
| basecamp_uncomplete_stepB | Mark a step as incomplete |
| basecamp_reposition_stepB | Change the position of a step within a card |
| basecamp_list_peopleB | List all people in the organization |
| basecamp_get_personC | Get details about a specific person |
| basecamp_get_todoB | Get a specific todo item |
| basecamp_create_todoB | Create a new todo item |
| basecamp_complete_todoB | Mark a todo as completed |
| basecamp_uncomplete_todoA | Mark a todo as incomplete |
| basecamp_get_eventsA | Get recent activity/events for the account or a specific project |
| basecamp_find_projectA | Find a project by name using fuzzy matching |
| basecamp_get_todosetA | Get the To-do Set for a project (contains all todo lists) |
| basecamp_list_todolistsB | List all to-do lists in a project |
| basecamp_get_todolistB | Get details of a specific to-do list |
| basecamp_create_todolistB | Create a new to-do list in a project |
| basecamp_update_todolistC | Update a to-do list |
| basecamp_list_todosA | List all to-dos in a to-do list |
| basecamp_get_todoB | Get details of a specific to-do |
| basecamp_create_todoB | Create a new to-do in a to-do list |
| basecamp_update_todoD | Update a to-do |
| basecamp_complete_todoB | Mark a to-do as completed |
| basecamp_uncomplete_todoA | Mark a to-do as incomplete |
| basecamp_list_messagesB | List all messages in a message board |
| basecamp_get_messageB | Get a specific message with full content |
| basecamp_create_messageA | Post a new message/announcement to the message board. Can include images and videos. |
| basecamp_update_messageC | Update an existing message |
| basecamp_pin_messageB | Pin a message to the top of the message board |
| basecamp_unpin_messageC | Unpin a message from the message board |
| basecamp_list_vaultsB | List all sub-vaults (folders) within a vault |
| basecamp_get_vaultA | Get details of a specific vault (folder) |
| basecamp_create_vaultB | Create a new sub-vault (folder) within a vault |
| basecamp_update_vaultC | Rename a vault (folder) |
| basecamp_list_documentsB | List all documents in a vault (Docs & Files) |
| basecamp_get_documentB | Get a specific document with full content |
| basecamp_create_documentB | Create a new document in the vault |
| basecamp_update_documentC | Update an existing document |
| basecamp_list_uploadsB | List all file uploads in a vault |
| basecamp_get_uploadB | Get details of a specific file upload |
| basecamp_create_uploadA | Create a file upload in a vault. First use basecamp_upload_attachment to get an attachable_sgid, then use this to place it in a vault. |
| basecamp_update_uploadB | Update a file upload description or name |
| basecamp_list_schedule_entriesB | List all schedule entries (calendar events) in a project |
| basecamp_get_schedule_entryC | Get a specific schedule entry/event |
| basecamp_create_schedule_entryB | Create a new calendar event in the schedule |
| basecamp_update_schedule_entryC | Update a schedule entry/event |
| basecamp_list_campfiresA | List all Campfires (group chats) visible to the current user |
| basecamp_get_campfireA | Get details of a specific Campfire chat |
| basecamp_list_campfire_linesB | List chat messages/lines in a Campfire |
| basecamp_create_campfire_lineA | Post a new message to a Campfire chat. Can include images and videos. |
| basecamp_delete_campfire_lineB | Delete a chat message/line from a Campfire |
| basecamp_list_pingable_peopleA | List all people who can be pinged (mentioned) on this Basecamp account |
| basecamp_manage_project_peopleC | Grant or revoke project access for people |
| basecamp_trash_recordingA | Trash any Basecamp recording (card, todo, message, document, etc.) |
| basecamp_archive_recordingC | Archive any Basecamp recording |
| basecamp_activate_recordingB | Reactivate a trashed or archived Basecamp recording |
| basecamp_index_buildA | Build full index of all projects, card tables, and columns for fast lookups |
| basecamp_index_update_projectC | Update index for a specific project |
| basecamp_index_searchB | Search projects by name in the index (fast lookup) |
| basecamp_index_get_projectC | Get project details from index (project ID, card tables, columns) |
| basecamp_index_find_columnA | Find a column by name within a project (fast lookup) |
| basecamp_index_get_columnsB | Get all columns for a project from index |
| basecamp_index_statsA | Get index statistics (total projects, columns, last update time) |
| basecamp_parse_urlC | Parse a Basecamp URL to extract IDs (account, project, card/todo) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/vapvarun/basecamp-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server