Skip to main content
Glama
alexanderskorokhodov

remote-mcp-linkedin

README.md
# remote-mcp-linkedin

Read-only MCP server for collecting visible LinkedIn profile, post, and
contact-network data and turning profile data into structured dossiers. It uses
a local browser bridge, so the browser session stays on the user's machine.

## What it does

- Opens visible LinkedIn profile pages through a local browser bridge
- Extracts basic public / visible profile data
- Collects visible profile posts from `/recent-activity/all/`
- Searches visible people/contact-network results, defaulting to 1st-degree contacts
- Builds a structured dossier for AI agents
- Exposes the result through MCP tools

## MCP tools

- `linkedin_profile_get` - returns normalized visible profile data
- `linkedin_profile_posts` - returns visible posts from a profile activity page
- `linkedin_contact_network_search` - returns visible people-search/contact results
- `linkedin_profile_dossier` - returns a structured profile dossier with evidence, gaps, warnings, and confidence

## Safety

- Read-only by design
- No messages, likes, comments, connection requests, or job actions
- No cookies or browser session data are exported
- The browser runs locally

## Quickstart

```bash
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e ".[dev]"
export REMOTE_MCP_LINKEDIN_BRIDGE_TOKEN="replace-with-a-long-random-token"
remote-mcp-linkedin-server
remote-mcp-linkedin-bridge
```

## Status

Small prototype.

Working:

- MCP server
- local bridge
- profile data tool
- profile posts tool
- contact network search tool
- dossier tool
- JSON result storage

Not ready:

- robust LinkedIn parser
- production extraction
- advanced profile analysis

## License

MIT

TDQS

B3.1/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: one produces a structured dossier, the other returns raw profile sections. There is no ambiguity about which to use for a given task.

Naming Consistency3/5

Both tools share the 'linkedin_profile_' prefix, but one uses a noun ('dossier') and the other a verb ('get'), which is inconsistent. A consistent verb-noun pattern would be clearer.

Tool Count3/5

With only two tools, the server feels thin for a platform as broad as LinkedIn. However, the tools are well-focused on profile data, so the count is borderline reasonable for that narrow scope.

Completeness2/5

The server covers only profile retrieval in two formats, missing many common LinkedIn operations like searching, messaging, or managing connections. This is a significant gap for general LinkedIn usage.

Maintenance

ActivityInactive
ResponsivenessNo issues