Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.
Data & analysis
Databar MCP
Try itDrive Databar MCP: leads, marketing intel, tables, flows.
What it does
Run Databar data workflows through the MCP tools: discover and run enrichments and waterfalls, manage workspace tables, build reusable flows, and export results to CRMs. All paid operations bill in Databar credits (not dollars) — this skill prices before it spends.
The skill document
Databar (MCP) Skill
Run Databar data workflows through the mcp__databar__* MCP tools: discover and run enrichments and waterfalls, manage workspace tables, build reusable flows, and export results to CRMs. All paid operations bill in Databar credits (not dollars) — this skill prices before it spends.
When to Use
- Contact enrichment and lead generation: find/verify emails, phone numbers, LinkedIn profiles, decision-makers at companies.
- Web data pulls: Google Maps, SERP, reviews, job postings, Amazon, YouTube search/comments.
- Company intelligence: tech stack, firmographics, hiring signals, funding/partnership news by domain.
- Marketing & SEO: competitor keywords (organic + PPC), transactional keywords by topic, LinkedIn ad library, brand social stats.
- Social & community intelligence: X/Twitter, TikTok, LinkedIn posts, Reddit, Telegram, Hacker News.
- Job search & recruiting: people search by title/company, hiring-company discovery, Sales Navigator exports.
- E-commerce & reputation: product details/pricing from any store, Google Shopping, Trustpilot/Capterra/app-store reviews.
- Investor & market intelligence: funding rounds and investors, public-company financials, earnings transcripts, real-time stock data.
- App-market intelligence: App Store/Google Play data, revenue estimates, review mining.
- Web traffic & domain intel: traffic estimates, SEO statistics, global rank, redirects, cheap firmographics by domain.
- Repeatable pipelines: tables with attached enrichment columns, scheduled sources, flows.
- Pushing results to HubSpot, Salesforce, Google Sheets, webhooks.
Don't use for: one-off page reads that web_extract already covers, or any bulk run where you haven't checked price_credits yet.
Prerequisites
- Databar MCP server connected. Verify:
terminal(command="hermes mcp list")showsdatabar ... enabled. - Hosted endpoint:
https://mcp.databar.ai/mcp(preferred — always current). API key from your Databar workspace → Integrations, sent asAuthorization: Bearer. - Credits in the account. Check before spending:
mcp__databar__get_user_balance.
How to Run
Databar tools are loaded on demand. In Hermes: tool_search(query="databar ") → tool_describe(name="mcp__databar__") → tool_call. Tool names are always mcp__databar__.
The Databar Model (read once)
- Discover → run → poll → persist (optional) → export (optional).
- An enrichment is one provider. A waterfall tries multiple providers in sequence until one returns data — use waterfalls for email/person lookups where hit rate matters.
- Every paid call has a
price_creditscost (visible inget_enrichment_details), billed per record. Paginated enrichments bill per page. - Runs are async:
run_*returns a task id, not data.get_task_statusreturns results once complete. - Tables: create → add rows → attach enrichment/waterfall/flow as result columns → run on all or empty rows.
Quick Reference
| Stage | Tools |
|---|---|
| Account | get_user_balance |
| Discover enrichments | search_enrichments, get_enrichment_details, get_param_choices |
| Discover waterfalls | search_waterfalls |
| Run now | run_enrichment, run_bulk_enrichment, run_waterfall, run_bulk_waterfall |
| Poll results | get_task_status |
| Tables | create_table, rename_table, delete_table, get_table_columns, rename_column, delete_column |
| Rows | create_rows, upsert_rows, patch_rows, delete_rows, get_table_rows |
| Table enrichments | add_table_enrichment, add_table_waterfall, get_table_enrichments, get_table_waterfalls, run_table_enrichment |
| Flows | list_flows, create_flow, get_flow, update_flow, run_flow, delete_flow, get_table_flows, add_table_flow |
| Sources & export | add_table_source, get_table_sources, sync_table_source, update_table_source_schedule, pause/resume_table_source, delete_table_source, search_exporters, get_exporter_details, add_table_exporter, get_table_exporters, run_table_exporter |
| Folders | list_folders, create_folder, rename_folder, delete_folder, move_table_to_folder |
Procedure — one-off enrichment
get_user_balance— record starting credits. ✓ balance noted.search_enrichments(query="...")— shortlist by rank; noteid,price_credits,auth_methodper option.get_enrichment_details(enrichment_id=...)— exact param slugs and response fields. If a param showschoices.mode: "remote", resolve options withget_param_choices. ✓ params known before spending.run_enrichment(enrichment_id, params)orrun_bulk_enrichment(enrichment_id, params_list)for batches.get_task_status(task_id)— wait ~3–5 s for singles, then poll every few seconds; waterfalls take longer.- Bulk results are position-aligned:
data[i]answersparams_list[i],nullmeans no data. ✓len(data) == len(params_list).
Procedure — email/contact waterfall
search_waterfalls(query="email finder")— noteidentifier,available_enrichments,input_params.run_waterfall(waterfall_identifier="email_getter", params={...})— optionally passemail_verifier(an enrichment id) to verify hits, orprovider_idsto restrict providers.- Poll
get_task_status; report hit rate. For batches userun_bulk_waterfall(same position-alignment rule).
Procedure — table pipeline (repeatable)
create_table(name, columns)thencreate_rows(max 100/call;options.allow_new_columns: trueauto-creates unknown columns).add_table_enrichment(table_uuid, enrichment_id, params)— each param maps to{"type": "mapping", "value": ""}(read per-row) or{"type": "simple", "value": ""}.run_table_enrichment(table_uuid, enrichment_id, run_strategy="run_empty")— skips rows that already have results;"run_all"re-processes everything (billed again).- Read back with
get_table_rows(filters: equals, contains, not_equals, is_empty, is_not_empty — AND-ed; max 500/page). - Export:
search_exporters→get_exporter_details→add_table_exporter→run_table_exporter.
Recipes for common goals are in references/ — recipes.md (sales/lead-gen core: lead lists, Maps, hiring signals, tech stacks, scheduled sources), recipes-marketing-social.md (SEO/PPC, ads, social listening, review mining, price watch, news), recipes-people-research.md (decision-makers, warm intros, job search, dossiers, research sourcing), and recipes-finance-app.md (funding intel, public-company teardowns, app-market intelligence, domain/traffic teardowns).
Cost discipline
- Call
get_enrichment_detailsbefore the first run of any enrichment — the same data can cost 1–15+ credits depending on provider. Price the whole chain, not one hop. - Paginated enrichments bill per page — request only the pages you need.
run_strategy="run_empty"instead of"run_all"on re-runs of table enrichments.- Report the credit delta (
get_user_balancebefore/after) with the delivered result.
Pitfalls
- Async ≠ done. A task id from
run_*is not a result. Always confirm viaget_task_statusbefore reporting data. - Positional joins. Bulk results carry no keys — preserve your input order or join by index.
- Destructive tools are permanent.
delete_table,delete_rows,delete_column,delete_flow,delete_folderhave no undo. Never delete without explicit user instruction. delete_flowis refused while the flow is attached to a table column — remove the column first.upsert_rowskey must be exactly one column;create_rows/upsert_rows/patch_rowscap at 100 rows per call.- BYOK enrichments (
auth_method: "user_or_databar") may require your own provider API key if Databar-side auth fails. - Results may come from cache; pass
skip_cache: truewhen freshness matters (full price). - The npm
databar-mcp-serverstdio package lags the hosted server — prefer the hosted URL unless your client requires stdio.
Verification
get_user_balancebefore/after shows the expected credit delta.get_task_statusreports completed with data; for tables,get_table_rowsshows result columns filled on the intended rows.
Related skills
Fetch raw ad creative, app, ranking, and revenue data from AdMapix as structured JSON.
Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.
Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.
Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.
Write, debug, and tune Playwright specs with locator strategy, trace diagnosis, and CI-aware timeouts.
More from dennisrongo
Browse all skillsSurface architectural friction in a codebase and propose **deepening opportunities** — refactors that turn shallow modules into deep ones, informed by the project's `CONTEXT.md` glossary and `docs/adr/` decisions. Walks the codebase with an Explore sub-agent, applies the **deletion test** to suspected pass-through modules, presents a numbered list of candidates with files / problem / solution / benefits, and drops into a grilling loop once the user picks one — naming new concepts into `CONTEXT.md` inline and offering an ADR only when a rejection is load-bearing. Writes no production code. Use this skill whenever the user says "improve architecture", "improve the architecture", "architecture review", "find refactoring opportunities", "find deepening opportunities", "find shallow modules", "make this more testable", "this code is hard to navigate", or invokes `/improve-codebase-architecture` — even if they don't name the skill.
Write and run E2E tests for React Native / Expo apps using Maestro CLI — the open-source tool that drives the **real native app** on an Android emulator or iOS simulator, not a web build. Covers what browser-based e2e (Playwright, Expect, e2e-verify) cannot reach: native components, biometrics, secure storage, push notifications, platform-specific modules. Write YAML flows, run headed for authoring or headless for CI. Scripts currently automate the Android workflow end-to-end (Java + SDK detection, emulator boot, adb reverse); iOS simulator setup requires Xcode + `xcrun simctl` and is documented but not automated by the setup script. Use this skill whenever the user says "test my react native app", "e2e test the mobile app", "write maestro tests", "test the expo app", "automate emulator testing", or "/maestro-mobile-test" — even if they don't name the skill. Not for web apps (e2e-verify), unit/component tests (write-tests with RNTL + Jest), or API contract tests.
Verify a change end-to-end in a real browser, routed by one question — who needs this check to run again? Ephemeral checks run via Expect (millionco/expect) or browser-use (AI agent driving headless Chromium — references/browser-use.md) when installed, else Claude driving the browser directly; regression-critical flows (auth, money, signup, checkout, deletion) get durable Playwright tests under write-tests discipline. Evidence rule either way — an AI-walked flow yields "no issues found in the paths walked" with observations quoted, never "e2e passes". Safety gate: never production, never real user cookies. Use this skill whenever the user says "verify this in the browser", "test it end to end", "test my web app", "e2e test this", "write playwright tests", "run expect", "run browser-use", "smoke test the UI", or "/e2e-verify" — even if they don't name the skill. Not for native mobile (maestro-mobile-test), unit/integration authoring (write-tests), or debugging a failing e2e test (diagno
Pre-commit SQL code review for uncommitted database changes. Detects antipatterns that cause real production incidents — broken TRY/CATCH error handling, swallowed errors, retry patterns without loops, tables missing PK/indexes, type-mismatch truncation, dynamic-SQL injection, NOLOCK in write paths, UPDATE/DELETE without WHERE, hardcoded env values, cross-DB refs, and more (full catalog in the skill body). Reports BLOCKER/WARN/INFO findings with file:line citations and fixes. Never edits SQL. Use this skill whenever the user says "/sql-review", "review my SQL", "review the SQL diff", "lint the SQL", "check my SQL changes", "SQL pre-commit check", "audit my stored proc", or asks about SQL antipatterns in a diff — even if they don't name the skill. Distinct from code-review (general review) — this carries SQL-specific incident patterns.
Scaffold a new Tauri 2 desktop app (Rust backend + TypeScript/React frontend) using a thin-frontend / rich-Rust-backend architecture with modular commands, trait-based platform abstractions, encrypted secrets at rest, single-instance enforcement, a self-hosted updater, and a cross-platform CI matrix. Three modes: full project scaffold, add a Tauri command slice, add a Rust module slice. Use this skill whenever the user says "create a new Tauri app", "scaffold a Tauri 2 project", "new desktop app with Tauri", "Tauri + React project", "add a Tauri command end-to-end", "add a Rust module to my Tauri app", "my Tauri conventions", or "/tauri-2-app" — even if they don't name the skill. Full good-pattern catalog and pitfall list live in the skill body.
Turn a feature idea, conversation context, or rough notes into researched, detailed, dependency-ordered checkbox tasks appended to the project's roadmap/backlog file — exactly the format goal-runner consumes, so a fresh unattended session can execute them. Grounds every task in the actual codebase before writing it (grep/read or Explore scouts; think-like-fable rigor if installed), puts what + done-when on the checkbox line with verified files, acceptance criteria, and a verification command in plain sub-bullets, and labels assumptions. Appends to the existing ROADMAP.md/BACKLOG.md/TODO.md; when none exists it asks once and defaults to ROADMAP.md. Use this skill whenever the user says "add this to the backlog", "add it to the roadmap", "plan these tasks", "break this down into tasks", "capture this as roadmap tasks", "turn these notes into a task list", or "/backlog-planner" — even if they don't name the skill. Not for executing tasks (goal-runner, task-executor, autopilot) — this writ