Skip to main content
Glama

MyDataHub

Server Details

UK B2B contact counts, quotes and lists, by Emailmovers

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over the last 24 hours
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

Score is being calculated.

Available Tools

34 tools
available_selection_categoriesDeprecated: filter categories
Read-onlyIdempotent
Inspect

Deprecated: lists the filter categories. Use list_filters instead. It returns every field by name, such as company.employee_band, with its type, operators and value count. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

available_selection_valuesDeprecated: filter values
Read-onlyIdempotent
Inspect

Deprecated: lists the values of one filter category by numeric id. Use search_filter_values instead. It takes the field name and search text and returns codes with contact and company counts. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

check_suppressionCheck suppression
Read-onlyIdempotent
Inspect

Checks the suppression status of up to 1,000 delivered records by record id, as of now, and names the lists that suppress each. Use it before every send, because objections reach records after delivery. Free; it needs suppressions:read. Leave suppressed records out of the send, and call report_objection when someone objects. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
record_idsYes

Output Schema

NameRequiredDescription
resultsYes
checked_atYes
compile_audienceCompile a brief
Read-onlyIdempotent
Inspect

Compiles a plain English brief, such as 300 finance directors at law firms in Manchester, into an audience definition with a one-sentence readback, editable chips and any questions to answer first. Use it first for a request in words, read the readback to the user and settle the questions before counting. Words that match no filter come back in unrecognised, never guessed. Free and needs no account; pass the audience to count_audience next. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
briefYesA plain English brief, such as "300 finance directors at law firms in Manchester".
datasetNoThe dataset an audience draws from. uk_contacts is live; ie_contacts and global_contacts are listed but not yet served.

Output Schema

NameRequiredDescription
chipsYes
audienceYes
quantityYesA quantity named in the brief, such as 300, for quote_order limit.
readbackYesThe audience in one sentence, to confirm with the person.
questionsYes
unrecognisedYesWords of the brief that matched no filter, shown rather than guessed.
count_audienceCount an audience
Read-onlyIdempotent
Inspect

Counts UK contacts and companies matching an audience, inline or a saved aud_ id, and returns Total, New to you and Emailable, up to three breakdowns, quality, the compliance summary, a price estimate and a count id. Use it whenever a filter changes, and before preview_records or quote_order, which both take the count id. Free and needs no account; anonymous and trial callers see counts under 100 and breakdown cells rounded to the nearest 5 (disclosure says which), and exact small counts need a paid plan. It returns no contact details, and over MCP a cross-tab holds at most 200 cells (truncated true; GET /v1/counts/{id} has the rest). Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
levelNocontact (the default) or company. Contacts and companies come back together either way.contact
audienceYes
breakdown_byNoUp to three fields to break the count down by, each once, such as industry by seniority by region. Returns the top 50 cells per field plus other.

Output Schema

NameRequiredDescription
idYesFormat: a count id: cnt_ followed by 20 base32 characters (A to Z and 2 to 7), such as cnt_7K2PQ4MAXN3R6TBY5WDZ.
planNo
as_ofNoThe date the dataset version was built, for as-of statements.
levelNocontact (the default) or company. Contacts and companies come back together either way.
viewsNo
currentNoOn a replay: the same audience on the current dataset version.
datasetYesThe dataset an audience draws from. uk_contacts is live; ie_contacts and global_contacts are listed but not yet served.
premiumYesPremium: the contacts of all_records that are premium records (contact.premium true). At launch, a premium record is in the premium export of a stated date. Null when the dataset version carries no premium data, or withheld when the premium records are at a single company and the caller has no account; premium_note says which.
qualityYes
contactsYesTotal: every matching contact.
crosstabNo
defaultsYesEvery default with the number behind its toggle: dissolved and insolvent, generic emails, individual subscribers, TPS and CTPS registered.
estimateYes
warningsNo
companiesYes
emailableYesA named email scoring 70 or more at a corporate subscriber.
breakdownsYes
created_atNo
disclosureYes
expires_atYesThe id replays until then (12 months).
new_to_youYesExcludes your earlier orders and CRM overlap; null when signed out.
all_recordsYesAll records: every matching contact with the audience's top-level premium filters taken out (a premium filter inside any or not stays), so the premium figure always has the full figure beside it. The same as contacts when the audience has no premium filter.
premium_noteYesWhat premium means on this dataset version, or why premium is null: no premium data on the version, or withheld because the premium records are at a single company.
removed_sinceNoOn a replay: records since removed by objections and erasure.
expanded_termsNoEvery title a matches filter covered, with a count per term.
dataset_versionYesThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.
compliance_summaryYes
credits_per_recordYesCredits, to one decimal place: whole at 1 credit a record, fractional only where a rule is (0.1 company-only, 1.8 outright, both proposed).
effective_audienceNoThe definition after defaults and bundles, as hashed into the id.
engine_rules_versionYesThe engine rules (title expansion, defaults, geography sets) the count ran under; part of what the count id hashes, such as 2026.09.1.
create_data_extractDeprecated: create an orderInspect

Deprecated: spent credits on a saved list when the model set a confirmation flag, and no longer does. Use quote_order, then create_order instead. The flag is ignored, since a flag set by a model is never consent: the call makes a machine quote for the list, and the user confirms the spend in a form or on mydatahub.emailmovers.com, or an agent key covers it within its limits; otherwise nothing is charged and it returns the approval_url. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

create_orderCreate an order (spends credits)
Idempotent
Inspect

Spends 1 credit per complete UK record against a live machine quote from quote_order, and queues the order. It needs the quote_id and an idempotency_key to reuse on any retry, so a retry never charges twice; a flag set by a model is never consent. Where the host supports elicitation the user confirms the spend in a form or on mydatahub.emailmovers.com; otherwise an agent key must cover it within its per-order cap and monthly budget. If neither applies nothing is charged: the result is a confirmation-required error with an approval_url to give the user, so keep the quote_id; a short balance returns a top_up_url. Call get_order until the status is ready, then fetch_order_records. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
nameNo
deliveryNoapi (fetch records), csv (signed download) and google_sheets. Default api.
quote_idYesA live machine quote from quote_order. Without one nothing is charged.
idempotency_keyYesAny unique string, such as a V4 UUID. Reuse it when retrying the same order so it is never charged twice; a different order needs a new key.
confirmation_tokenNoThe token the approval page on mydatahub.emailmovers.com returns once the signed-in person approves. It is bound to that person (their sub), this spend (the machine quote_id, or the enrichment or push) and an expiry no later than the quote's, and it is redeemable once.

Output Schema

NameRequiredDescription
idYesFormat: an order id: ord_ followed by a 26 character ULID in upper case Crockford base32, such as ord_01JB4N9S3W2X6Y7Z8A1B2C3D4E.
nameNo
statusYesqueued, building, verifying, ready; failed if processing failed; cancelled (only while queued).
failureNo
licenceYes
recordsYes
cost_gbpYesThe charge in GBP excluding VAT at your plan's rate.
count_idYesThe count the machine quote was priced from.
deliveryNo
quote_idYesThe machine quote the order settled.
ready_atNo
buyer_kitNo
field_setNo
created_atNo
receipt_urlNoA path on https://mydatahub.emailmovers.com starting /v1/. Resolve it against the origin (RFC 3986), not by appending it to the server URL.
records_urlYesA path on https://mydatahub.emailmovers.com starting /v1/. Resolve it against the origin (RFC 3986), not by appending it to the server URL.
confirmed_byYes
download_urlNo302 to a single-use signed URL that lives 5 minutes.
verificationNoThe real-time check at delivery, such as 4,102 checked, 4,071 passed.
credits_chargedYesCredits, to one decimal place: whole at 1 credit a record, fractional only where a rule is (0.1 company-only, 1.8 outright, both proposed).
dataset_versionNoThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.
credits_remainingYesThe balance right after this order was charged.
validation_reportNoPresent once the order is ready.
licence_expires_atYesWhen the licence ends; null for outright ownership.
enrich_contactEnrich a contact (spends credits)
Idempotent
Inspect

Returns the full record for one known person, matched by email or by name with a company name, number or domain. It spends 1 credit only on a confident match, and 0 on no match or when you already hold the record under licence, so a repeat never charges twice. Like create_order it needs the user's confirmation (a form, or the confirmation_token from an approval_url) or an agent key whose allowed_tools include enrich_contact within its per-order cap and monthly budget; otherwise nothing is charged and it returns confirmation-required or agent-budget-exceeded. It needs enrich:write; use it for a single named person, and the result gives credits_charged and the balance left. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
emailNo
domainNo
last_nameNo
first_nameNo
company_nameNo
company_numberNoEight characters in upper case, such as 05046417 or SC123456.
confirmation_tokenNoThe token the approval page on mydatahub.emailmovers.com returns once the signed-in person approves. It is bound to that person (their sub), this spend (the machine quote_id, or the enrichment or push) and an expiry no later than the quote's, and it is redeemable once.

Output Schema

NameRequiredDescription
recordYes
matchedYes
cost_gbpYesPounds sterling excluding VAT, to two decimal places.
credits_chargedYes1 on a confident match, otherwise 0.
already_licensedYesTrue when you already hold the record, so it costs 0.
match_confidenceYes
credits_remainingYesCredits, to one decimal place: whole at 1 credit a record, fractional only where a rule is (0.1 company-only, 1.8 outright, both proposed).
licence_expires_atYes
expand_job_titlesExpand job titles
Read-onlyIdempotent
Inspect

Expands title keywords into every matching title (plurals, department synonyms, ampersands, abbreviations such as CEO), each with a count, or shows what a bundle such as sdm resolves to. Use it before counting so the user can see and edit which titles a keyword covers; nothing is expanded silently. Free and needs no account. Put the returned filter into the audience, then call count_audience. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
modeNocontains (the default) matches titles containing a term, starts_with matches titles beginning with it, exact takes verbatim titles with no expansion.
termsNoTitle keywords to expand, such as marketing manager.
bundleNoA title bundle to show: sdm, manager_and_above or owner_managed.
expandNoExpansion sets to apply, each once. Left out, the four default sets apply.
datasetNoThe dataset an audience draws from. uk_contacts is live; ie_contacts and global_contacts are listed but not yet served.

Output Schema

NameRequiredDescription
modeYescontains (the default) matches titles containing a term, starts_with matches titles beginning with it, exact takes verbatim titles with no expansion.
termsYes
bundleYes
expandYes
filterYesA ready matches filter for the terms, or null for a bundle.
disclosureYes
total_contactsYes
dataset_versionYesThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.
fetch_order_recordsFetch order records
Read-onlyIdempotent
Inspect

Returns a page of an order's delivered records (50 by default, up to 100) with the licence block on every page, as JSON or, on request, as CSV. Pages stay under about 8,000 tokens, with approx_tokens on each; pass next_cursor to continue. Fetching again under licence costs 0 credits; it needs records:read. Call check_suppression before any send, and get_compliance_receipt for proof of screening. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
limitNoRecords per page, 1 to 100 over MCP so a result stays under about 8,000 tokens. Default 50.
cursorNoAn opaque cursor from next_cursor. Pass it back unchanged.
fieldsNoColumns to return; default the order's field set.
formatNojson (default) or csv.json
order_idYesThe order whose records to fetch. It must be ready.

Output Schema

NameRequiredDescription

No output parameters

get_accountAccount and balance
Read-onlyIdempotent
Inspect

Returns the organisation's credit balance by source, plan, per-action prices and rate limit, and for an agent key its monthly budget and per-order cap. Use it before quoting a large order, or when a spend is refused, to see what remains. Free; it needs a token with account:read. Top-ups happen on mydatahub.emailmovers.com, never inside a tool. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
keyYesThe calling key and, for an agent key, its budget; null for a person.
modeYeslive keys (mdh_live_) spend real credits; test keys (mdh_test_) return synthetic data and never charge.
planYes
userYesThe signed-in person; null when the caller is an API key.
pricesYesWhat each action costs in credits.
balanceYesCredits by source.
agreementsYesThe Data Licence and Sharing Agreement (accepted with every order, or with an agent key that orders on its own) and the Article 28 DPA (accepted with the first suppression list).
rate_limitYes
organisationYes
gbp_per_creditYesYour plan's price per credit, excluding VAT.
account_managerYesThe named person behind Talk to us.
get_compliance_receiptGet a compliance receipt
Read-onlyIdempotent
Inspect

Returns an order's signed compliance receipt: an ES256 JWS with its decoded claims and a PDF link, covering records delivered, suppression removals, subscriber classes, TPS screening, Article 14 status, the licence and the file hash. Use it to prove to the user, a colleague or another agent that a list is licensed and screened; anyone can verify it with POST /v1/compliance/receipts/verify. Free; it needs orders:read. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
order_idYesThe order the receipt covers.

Output Schema

NameRequiredDescription
idYesFormat: a compliance receipt id: rcpt_ followed by a 26 character ULID in upper case Crockford base32, such as rcpt_01JB4NA2Q5W8ZAK8Q2V7XN3M9R.
algYes
jwsYesThe receipt as a compact JWS signed with ES256.
kidYesThe signing key id in jwks_url.
claimsYes
pdf_urlYesThe PDF twin at mydatahub.emailmovers.com/receipts/{id}.
jwks_urlYes
order_idYesFormat: an order id: ord_ followed by a 26 character ULID in upper case Crockford base32, such as ord_01JB4N9S3W2X6Y7Z8A1B2C3D4E.
get_countDeprecated: get the count
Read-onlyIdempotent
Inspect

Deprecated: returns the count for the filters held in the server session. Use count_audience instead. It returns Total, New to you and Emailable with breakdowns, quality, the compliance summary, a price estimate and a count id. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

get_creditsDeprecated: credit balance
Read-onlyIdempotent
Inspect

Deprecated: returns the credit balance. Use get_account instead. It returns the balance by source, the plan, per-action prices, the rate limit and any agent key budget; balances carry over one for one. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

get_orderGet order status
Read-onlyIdempotent
Inspect

Returns one order's status (queued, building, verifying, ready, failed or cancelled), counts, charges, licence and links to its records, download and receipt, or the recent orders when order_id is left out. Use it after create_order to wait for ready, or rely on the order.ready webhook. Free; it needs orders:read. Call fetch_order_records once the status is ready. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
limitNoItems per page, 1 to 100. Default 25.
cursorNoAn opaque cursor from next_cursor. Pass it back unchanged.
statusNoqueued, building, verifying, ready; failed if processing failed; cancelled (only while queued).
order_idNoThe order to return. Leave it out for the recent orders, newest first.

Output Schema

NameRequiredDescription

No output parameters

get_pack_detailsDeprecated: field set columns
Read-onlyIdempotent
Inspect

Deprecated: lists the columns of one field bundle. Use list_field_sets instead. list_field_sets returns every field set with its exact columns and credits per record. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

get_packsDeprecated: list field sets
Read-onlyIdempotent
Inspect

Deprecated: lists the field bundles an order can deliver. Use list_field_sets instead. The old bundles become named field sets with their exact columns; the five test bundles are removed. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

get_plansPlans and prices
Read-onlyIdempotent
Inspect

Returns the plans of MyDataHub by Emailmovers, the UK B2B count engine: credit packs, credit rules, licence terms, the bounce warranty and the free trial, in GBP excluding VAT. Use it when the user asks what a list costs or which plan fits; it is free and needs no account. One credit buys one complete UK record at the same price in the app, the API and here. Call get_account for the caller's own balance, or count_audience to size a list. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
plansYes
trialYes
metersYesWhat agents and code are metered on, in credits, the same on every surface.
licenceYes
versionYes
currencyYes
promisesYes
guaranteeYes
valid_fromYes
action_pathYesHow to buy: quote_order for a machine quote, create_order with a confirmation, and the top-up page when the balance is short.
price_scaleYes
credit_packsYes
credit_rulesYes
vat_treatmentYes
credit_definitionYes
get_saved_selectionsDeprecated: list saved audiences
Read-onlyIdempotent
Inspect

Deprecated: lists the saved lists of the organisation. Use list_audiences instead. Saved lists carry over as audiences (aud_) in the same organisation, with their current counts. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

list_audiencesList saved audiences
Read-onlyIdempotent
Inspect

Lists the organisation's saved audiences with their current counts and last refresh, newest first, optionally filtered by name. Use it to find an aud_ id to count, quote or share. Free; it needs audiences:read. Pass an aud_ id to count_audience for a fresh count. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
qNoFilter by name.
limitNoItems per page, 1 to 100. Default 25.
cursorNoAn opaque cursor from next_cursor. Pass it back unchanged.

Output Schema

NameRequiredDescription
dataYes
has_moreYesWhether another page follows.
next_cursorYesPass as cursor to fetch the next page; null on the last page.
list_field_setsList field sets
Read-onlyIdempotent
Inspect

Lists the field sets an order can deliver, such as standard or standard_telephone, with their exact columns. Every field set costs 1 credit a record, with no telephone, download or API surcharge. Use it to pick the field_set for quote_order; it is free and needs no account. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
limitNoItems per page, 1 to 100. Default 25.
cursorNoAn opaque cursor from next_cursor. Pass it back unchanged.

Output Schema

NameRequiredDescription
dataYes
has_moreYesWhether another page follows.
next_cursorYesPass as cursor to fetch the next page; null on the last page.
list_filtersFilter catalogue
Read-onlyIdempotent
Inspect

Lists every filterable field of the audience definition (mydatahub.audience/1) with its group, type, operators, value count and default, plus the datasets. Use it first to learn field names such as company.employee_band or site.town before building an audience by hand. Free and needs no account; the same catalogue is the mydatahub://catalogue resource. Call search_filter_values to find the codes for one field. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
datasetNoThe dataset an audience draws from. uk_contacts is live; ie_contacts and global_contacts are listed but not yet served.

Output Schema

NameRequiredDescription
fieldsYes
datasetYesThe dataset an audience draws from. uk_contacts is live; ie_contacts and global_contacts are listed but not yet served.
datasetsYes
operatorsYes
dataset_versionYesThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.
lookup_companyLook up a company
Read-onlyIdempotent
Inspect

Looks up one company by Companies House number, domain or name and returns its Companies House fields and compliance facts, and for a signed-in caller the contacts held there by job level. It returns no contact details: use enrich_contact for one known person, or count_audience for everyone at the company. Free and needs no account, though the contacts held are a single company count that needs an account (null when signed out). Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
nameNo
townNoNarrows a name search.
domainNo
company_numberNoEight characters in upper case, such as 05046417 or SC123456.

Output Schema

NameRequiredDescription
companyYes
complianceYes
disclosureYes
contacts_heldYesContacts we hold at the company: a single-company count, so signed-in callers only (null otherwise) and logged. Trial callers see it rounded.
credits_chargedYes
dataset_versionYesThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.
match_confidenceYes
contacts_by_levelYesThe same count by job level, most senior first, with Level not known last; null when signed out.
preview_recordsPreview sample records
Read-onlyIdempotent
Inspect

Returns up to 25 masked sample rows (10 by default) for an audience or a count id, each with verification badges, why it matches and a provenance card. Use it after count_audience to show the user what the records look like before quoting. Free: emails and phones are masked on the server, a repeat returns the same rows, and no rows come back when the count is under 25. Call quote_order next to price the records. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
limitNoRows to return, 1 to 25. Default 10.
shuffleNoDraw a new seed. Counts against your rate budget and is logged. Default false, so a repeat returns the same rows.
audienceNo
count_idNoA count id instead of an audience.

Output Schema

NameRequiredDescription
idYesFormat: a preview id: prv_ followed by a 26 character ULID in upper case Crockford base32, such as prv_01JB4H3M7Q2V7XN3M9R6T1Y5W8.
rowsYes
seedYesThe seed the rows came from; the same audience gives the same seed.
countYesThe count the rows were drawn from, rounded as disclosure says.
maskedYes
count_idYesFormat: a count id: cnt_ followed by 20 base32 characters (A to Z and 2 to 7), such as cnt_7K2PQ4MAXN3R6TBY5WDZ.
withheldYesRows held back: all of them when the count is under 25, or rows whose title fewer than 10 people hold.
watermarkYesThe account id watermarked into sample CSVs; null when signed out.
created_atYes
disclosureYes
dataset_versionYesThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.
push_to_crmPush an order to a CRM
Idempotent
Inspect

Pushes an order's records to a connected CRM such as HubSpot or Salesforce, keyed on mydatahub_record_id, as record operations only: nothing is ever sent to the contacts. dry_run defaults to true and reports what would be created, updated or skipped; a live push needs the user's confirmation or an agent key allowed push_to_crm on that connection, or it returns confirmation-required. Free; it needs pushes:write and a connection made in the app. Show the dry run to the user before a live push. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
dry_runNoDefault true: report what would change without writing. A live push needs approval: a person's confirmation, or an agent key allowed push_to_crm on this connection.
order_idYesThe order whose records to push.
connection_idYesFormat: a CRM connection id: conn_ followed by a 26 character ULID in upper case Crockford base32, such as conn_01JB3Y2X6Y7Z8A1B2C3D4E5F6G.
update_existingNoUpdate records already in the CRM, matched on mydatahub_record_id. Default true.
confirmation_tokenNoThe token the approval page on mydatahub.emailmovers.com returns once the signed-in person approves. It is bound to that person (their sub), this spend (the machine quote_id, or the enrichment or push) and an expiry no later than the quote's, and it is redeemable once.

Output Schema

NameRequiredDescription
idYesFormat: a CRM push id: psh_ followed by a 26 character ULID in upper case Crockford base32, such as psh_01JB4NC3W2X6Y7Z8A1B2C3D4E5.
errorsYes
sampleYesOn a dry run: the property group the first record would carry.
statusYes
dry_runYes
summaryYes
order_idYesFormat: an order id: ord_ followed by a 26 character ULID in upper case Crockford base32, such as ord_01JB4N9S3W2X6Y7Z8A1B2C3D4E.
created_atYes
completed_atYes
connection_idYesFormat: a CRM connection id: conn_ followed by a 26 character ULID in upper case Crockford base32, such as conn_01JB3Y2X6Y7Z8A1B2C3D4E5F6G.
property_groupYesThe MyDataHub property group written on every record (CrmPropertyGroup).
quote_orderQuote an order
Read-onlyIdempotent
Inspect

Creates a machine quote for a count: the records you would receive after removing ones already held and suppressed, the credits and GBP price, the licence, the warranty and any blockers. The quote_id lasts 24 hours and is bound to the dataset version; it is not a human sales quote, which is a 14 day PDF made in the app. Free and needs no account, and nothing is charged. Show the credits and price to the user, then call create_order with the quote_id. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
limitNoRecords to buy; left out, the whole count.
licenceNomulti_use_12m (12 month multi-use, every plan) or outright (1.8 credits a record, proposed).multi_use_12m
count_idYesA count id from POST /v1/counts or count_audience. Either case is accepted; responses use upper case.
field_setYesA field set id from GET /v1/field-sets, such as standard.
connection_idNoThe CRM connection to check, only with dedupe_against crm or previous_orders_and_crm.
dedupe_againstNoRemove records you already hold: from earlier orders, from a connected CRM, or both. Default previous_orders when signed in. crm and previous_orders_and_crm need connection_id.previous_orders

Output Schema

NameRequiredDescription
idYesFormat: a quote id: qte_ followed by a 26 character ULID in upper case Crockford base32, such as qte_01JB4M2R6T1Y5W8ZAK8Q2V7XN3.
kindYes
datasetNoThe dataset an audience draws from. uk_contacts is live; ie_contacts and global_contacts are listed but not yet served.
licenceYes
recordsYesRecords after overlap and suppression; what you would receive.
removedYesRecords left out and never charged.
blockersYes
count_idYesThe count the quote was priced from.
purchaseYes
warrantyYes
field_setNo
signatureYes
created_atNo
expires_atYes24 hours after creation.
gbp_ex_vatYesWhat credits_required cost bought the cheapest way, at the per-contact scale or with credit packs, excluding VAT. The same for every caller; purchase says what this caller needs to buy.
balance_afterYescredits_available less credits_required; negative means a top-up is needed; null when signed out.
dataset_versionYesThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.
organisation_idYesThe organisation the quote belongs to; create_order settles it only there. null for a quote made without an account, which the first organisation to confirm it takes.
credits_requiredYesrecords times credits_per_record (creditsFor).
credits_availableYesYour balance; null when signed out.
credits_per_recordYes1 for a complete UK record; 1.8 outright (proposed).
report_objectionReport an objection
Idempotent
Inspect

Records an objection to direct marketing for one record, by record id or email hash. Scope licensee suppresses it for your organisation at once; scope emailmovers suppresses it database-wide within one working day and tells every licensee holding it. Free; it needs suppressions:write, and repeating the same objection returns the same suppression. Call it whenever a contact objects, in any channel. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
noteNo
scopeYeslicensee suppresses the record for your organisation at once; emailmovers suppresses it database-wide within one working day.
channelYes
record_idNoFormat: a contact id: contact_ followed by a 26 character ULID in upper case Crockford base32, such as contact_01JA9X2V7XN3M9R6T1Y5W8ZAK8.
received_atYesRFC 3339 date and time, with Z or an offset such as +01:00.
email_sha256NoSHA-256 of the trimmed, lower cased address, when the record id is not known.

Output Schema

NameRequiredDescription
scopeYes
statusYessuppressed now, or pending until the database-wide overlay applies.
record_idYes
effective_byYes
suppressed_atYes
suppression_idYesThe list the record now sits on.
resolve_locationResolve a location
Read-onlyIdempotent
Inspect

Turns free text such as 20 miles of Leeds, Yorkshire or LS1 into region, county, town, postcode or radius filters, each with a count and a ready filter. Ambiguous places come back as candidates with a question, so ask the user which they meant rather than choosing. Free and needs no account, though a radius under 5 miles needs an account. Add the chosen filter to the audience, then call count_audience. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
textYesFree text such as "20 miles of Leeds", "Yorkshire" or "SW1".
datasetNoThe dataset an audience draws from. uk_contacts is live; ie_contacts and global_contacts are listed but not yet served.
radius_milesNo

Output Schema

NameRequiredDescription
textYes
questionYes
ambiguousYesTrue when more than one candidate fits; ask the person which they meant.
candidatesYes
disclosureYes
save_audienceSave an audience
Idempotent
Inspect

Saves an audience definition under a name, shared across the organisation, or updates a saved one when audience_id is given. Use it when the user wants to keep, share or recount a list later; saving is free and needs audiences:write. Repeating the same call returns the same saved audience. Call list_audiences to find it again, or count_audience with its aud_ id. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
nameNo
briefNo
audienceNo
audience_idNoA saved audience to update. Leave it out to save a new one.

Output Schema

NameRequiredDescription
idYesFormat: an audience id: aud_ followed by a 26 character ULID in upper case Crockford base32, such as aud_01JB4H2K9V6XN3M9R6T1Y5W8ZA.
urlYesThe audience in the app, mydatahub.emailmovers.com/audiences/{id}.
nameYes
briefYesThe brief it was compiled from, if any.
audienceYes
created_atYes
created_byYesFormat: a user id: usr_ followed by a 26 character ULID in upper case Crockford base32, such as usr_01JA0Q3V7XN3M9R6T1Y5W8ZAK8.
updated_atYes
current_countYes
last_refreshed_atYes
save_selectionsDeprecated: save an audience
Idempotent
Inspect

Deprecated: saves the filters held in the server session under a name. Use save_audience instead. It saves an audience definition shared across the organisation; saved lists carry over as audiences (aud_). It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

search_discrete_valuesDeprecated: search filter values
Read-onlyIdempotent
Inspect

Deprecated: searches the values of one filter category. Use search_filter_values instead. It returns codes with counts and did_you_mean for near misses. It stops working 12 months after the new tools launch, after three emailed notices; https://emailmovers.com/mydatahub/docs/migrate maps every call. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

search_filter_valuesSearch filter values
Read-onlyIdempotent
Inspect

Searches the values of one field by text, such as towns matching leeds, and returns each code with its contact and company counts plus did_you_mean for near misses. Use the returned code in a filter rather than guessing one. Free and needs no account; results are paged with next_cursor. Call count_audience once the filters are chosen. Lawful basis is UK GDPR Article 6(1)(f) legitimate interests; email audiences include corporate subscribers only by default (PECR), so sole traders and ordinary partnerships are left out unless the toggle is changed.

NameRequiredDescriptionDefault
qNoText to search for.
limitNoItems per page, 1 to 100. Default 25.
cursorNoAn opaque cursor from next_cursor. Pass it back unchanged.
datasetNoThe dataset an audience draws from. uk_contacts is live; ie_contacts and global_contacts are listed but not yet served.
dimensionYesA field name from list_filters, such as site.town or company.sic_2007.

Output Schema

NameRequiredDescription
dataYes
fieldYes
has_moreYes
disclosureYes
next_cursorYes
did_you_meanNo
dataset_versionYesThe immutable weekly build a count is bound to, such as 2026-W39. The last 52 stay queryable.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 34 tool updates
    • First observedavailable_selection_categories
    • First observedavailable_selection_values
    • First observedcheck_suppression
    • First observedclear_search
    • First observedcompile_audience
    • First observedcount_audience
    • First observedcreate_data_extract
    • First observedcreate_order
    • First observedcreate_search
    • First observedenrich_contact
    • First observedexpand_job_titles
    • First observedfetch_order_records
    • First observedget_account
    • First observedget_compliance_receipt
    • First observedget_count
    • First observedget_credits
    • First observedget_order
    • First observedget_pack_details
    • First observedget_packs
    • First observedget_plans
    • First observedget_saved_selections
    • First observedlist_audiences
    • First observedlist_field_sets
    • First observedlist_filters
    • First observedlookup_company
    • First observedpreview_records
    • First observedpush_to_crm
    • First observedquote_order
    • First observedreport_objection
    • First observedresolve_location
    • First observedsave_audience
    • First observedsave_selections
    • First observedsearch_discrete_values
    • First observedsearch_filter_values

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables MCP clients to look up, search, compare, and monitor UK companies using Companies House register data and iXBRL accounts, including financial history, risk signals, market statistics, lead-generation triggers, and watchlist alerts.
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Turns open places data into AI-assisted local market intelligence, enabling search of 4.4 million UK places by category, location, and proximity, and saving promising results to a prospecting pipeline.
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Real-time B2B company firmographics, headcount tier, ARR estimate, tech stack adoption, and verified C-Level executive contact emails for AI SDRs and sales automation.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources