Home / MCP / Basecamp MCP Server

Basecamp MCP Server

Exposes live Basecamp data via MCP with read-only access for querying projects, tasks, calendars, and related records.

other
Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
    "mcpServers": {
        "basecamp_mcp": {
            "command": "java",
            "args": [
                "-jar",
                "CDataMCP-jar-with-dependencies.jar",
                "/PATH/TO/basecamp.prp"
            ]
        }
    }
}

This MCP server exposes live Basecamp data to large language models through a simple, read-only MCP interface. It lets you query Basecamp information in natural language, backed by the CData JDBC Driver, so you can retrieve up-to-date data without writing SQL.

How to use

You interact with Basecamp data from an MCP client as if you were asking questions about your Basecamp projects, tasks, calendars, and related records. The server handles data retrieval in the background, returning structured results to help you answer questions like project status, task counts, or upcoming calendar events. You do not need to write SQL queries; simply ask the client to fetch the data you need and the MCP server will surface it through its built-in tools.

When you have configured the MCP server, your AI client can discover available tables and columns, list data, and run read-only queries via the built-in tools. Start by asking for a list of available tables, then inspect columns in a particular table, and finally retrieve the data you need to answer your question.

How to install

Prerequisites: you need Java and Maven installed on your machine to build and run the MCP server.

1) Clone the project and enter the directory.

git clone https://github.com/cdatasoftware/basecamp-mcp-server-by-cdata.git
cd basecamp-mcp-server-by-cdata

2) Build the server JAR with dependencies.

mvn clean install

3) Download and install the CData JDBC Driver for Basecamp.

https://www.cdata.com/drivers/basecamp/download/jdbc

4) License the CData JDBC Driver.

java -jar cdata.jdbc.basecamp.jar --license

5) Configure the connection to Basecamp using the driver’s connection utility, then copy the connection string for later use.

java -jar cdata.jdbc.basecamp.jar

6) Create a property file for the JDBC connection (example basecamp.prp) with the required properties.

Prefix=basecamp
ServerName=CDataBasecamp
ServerVersion=1.0
DriverPath=PATH\\TO\\cdata.jdbc.basecamp.jar
DriverClass=cdata.jdbc.basecamp.BasecampDriver
JdbcUrl=jdbc:basecamp:InitiateOAuth=GETANDREFRESH;
Tables=

7) Run the MCP server on its own using the built JAR and your prp file.

java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/basecamp.prp

Additional configuration notes

The server uses a single-process, stdio-based interface suitable for local clients. If you need to connect from a separate machine or through a networked client, you would typically explore HTTP/REST-based MCP configurations; this setup is designed for local, on-machine use with stdio.

Environment variables shown for this server are not required to run basic operations. If you use environment variables to customize behavior, include them in the MCP startup configuration as needed.

Troubleshooting

If the MCP server does not appear in your AI client or cannot retrieve data, ensure you have fully started and are running the correct Java command with the proper prp file path. Quit and restart the client if necessary.

Verify your JDBC connection works independently by running the driver’s connection utility and testing the connection string. Ensure any OAuth authentication is completed in the browser if prompted.

If you experience issues with the MCP server or data access, contact CData Support for assistance or consult the related community resources for tips and troubleshooting steps.

Notes

This server provides read-only access to Basecamp data through the MCP interface. For full read, write, update, delete, and action capabilities, a different MCP server with write support is available.

Available tools

basecamp_get_tables

Retrieves a list of available tables from the Basecamp data source. Output is in CSV format with a header row.

basecamp_get_columns

Retrieves a list of columns for a specified table. Output is in CSV format with a header row.

basecamp_run_query

Executes a SQL SELECT query against the Basecamp data source to fetch data.