How to Connect a Data Source
Kaman supports 85+ integrations via the MCP (Model Context Protocol). This guide shows you how to connect an external data source — like a database, CRM, or cloud storage — so your agents can query it and sync data to your Lake House.
Overview
The connection flow has 4 steps:
- Create credentials — Store your authentication details via the Integrations page
- Create a data source — Select the MCP plugin and your credentials
- Select resources — Choose which tables, collections, or data to expose
- Sync to Lake House — Pull data into Kaman's built-in data lake (optional)
Step 1: Create Credentials
Before connecting, you need to store your access credentials.
- Go to Settings > Credentials
- Click + Add Credential
- Change Resource Type to MCP
- Search for your integration (e.g., "PostgreSQL", "Salesforce", "Google Sheets")
- Fill in the required fields
- Click Save
See Managing Credentials for detailed instructions.
Step 2: Create a Data Source
-
Go to Build > My Resources in the sidebar, then click the Data Sources tab
-
Or use the Sync Data to Lake House action from the Integrations page
-
Select the MCP Plugin you want to connect (e.g., PostgreSQL)
-
Choose the Credential Profile you created in Step 1
-
Select the resources (tables, collections) to sync
-
Click Create
Step 3: Select Resources
After creating the data source, you'll see the available resources (tables, collections, etc.):
- Each resource appears as a tag on the data source card
- Resources are automatically discovered from the connected service
Step 4: Sync to Lake House (Optional)
To sync data into Kaman's built-in data lake:
- Go to your connector card
- Click on a resource
- Configure column mappings (map source columns to target columns)
- Set the sync mode:
- Full Sync — Replaces all data each time
- Incremental Sync — Only syncs new/changed rows
- Click Sync
- Monitor sync progress
After sync, your data is available in Data > Lake House for querying.
Using Connected Data in Agents
Once connected, your agents can interact with the data source through tools:
Attach Tools to Agent
- Open your agent in the Agent Builder
- Go to Tools & Workflows tab
- Add the tools from your connected MCP (e.g.,
execute_query,list_tables) - Save
Chat with Your Agent
Ask natural language questions and your agent will use the tools automatically:
- "Show me all customers from the database"
- "How many orders were placed last month?"
- "Insert a new record into the products table"
Example: Connecting PostgreSQL
| Step | Action | Details |
|---|---|---|
| 1 | Create credential | Host: your-db.example.com, Port: 5432, Database: mydb, Username: user, Password: *** |
| 2 | Create data source | Select PostgreSQL MCP, choose credential profile |
| 3 | Resources | Tables automatically listed: users, orders, products |
| 4 | Sync | Optional — sync orders table to Lake House |
| 5 | Use in agent | Attach execute_query, list_tables tools to your agent |
Example: Connecting Google Sheets (OAuth)
| Step | Action | Details |
|---|---|---|
| 1 | Create credential | Select Google Sheets MCP, click Authorize, sign in with Google |
| 2 | Create data source | Select Google Sheets MCP, choose credential |
| 3 | Resources | Your spreadsheets appear as resources |
| 4 | Sync | Sync a sheet to Lake House as a table |
| 5 | Use in agent | Attach get_spreadsheet, update_values tools to agent |
Supported Integrations
Browse all 85+ integrations at Discover > Integrations:
- Databases — PostgreSQL, MySQL, MongoDB, Oracle, SQL Server, DynamoDB, Elasticsearch, and more
- CRM — Salesforce, HubSpot, Zoho CRM, Pipedrive
- E-Commerce — Shopify, Stripe, WooCommerce, Razorpay
- Communication — Gmail, Outlook, Discord, Telegram, Slack, WhatsApp
- Cloud Storage — Google Drive, Google Sheets, OneDrive, Dropbox, Airtable
- Project Management — Jira, Trello, Asana, Monday, ClickUp
- ERP — Odoo, ERPNext, NetSuite, SAP
Troubleshooting
| Issue | Solution |
|---|---|
| Connection test fails | Verify credentials are correct. Check network access (firewall, IP allowlisting). |
| Resources not showing | Click Refresh on the connector card. Check if the credential has read permissions. |
| Sync timeout | Large tables may need increased timeout. Try syncing a smaller table first. |
| Schema changes not detected | Go to data source > Check Schema. Update column mappings if changed. |
| OAuth token expired | Edit the credential and re-authorize. Tokens auto-refresh in most cases. |