Databar MCP Server

Databar MCP Server

Enables AI assistants to interact with Databar.ai's data enrichment API, allowing discovery, configuration, and execution of data enrichments across hundreds of providers using natural language.

Category
Visit Server

README

Databar MCP Server

A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with Databar.ai's data enrichment API. Discover, configure, and run data enrichments across hundreds of data providers using natural language.

Features

  • Smart Enrichment Discovery — Search and filter enrichments by keyword or category
  • Natural Language Interface — Ask "get David's LinkedIn profile" and the right enrichment runs automatically
  • Bulk Operations — Enrich many records in a single call with bulk enrichment and bulk waterfall support
  • Table Management — Create tables, manage columns, insert/update/upsert rows
  • Waterfall Support — Try multiple data providers sequentially until one succeeds
  • Async Handling — Automatic polling for results with no manual intervention
  • Intelligent Caching — 24-hour result cache reduces API calls and costs
  • Error Handling — Retries with exponential backoff and clear error messages

Quick Start

Prerequisites

Install & Build

git clone https://github.com/databar-ai/databar-mcp-server.git
cd databar-mcp-server
npm install
npm run build

Configure Claude Desktop

Edit your Claude Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "databar": {
      "command": "node",
      "args": ["/absolute/path/to/databar-mcp-server/dist/index.js"],
      "env": {
        "DATABAR_API_KEY": "your-api-key-here"
      }
    }
  }
}

Restart Claude Desktop. Verify by asking: "What Databar tools do you have access to?"

Usage Examples

Find someone's LinkedIn profile

"Get me David Abaev's LinkedIn profile"

Claude searches for LinkedIn enrichments, picks the right one, runs it, and returns the profile data.

Verify an email address

"Verify the email david@databar.ai"

Find an email using waterfall

"Find the email for John Smith at Google"

Runs a waterfall that tries multiple providers until one returns a result.

Bulk enrich a list

"Enrich these 10 emails with company data: [list]"

Uses bulk enrichment to process all records in a single API call.

Manage table data

"List my tables"
"Create 5 rows in table abc-123 with columns name and email"
"Get the columns for table abc-123"

Available Tools

Enrichments

Tool Description
search_enrichments Search enrichments by keyword or category
get_enrichment_details Get parameters, pricing, and response fields for an enrichment
run_enrichment Run a single enrichment (with auto-polling and caching)
run_bulk_enrichment Run an enrichment on multiple inputs at once

Waterfalls

Tool Description
search_waterfalls Search available waterfall enrichments
run_waterfall Run a waterfall (tries providers sequentially)
run_bulk_waterfall Run a waterfall on multiple inputs at once

Tables

Tool Description
create_table Create a new empty table
list_tables List all tables in your workspace
get_table_columns Get column schema for a table
get_table_rows Get rows with pagination
get_table_enrichments List enrichments configured on a table
add_table_enrichment Add an enrichment to a table with column mapping
run_table_enrichment Trigger an enrichment on all rows in a table

Row Operations

Tool Description
create_rows Insert up to 50 rows with deduplication options
patch_rows Update fields on existing rows by ID
upsert_rows Insert or update rows based on a matching key

Account

Tool Description
get_user_balance Get credit balance and account info

Configuration

All settings are configurable via environment variables:

Variable Default Description
DATABAR_API_KEY (required) Your Databar API key
DATABAR_BASE_URL https://api.databar.ai/v1 API base URL
CACHE_TTL_HOURS 24 Result cache TTL in hours
MAX_POLL_ATTEMPTS 150 Max polling attempts for async tasks
POLL_INTERVAL_MS 2000 Polling interval in ms

How It Works

Async Task Handling

  1. Server sends a run request to the Databar API
  2. API returns a task_id
  3. Server automatically polls /v1/tasks/{task_id} every 2 seconds
  4. When status is completed, results are returned
  5. If data has expired (1-hour retention), gone status is handled gracefully

Caching

  • Results are cached for 24 hours by default
  • Cache key: enrichment ID + serialized params
  • Cached results don't consume credits
  • Use skip_cache: true to force fresh data

Smart Categorization

Enrichments are automatically categorized (People, Company, Email, Phone, Social, Financial, Verification) to help the AI assistant pick the right tool.

Development

npm run dev      # Run with tsx (hot reload)
npm run build    # Compile TypeScript
npm start        # Run compiled output

Project Structure

databar-mcp-server/
├── src/
│   ├── index.ts           # MCP server entry point & tool handlers
│   ├── databar-client.ts  # Databar API client with polling
│   ├── cache.ts           # In-memory cache with TTL
│   ├── types.ts           # TypeScript type definitions
│   └── utils.ts           # Helpers & categorization
├── dist/                  # Compiled output (generated)
├── package.json
├── tsconfig.json
└── .gitignore

Troubleshooting

Problem Solution
Server not connecting Verify API key, rebuild (npm run build), restart Claude Desktop
"No enrichments found" Try a broader search query; list cache refreshes every 5 minutes
"Task timed out" Some enrichments take longer; increase MAX_POLL_ATTEMPTS
"Task data has expired" Data is stored for 1 hour only; re-run the enrichment
"Invalid API key" Check .env or Claude Desktop config for typos/extra spaces

Resources

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured