Team Page People Extractor MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Team Page People Extractor MCP Serverextract leadership team from acme.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Team Page People Extractor MCP Server
MCP server for the Mamba Labs Team Page People Extractor actor on Apify.
Give it a company domain and it returns the people that company publishes on its own team, leadership or about page: names, titles, and the page each one came from. Nothing here reads LinkedIn or any other profile network.
Install
npx -y @mambalabsdev/mcp-team-page-people-extractorClaude Desktop
{
"mcpServers": {
"mamba-team-page-people-extractor": {
"command": "npx",
"args": ["-y", "@mambalabsdev/mcp-team-page-people-extractor"],
"env": { "APIFY_TOKEN": "your-apify-token" }
}
}
}Get an Apify token at console.apify.com/account/integrations.
Related MCP server: Company Discovery List Builder MCP Server
Tool
extract_team_page_people
Give it a company domain and it returns the people that company publishes on its own team, leadership or about page: names, titles, and the page each one came from. Nothing here reads LinkedIn or any other profile network.
Input | Type | Required | Notes |
| string | yes | A single company domain, for example swishdata.com. Protocol and path are stripped. |
| enum | no | person returns one row per person, which is the default and what most Clay tables want. company returns one row per company with a people_json array plus the first five names and titles flattened into columns. |
| enum | no | all keeps everyone the page published. executive keeps founders and C-level only. leadership adds VPs, directors and heads. |
| string | no | Sent as a string so Clay can map a column into it. Clamped to 1 to 200. People are ordered by seniority before the cap applies, and anything dropped is logged with the count. |
| boolean | no | Off by default and you should probably leave it off. Across three domains that published an email on a team page we found one role mailbox, one placeholder in example content, and one literal user@domain.com template string. Not one was a real person's address. When on, emails come back on the COMPANY row only, never attached to a named person, because nothing on these pages proves which address belongs to whom. |
| enum | no | false uses the 14 day result cache. true re-crawls the company from scratch. |
Billing
You are charged per person found, plus a small actor start fee. A company that publishes nobody costs only the start fee.
Pricing is on the actor's Apify page. Running this server consumes Apify credits.
What this server does and does not do
It is a thin client for the Apify actor. It passes your input through and returns the actor's output unchanged. Every behavior described above lives in the actor, not here.
Errors are surfaced, never swallowed. An invalid input, an invalid token, an exhausted balance, a timeout, or a run that returns anything other than a dataset all come back as an explicit tool error rather than as an empty result.
Source
The actor is on the Apify Store. This wrapper is MIT licensed.
Built by Mamba Labs
Available Tools
1 toolextract_team_page_peopleExtract Team Page PeopleARead-onlyIdempotent
Extract the people a company publishes on its own team, leadership or about page, and return their names, titles and the page each one came from. It also reports which pages it actually reached, so an empty result tells you whether the company publishes nobody or whether the site could not be read, which are very different answers. output_grain person returns one row per person and is what most tables want; output_grain company returns one row per company with a people_json array plus the first five names and titles flattened into columns. seniority_filter narrows to founders and C level, or adds VPs, directors and heads. People are ordered by seniority before max_people applies, and anything dropped is logged with a count. include_emails is off by default and should usually stay off: across the domains tested, the addresses published on team pages were role mailboxes, placeholders and literal template strings rather than real people, so when it is on the emails come back on the company row only and are never attached to a named person. Results are cached for 14 days. Nothing here scrapes LinkedIn or any profile network; it reads only what the company published itself. Requires an APIFY_TOKEN and consumes Apify credits. Read only.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | A single company domain, for example swishdata.com. Protocol and path are stripped. | |
| skipCache | No | false uses the 14 day result cache. true re-crawls the company from scratch. Default: "false". | |
| max_people | No | Sent as a string so Clay can map a column into it. Clamped to 1 to 200. People are ordered by seniority before the cap applies, and anything dropped is logged with the count. Default: "50". | |
| output_grain | No | person returns one row per person, which is the default and what most Clay tables want. company returns one row per company with a people_json array plus the first five names and titles flattened into columns. Default: "person". | |
| include_emails | No | Off by default and you should probably leave it off. Across three domains that published an email on a team page we found one role mailbox, one placeholder in example content, and one literal user@domain.com template string. Not one was a real person's address. When on, emails come back on the COMPANY row only, never attached to a named person, because nothing on these pages proves which address belongs to whom. Default: false. | |
| seniority_filter | No | all keeps everyone the page published. executive keeps founders and C-level only. leadership adds VPs, directors and heads. Default: "all". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, openWorld), the description discloses caching behavior (14 days, skipCache flag), result ordering and logging when items are dropped, email quality caveats with concrete evidence, and explicitly states it reads only company-published content. These details affirm the safety profile and add operational nuance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long (twelve sentences) but each sentence conveys a distinct fact or guidance: output format, empty-result interpretation, grain behavior, filtering semantics, email caveats, caching, and scope boundary. It is well-structured and front-loaded with the primary purpose, with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by explaining return values (names, titles, page, reached pages, people_json array), edge cases (empty results), parameter trade-offs (emails on company row only), and the operational context (cache, credits, exclusions). This is a fully self-contained explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter already has detailed explanations. The description mostly reiterates schema content (e.g., output_grain flattening, seniority ordering) with minor additions like 'what most tables want'. Since it adds little beyond the schema, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Extract the people a company publishes on its own team, leadership or about page, and return their names, titles and the page each one came from' – a specific verb and resource with a clear output. It also explicitly distinguishes itself from LinkedIn scraping, leaving no ambiguity about the tool's scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit recommendations: 'output_grain person ... is what most tables want', 'include_emails is off by default and should usually stay off', and 'Nothing here scrapes LinkedIn or any profile network'. It also clarifies prerequisites (APIFY_TOKEN, Apify credits) and how to interpret empty results, giving the agent a complete decision framework.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v1.0.0- First observed
extract_team_page_people
TDQS
With only a single tool, there is no possibility of selecting the wrong tool. The tool's purpose is clearly defined and distinct.
The single tool name 'extract_team_page_people' follows a clear verb_noun pattern and is descriptive. No other tool names exist to create inconsistency.
The server offers just one tool, which is at the lower end of the scale. However, the tool is highly configurable and the server's purpose is narrowly scoped, so the count feels appropriate rather than deficient.
The tool covers all aspects of its stated purpose: extracting people, handling empty results, filtering by seniority, and optional email extraction. There are no apparent missing operations for the read-only domain.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Find decision makers at any company: name, job title and LinkedIn profile URL. No login needed.
Search LinkedIn & Sales Navigator. Get structured people, companies, posts, jobs data. 4.9/5 on G2.
Stealth scraping & search. Bypasses Cloudflare, DataDome & LinkedIn via Cyborg HITL approach.
Extract data from any website with thousands of scrapers, crawlers, and automations on Apify Store ⚡
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI clients to analyze any company domain and determine its AI maturity tier (commercialized, deployed, declared, or none) with supporting evidence, via a single tool backed by an Apify actor.1158MIT
- AlicenseAqualityBmaintenanceEnables building targeted company lists from live job boards or SEC filings via the Apify actor, supporting role keywords, locations, and filing phrases.185MIT
- AlicenseAqualityBmaintenanceEnables B2B lead generation through Apify's Prospect Engine actor, supporting company enrichment, job discovery, contact finding, and full ICP-gated outreach workflows.185MIT
- AlicenseAqualityBmaintenanceMCP server for the Mamba Labs People Finder & Email Verifier actor on Apify. Give it a company domain, name or LinkedIn URL and it returns the people at that company who match your role, seniority and department filters, each as a structured contact record with an optional verified business email.195MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mambalabsdev/mcp-team-page-people-extractor'
If you have feedback or need assistance with the MCP directory API, please join our Discord server