AgentData
Free company data for AI agents: profiles, tech stacks, contact details and people. No sign-in.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"agentdata": {
"url": "https://mcp.agentdata.run/mcp"
}
}
}Remote endpoints
https://mcp.agentdata.run/mcpstreamable-httpWhat it can do
Tool inventory
Tools (6)
🟢lookup_company(domain)
Use this when the user asks about one specific company and you know its website domain, for example to research an account before a call: what it does, sector and business model, headquarters where known, the tools and technologies it runs (each with how it was detected and when it was first and last seen), and web signals (pricing page, free trial, API docs, careers). Without an API key it returns everything the public company page shows to a visitor who is not signed in: company facts (employees, funding stage, founded, headquarters, sales motion, tech sophistication), the email format (for example {first}.{last}@domain), general inboxes such as info@ and sales@, address and phone where listed, how many email addresses and people were found, the top people's titles, seniority and LinkedIn URLs (not names), recent activity, recent tool changes and similar companies. Personal email addresses and names need an API key; for names at a company use find_people with its domain. A domain not profiled yet is crawled on request: the reply says when to retry, usually within a few minutes, and nothing is charged. Do not use it to find a company by name; use search_companies to get the domain first.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Bare domain, e.g. stripe.com (no https://, no path)"
}
},
"required": [
"domain"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢search_companies(query, sector, vertical, size, b2b, ...)
Use this to find a company by name or part of its domain (query), or to build a list of companies by sector, business model, B2B or B2C, technology used or headquarters country. Returns up to 20 company summaries per page, with how many email addresses were found for each. Use lookup_company for one company's full record, and get_technologies to page through every company using one tool. Works without an API key; no contact reveals.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Company name or domain fragment, e.g. 'notion' or 'stripe.com'. Used on its own; filters below are ignored when set.",
"type": "string"
},
"sector": {
"description": "Industry sector, exact label from the list",
"type": "string",
"enum": [
"Software & SaaS",
"Developer Tools & Infrastructure",
"Data & AI",
"Marketing & Sales Tech",
"Financial Services & Fintech",
"E-commerce & Retail",
"Healthcare & Life Sciences",
"Education & Learning",
"Professional Services",
"HR & People Tech",
"Media & Content",
"Operations & Logistics",
"Hospitality & Travel",
"Cybersecurity",
"Other"
]
},
"vertical": {
"description": "Vertical inside the sector, free text as stored, e.g. 'B2B SaaS'",
"type": "string"
},
"size": {
"description": "Estimate, not headcount: a band by how many people and addresses we found on the company's own website: micro (1-5), small (6-20), medium (21-60), large (61+). Large companies often publish few, so do not use it to exclude them.",
"type": "string",
"enum": [
"micro",
"small",
"medium",
"large"
]
},
"b2b": {
"description": "b2b, b2c or both",
"type": "string",
"enum": [
"b2b",
"b2c",
"both"
]
},
"model": {
"description": "Business model",
"type": "string",
"enum": [
"saas",
"marketplace",
"agency",
"service",
"ecommerce",
"other"
]
},
"tech": {
"description": "Technology name as detected, e.g. 'Intercom', 'HubSpot', 'Shopify'",
"type": "string"
},
"country": {
"description": "Headquarters country, ISO-2 code such as US or GB",
"type": "string"
},
"page": {
"description": "Page number, 20 companies per page",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢find_people(domain, q, title, seniority, department, ...)
Use this when the user wants people at a company or in a role: names, job titles, seniority, department and LinkedIn URLs found on company team, about and author pages. Filter by company domain, name, title, seniority, department, sector or B2B/B2C. Without an API key it returns what the public people directory shows to a visitor who is not signed in: the first 20 matches, with the last 5 withheld, and no email addresses. Narrow the filters (for example a domain plus a title) to get the right people into that first page.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"description": "Only people at this company domain, e.g. stripe.com",
"type": "string"
},
"q": {
"description": "Name search",
"type": "string"
},
"title": {
"description": "Title contains, e.g. 'CTO', 'Head of Sales'",
"type": "string"
},
"seniority": {
"description": "founder, executive, senior, mid or junior",
"type": "string",
"enum": [
"founder",
"executive",
"senior",
"mid",
"junior"
]
},
"department": {
"type": "string",
"enum": [
"engineering",
"product",
"design",
"marketing",
"sales",
"customer_success",
"support",
"operations",
"finance",
"legal",
"people",
"data",
"security"
]
},
"has_email": {
"description": "Only people with an email address found (the address itself needs an API key)",
"type": "boolean"
},
"has_linkedin": {
"description": "Only people with a LinkedIn URL",
"type": "boolean"
},
"sector": {
"description": "Industry sector, exact label from the list",
"type": "string",
"enum": [
"Software & SaaS",
"Developer Tools & Infrastructure",
"Data & AI",
"Marketing & Sales Tech",
"Financial Services & Fintech",
"E-commerce & Retail",
"Healthcare & Life Sciences",
"Education & Learning",
"Professional Services",
"HR & People Tech",
"Media & Content",
"Operations & Logistics",
"Hospitality & Travel",
"Cybersecurity",
"Other"
]
},
"b2b_b2c": {
"description": "b2b, b2c or both",
"type": "string",
"enum": [
"b2b",
"b2c",
"both"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_technologies(slug, page, limit)
Use this when the user asks which companies use a particular technology (for example Intercom, Zendesk, HubSpot, Shopify, Stripe), or which technologies are most used. With a slug: companies detected using that technology, 20 per page. company_count is every company detected using it; listed_count is how many the list can page through, so stop at page ceil(listed_count / 20). Without a slug: the technology index, most-used first, with company counts (default 100, up to 1,000). Slugs are lower-case with hyphens, e.g. intercom, hubspot, google-analytics, shopify. Works without an API key; no contact reveals.
Input Schema
{
"type": "object",
"properties": {
"slug": {
"description": "Technology slug, e.g. intercom",
"type": "string"
},
"page": {
"description": "Page of companies when a slug is given",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"description": "Index size when no slug is given, default 100",
"type": "integer",
"minimum": 1,
"maximum": 1000
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_signals(type, moved_from, moved_to, days, sector, ...)
Use this when the user asks which companies recently started, stopped or switched using a technology, for example companies that left Intercom or adopted HubSpot: set moved_from or moved_to. Also covers growth and hiring changes. Newest first. Changes are recorded as each site is re-crawled, so an empty result means none recorded yet, not that none happened. Works without an API key; no contact reveals.
Input Schema
{
"type": "object",
"properties": {
"type": {
"description": "Signal type; omit for all technology signals",
"type": "string",
"enum": [
"tool_added",
"tool_removed",
"tool_switched",
"employee_growth",
"employee_decline",
"hiring_surge",
"hiring_stopped",
"name_changed"
]
},
"moved_from": {
"description": "Technology the company dropped, e.g. 'Zendesk'",
"type": "string"
},
"moved_to": {
"description": "Technology the company adopted, e.g. 'HubSpot'",
"type": "string"
},
"days": {
"description": "Only signals detected in the last N days",
"type": "integer",
"minimum": 1,
"maximum": 365
},
"sector": {
"description": "Industry sector, exact label from the list",
"type": "string",
"enum": [
"Software & SaaS",
"Developer Tools & Infrastructure",
"Data & AI",
"Marketing & Sales Tech",
"Financial Services & Fintech",
"E-commerce & Retail",
"Healthcare & Life Sciences",
"Education & Learning",
"Professional Services",
"HR & People Tech",
"Media & Content",
"Operations & Logistics",
"Hospitality & Travel",
"Cybersecurity",
"Other"
]
},
"size": {
"description": "Estimate, not headcount: a band by how many people and addresses we found on the company's own website: micro (1-5), small (6-20), medium (21-60), large (61+). Large companies often publish few, so do not use it to exclude them.",
"type": "string",
"enum": [
"micro",
"small",
"medium",
"large"
]
},
"b2b_b2c": {
"description": "b2b, b2c or both",
"type": "string",
"enum": [
"b2b",
"b2c",
"both"
]
},
"limit": {
"description": "Results per page, default 20",
"type": "integer",
"minimum": 1,
"maximum": 100
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢check_usage
Use this before a large task to see how much of today's allowance is left: requests in the current 5-hour window, distinct companies today and, with an API key, contact reveals. Free and not counted.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence