Skip to content
Company ProfilesOpen workspace

FOR DEVELOPERS & AGENTS

Company data
through API and MCP.

Free company intelligence during beta. No signup or access token required.

Open the workspace ↗

01 / Get company context

Select the modules you need. Reads use saved data and never start research.

curl 'https://companyprofiles.dev/api/v1/companies/alchemy.com?include=summary,products'

Every company response includes company.logo_url, a PNG image URL you can use in your app. Logo availability varies by company.

Modules: summary, products, feedback, ads, marketing, activity, brand. Collections default to 20 items per module. Use limit (1–100) and offset; each module includes its own total and next offset.

Brand colors & fonts

Request include=brand to get modules.brand.data.colors and typography. Colors include HEX values, observed roles, and source URLs. Fonts include heading/body roles, family names, weights, and system fallback stacks.

curl 'https://companyprofiles.dev/api/v1/companies/ramp.com?include=brand'

Use colors[].hex for a swatch and typography[].fallbackStack for portable text. Load the original typeface only when you have permission and a compatible font asset. Font source URLs are evidence, not a hosted-font service or a reuse license. Fallbacks approximate typography rather than reproduce it.

These are observed website styles, not verified official brand guidelines. Coverage varies: partial means some styles were found, unavailable means collection found no usable styles, and not_collected means enrichment has not run. Brand data has its own observation date and is not paginated.

02 / Enrich a customer list

curl 'https://companyprofiles.dev/api/v1/enrich'   -H 'Content-Type: application/json'   -d '{"domains":["alchemy.com","altruist.com"],"include":["summary","products"]}'

Up to 25 domains and 2 KB per request. Results are returned individually as ready, not_indexed, or invalid. A missing company never triggers a paid scan. Batches are limited to 10 per minute per IP.

03 / Put a company profile in your app

Use the lightweight web component for a sourced summary and product preview. The component reads the public API. No signup or token is required.

<script type="module"
  src="https://companyprofiles.dev/assets/company-profile.js"></script>
<company-profile domain="alchemy.com"></company-profile>

Open a live component preview ↗

For a custom UI, use the JSON API. Allow this origin in your Content Security Policy for scripts and connections, and styles, or style your own JSON integration. Beta access does not grant rights to third-party assets.

04 / Give your agent context

Connect a Streamable HTTP MCP client to:

https://companyprofiles.dev/mcp

Use get_company_context with a company domain and optional include, limit, and offset. Existing search_companies and get_company_page tools remain available. Connect directly; no signup, bearer token, or OAuth is required.

{ "company": "alchemy.com",
  "include": ["summary", "products", "ads"] }

Response fields and limits

Each response includes schema_version, company identity, selected modules, source references, and delivery metadata. Module statuses are available, no_results, or not_collected; brand also supports partial and unavailable. Availability is not a completeness guarantee; read the accompanying coverage limitations.

Module collection dates are separate from the profile’s update time. Review discoveries are excluded from collected feedback. Ads are observations, not spend estimates. Missing logos may return 404; the component falls back to an initial.

Errors: 400 invalid input, 404 no saved company, 413 oversized batch, 429 rate limit. Company reads allow 120 requests per minute per IP. All available features are free during beta. No signup or token is required. Scheduled monitoring and webhooks are not currently available.