LinkedIn MCP Zero
LinkedIn MCP Zero is a public-first MCP server offering 35 tools for LinkedIn job intelligence, resume analysis, company research, and opt-in read-only browser automation — no login required for core functionality.
Job Search & Discovery (no login required)
Search jobs by keyword, location, experience level, job type, and remote filter; advanced search adds company name and sort order
Multi-board job search with LinkedIn as fallback
Retrieve full job details, company-specific listings, company profiles, salary data, hiring trends, and industry market insights
Resume & Job Matching (local/offline)
Parse PDF/DOCX/text resumes locally
Get skill gap insights and improvement suggestions
Match and rank public job listings against a saved resume
Compare up to 5 jobs side-by-side
Export & Alerts
Export job listings to CSV, JSON, or XLSX
Save recurring job alerts (daily/weekly), list saved alerts, and check for new matches
Read-Only Browser Tools (opt-in) Requires Chrome with remote debugging and a logged-in LinkedIn session
View your own or others' LinkedIn profiles, search people by keyword/company/location
Access your connections list, inbox, conversation threads, home feed, notifications, and sidebar suggestions
Browse company employee pages and check browser/CDP session readiness
Gated Tool (disabled by default)
get_profile_voyager— private API profile access, off by default due to account risk
System & Utility Tools
Check engine/runtime status, track and reset token/usage statistics per tool, and access built-in help documentation
Safety: All browser tools are strictly read-only. No posting, liking, connecting, following, applying, or messaging is supported.
Click on "Deploy 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., "@LinkedIn MCP Zerosearch for remote data scientist jobs"
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.
██╗ ██╗███╗ ██╗██╗ ██╗███████╗██████╗ ██╗███╗ ██╗
██║ ██║████╗ ██║██║ ██╔╝██╔════╝██╔══██╗██║████╗ ██║
██║ ██║██╔██╗ ██║█████╔╝ █████╗ ██║ ██║██║██╔██╗ ██║
███████╗██║██║ ╚████║██║ ██╗███████╗██████╔╝██║██║ ╚████║
MCP ZERO - public-first LinkedIn intelligenceLinkedIn MCP Zero
A public-first MCP server for LinkedIn jobs, resumes, matching, alerts, exports, and opt-in read-only browser intelligence.
No Docker required · Claude Desktop ready · Claude Code ready · Low-RAM friendly · PyPI published
🎨 System Flow

🔌 Works With
✅ Claude Desktop (Fully verified)
✅ Claude Code (Fully verified)
✅ Cursor (Fully verified)
✅ VS Code + Copilot (Fully verified)
✅ Cline / Roo Code (Fully verified)
✅ Any standard Stdio/HTTP MCP client
Related MCP server: LinkedIn MCP
📊 Feature Comparison
Compare LinkedIn MCP Zero against the next most popular alternatives:
Feature | stickerdaniel (2.3k★) | Other MCP Servers | LinkedIn MCP Zero (10/10) |
Zero-Login Public Tools | ❌ None | ⚠️ 0-2 tools | ✅ 30+ Public Tools |
Semantic AI Resume Matching | ❌ None | ❌ None | ✅ Yes (TF-IDF & LLM-guided) |
Local DOCX/PDF Parsing | ❌ None | ❌ None | ✅ Yes (Docling & PyMuPDF) |
Iterative Progress Reporting | ❌ None | ❌ None | ✅ Yes (MCP |
Wired OpenTelemetry Traces | ❌ None | ❌ None | ✅ Yes (Batch OTel Tracing) |
Enterprise OAuth 2.1 Security | ❌ None | ❌ None | ✅ Yes (Remote Introspection Middleware) |
One-Click Diagnostic CLI | ❌ None | ❌ None | ✅ Yes ( |
Interactive CLI setup | ❌ None | ❌ None | ✅ Yes (Automated Configurator) |
Zero-Configuration Setup | ❌ None | ⚠️ Complex docker | ✅ Yes (Pure Python / uvx direct) |
Install In One Command
Client | Command |
Claude Desktop |
|
Claude Code |
|
Cursor |
|
VS Code |
|
Any stdio client |
|
uvx linkedin-mcp-zero --doctorVerify after install:
uvx --refresh-package linkedin-mcp-zero linkedin-mcp-zero --verify-client claude-desktopBrowser mode:
uvx --refresh-package linkedin-mcp-zero linkedin-mcp-zero --install-client claude-desktop --with-extra browserTool Inventory
Default Tools: 30 Working
These work without LinkedIn login or browser setup.
# | Tool | Feature | Risk |
1 |
| Search public LinkedIn jobs | Public no-login |
2 |
| Multi-board search; LinkedIn fallback by default | Public no-login |
3 |
| Full public job details | Public no-login |
4 |
| Public jobs for a company | Public no-login |
5 |
| Company signals inferred from public jobs | Public no-login |
6 |
| Company discovery from public job data | Public no-login |
7 |
| Salary extraction from job detail pages | Public no-login |
8 |
| Role/location hiring trends | Public no-login |
9 |
| Market signals for an industry | Public no-login |
10 |
| Job search with filters | Public no-login |
11 |
| Local PDF/DOCX/text resume parsing | Local |
12 |
| Local skill gaps and suggestions | Local |
13 |
| Rank public jobs against a resume | Local/public |
14 |
| Compare selected jobs | Local/public |
15 |
| Export jobs to CSV/JSON/XLSX | Local |
16 |
| Save a recurring search | Local |
17 |
| List saved searches | Local |
18 |
| Run alerts and find new matches | Local/public |
19 |
| Runtime, engine, token, cache status | Local |
20 |
| Tool documentation | Local |
21 |
| Local response-size/token estimates | Local |
22 |
| Aggregate local usage by tool | Local |
23 |
| Clear local usage metrics | Local |
24 |
| AI-powered job matching using client LLM | Local/public |
25 |
| Tailored cover letter using client LLM | Local/public |
26 |
| AI-powered salary analysis using client LLM | Local/public |
27 |
| Interactive job search preferences | Local/public |
28 |
| Export jobs with user confirmation | Local |
29 |
| Advanced AI-powered resume insights | Local |
30 |
| Full industry analysis with progress updates | Local/public |
Browser Tools: +11
Enable with --with-extra browser or --enable-browser. These are read-only,
but they use your logged-in browser session.
# | Tool | Feature |
31 |
| Read your profile |
32 |
| Read a public/person profile page |
33 |
| People search through browser |
34 |
| Read your connection list |
35 |
| Recent conversations list |
36 |
| Read a conversation thread |
37 |
| Read home feed posts |
38 |
| Read notifications |
39 |
| Suggested/sidebar profiles |
40 |
| Company people page |
41 |
| Check CDP/login readiness |
Gated Private-Risk Tool: +1
# | Tool | Feature |
42 |
| Voyager/private API placeholder, disabled by default |
Default mode exposes 30 usable tools: 29 core local/public tools plus
search_jobs_multi, which falls back to LinkedIn-only results unless the
multi extra is installed. Browser tools appear only with --enable-browser or
--with-extra browser in an installed client config. Voyager/private API mode is
hidden unless explicitly enabled.
Tool counts:
Mode | Exposed Tools | Notes |
Default | 30 | Safe local/public tools; no LinkedIn login required |
Browser enabled | 41 | Adds 11 read-only browser tools; needs Chrome/CDP login |
Browser + Voyager | 42 | Adds gated private-API placeholder |
Safety Model
Mode | Label | Account Risk |
Local resume/alerts/exports |
| None |
Public no-login job data |
| No LinkedIn login required |
Browser tools |
| Opt-in account risk |
Voyager/private API |
| Disabled by default |
No tool posts, likes, connects, follows, applies, or sends messages.
Browser Mode
Install browser dependencies into the isolated uvx runtime:
uvx linkedin-mcp-zero --install-client claude-desktop --with-extra browserStart Chrome with remote debugging and log in manually:
google-chrome --remote-debugging-port=9222Then call check_session from your MCP client.
Global Playwright installs do not count for uvx; use --with-extra browser.
Token Usage Tracking
Claude Desktop has no built-in per-MCP token counter. This server provides a privacy-safe tracker instead:
Estimated tokens:
ceil(response_chars / 4), always on.Exact-style counts: optional Anthropic
/v1/messages/count_tokens.Full tool responses are not stored in the metrics database.
Exact-style counting sends the counted response text to Anthropic only when
ANTHROPIC_API_KEYandLINKEDIN_MCP_EXACT_TOKEN_COUNT=trueare both set.
Enable exact-style counting:
ANTHROPIC_API_KEY=sk-ant-... LINKEDIN_MCP_EXACT_TOKEN_COUNT=true uvx linkedin-mcp-zeroUse a different token-count model if needed:
LINKEDIN_MCP_TOKEN_COUNT_MODEL=claude-sonnet-4-5Usage tools:
get_usage_stats
get_tool_usage_summary
reset_usage_statsAvoid terminal transcript logging as a token strategy; it can expose private profile, inbox, resume, or job data.
Client Config
Print without editing files:
uvx linkedin-mcp-zero --print-config --client claude-desktop
uvx linkedin-mcp-zero --print-config --client vscodeClaude Desktop and Cursor use:
{
"mcpServers": {
"linkedin-zero": {
"command": "/absolute/path/to/uvx",
"args": ["linkedin-mcp-zero"]
}
}
}VS Code uses:
{
"servers": {
"linkedin-zero": {
"command": "/absolute/path/to/uvx",
"args": ["linkedin-mcp-zero"]
}
}
}Doctor
uvx linkedin-mcp-zero --doctor
uvx linkedin-mcp-zero --doctor --jsonChecks OS, Python, RAM, disk, Chrome, CDP URL, display state, optional extras, and recommended mode.
Development
uv sync --extra dev
uv run --extra dev ruff check .
uv run --extra dev pytest
uv buildPublish only the new version files:
UV_PUBLISH_TOKEN=... uv publish dist/linkedin_mcp_zero-0.3.2*Available Tools
32 toolsanalyze_resumeC
Parse resume PDF/DOCX/text locally.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description only mentions 'locally', but fails to disclose file size limits, processing behavior, or required permissions.
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?
Extremely concise but omits important details; conciseness is not earned when information is lacking.
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?
Despite output schema existing, description remains minimal and does not explain what parsing entails (e.g., text extraction, structured data).
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 coverage is 0% and description adds no meaning to the 'path' parameter (e.g., format, absolute/relative, supported extensions).
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 clearly states the action (parse), resource (resume), and formats (PDF/DOCX/text), and distinguishes from siblings like 'get_resume_insights'.
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?
No guidance on when to use this tool versus alternatives like 'match_jobs_to_resume' or 'get_resume_insights'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_saved_alertsC
Run saved alerts and report new matches.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry full behavioral disclosure. However, it only states a high-level action without explaining potential side effects (e.g., does it modify alert state?), permission requirements, rate limits, or whether matches are returned inline or as separate notifications.
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 extremely concise at six words, front-loading action and result. It earns a high score for brevity, but slightly loses because the brevity sacrifices necessary detail for a tool with undocumented parameters.
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?
The tool has one undocumented optional parameter and no behavioral annotations. Despite having an output schema (not shown), the description fails to clarify the input behavior or output structure. It is insufficiently complete for safe invocation.
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 0%, and the description does not mention the single 'ids' parameter. It adds no meaning beyond the schema's type definition, leaving the agent to guess whether null runs all alerts or a subset.
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 clearly states the tool's action ('run saved alerts') and outcome ('report new matches'), using specific verbs and a resource. It distinguishes from siblings like 'get_saved_alerts' and 'save_job_alert' by implying execution rather than listing or saving.
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?
No guidance on when to use this tool versus alternatives. There is no mention of prerequisites, scenarios, or when not to use it. The agent is left to infer usage from the tool name and sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_sessionA
Check CDP browser and LinkedIn session readiness.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It only says 'check readiness' without clarifying side effects, error behavior, or what happens if the session is not ready.
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 very short and front-loaded, making it easy to read. It could be slightly more descriptive without losing conciseness.
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?
An output schema exists but the description does not mention what the tool returns. While not required, the description could hint at the output structure to aid agent understanding.
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?
There are no parameters, so the schema is fully descriptive by default. The description adds no parameter details, which is acceptable given the baseline of 4 for zero parameters.
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 clearly states the tool checks CDP browser and LinkedIn session readiness, with a specific verb and resource. No sibling tool duplicates this function, so it's well-distinguished.
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?
No explicit guidance on when to use this tool versus alternatives. The purpose implies it should be used before other operations, but this is not stated, leaving ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_jobsC
Compare 2-5 public LinkedIn jobs.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the burden. It reveals the constraint of 2-5 jobs but does not disclose the comparison output format, behavior, or side effects.
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?
Very concise, one sentence, but lacks any structure. It could add more detail without losing conciseness.
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?
Despite having an output schema, the description gives no hint of the output format or what the comparison yields. Missing essential context for an agent to use effectively.
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 coverage is 0% and the description adds no meaning to the 'ids' parameter beyond its type. No explanation of how to obtain job IDs or expected format.
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 clearly states the verb 'compare' and the resource 'public LinkedIn jobs', and specifies the valid range of 2-5, distinguishing it from sibling tools like get_job_details or search_jobs.
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?
No guidance on when to use this tool versus alternatives like get_job_details for multiple jobs, or search_jobs to find jobs. Missing context on prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_jobsC
Export public job details to a local file.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | ||
| fmt | No | csv |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. It mentions 'export to local file' but does not disclose whether this modifies server state, authentication needs, file permissions, or format specifics. The 'fmt' option is in schema but not described.
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?
Extremely concise (8 words) but lacks necessary detail for usability. It is not verbose, but underspecification makes it less helpful.
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?
Despite simple schema (2 params) and presence of output schema, the description omits critical context: output format behavior, batch limits, error handling, or file overwrite behavior. Insufficient for reliable agent usage.
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 0%, but description adds no explanation for 'ids' (job IDs?) or 'fmt' (valid values beyond default). Does not clarify what 'public job details' includes for each parameter.
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 clearly states the verb (export) and resource (public job details) and indicates output (local file), but it does not distinguish this tool from sibling tools like 'get_job_details' or 'search_jobs' which might also provide job details.
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?
No guidance on when to use this tool versus alternatives (e.g., get_job_details for a single job, or search_jobs for filtering). No mention of prerequisites, file access implications, or use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_company_employeesC
Get company employees via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
| co | Yes | ||
| kw | No | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden of behavioral disclosure. It only states 'via CDP browser', which is ambiguous and does not clarify whether the tool requires authentication, is read-only, or has any side effects. The verb 'Get' implies a read operation, but this is not explicitly stated.
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 very short and front-loaded, but the single sentence is too terse and omits necessary details. It is concise but at the expense of completeness.
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?
Given the 0% schema coverage and no annotations, the description should provide more context. It does not explain the output, even though an output schema exists. The mention of 'CDP browser' is vague and unhelpful. The tool is not fully described for an agent to use effectively.
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?
The description adds no meaning to the parameters beyond the schema. The schema has 0% documentation coverage, and the description does not explain what 'co', 'kw', or 'limit' represent. For a tool with required parameters, this is a critical gap.
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 clearly states the action 'Get' and the resource 'company employees', and mentions the method 'via CDP browser'. It distinguishes from sibling tools like 'get_company_jobs' or 'get_company_profile', but does not explain how it differs from 'search_people', which could also return employees.
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?
No guidance is provided on when to use this tool versus alternatives such as 'search_people' or 'get_company_jobs'. There is no mention of prerequisites, limitations, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_company_jobsC
Get public jobs for a company.
| Name | Required | Description | Default |
|---|---|---|---|
| co | Yes | ||
| loc | No | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries full burden. It implies read-only but does not disclose pagination, filtering, authorization needs, or output behavior beyond the implied 'public' scope.
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?
Extremely short (one sentence) but not well-structured; lacks bullet points or any breakdown. It is concise but omits critical information, earning a middle score.
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 3 parameters and no parameter documentation, the description is insufficient. Output schema exists but is not referenced. Tool is simple but the description fails to make it usable.
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 0% (no descriptions in input schema). The description adds no meaning to the three parameters (co, loc, limit). Agent cannot infer what 'co' or 'loc' represent.
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 'Get public jobs for a company' clearly indicates the verb and resource, but it is vague about scope (e.g., all jobs? current?) and does not differentiate from siblings like 'search_jobs' or 'get_job_details'.
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?
No guidance on when to use this tool versus alternatives such as 'search_jobs' or 'search_jobs_advanced'. No exclusions or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_company_profileC
Get public company profile signals.
| Name | Required | Description | Default |
|---|---|---|---|
| co | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description provides minimal behavioral context. It indicates a read operation ('Get') but does not disclose any side effects, auth requirements, or data limits. The term 'public' hints at accessibility but is insufficient.
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 concise with one sentence, but it omits critical details. Brevity is acceptable only if the description is complete, which it is not.
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?
Despite having an output schema, the description fails to specify what 'profile signals' includes or how the single parameter should be formatted. The tool's simplicity is not fully leveraged to provide a complete usage picture.
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?
The description adds no meaning to the parameter 'co' beyond the schema. At 0% schema description coverage, the parameter's purpose (e.g., company name, ID, ticker) is entirely undocumented, making it hard to invoke correctly.
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 clearly states the action ('Get') and the resource ('public company profile signals'), distinguishing it from siblings like get_company_employees or get_company_jobs. However, 'signals' is vague and lacks specificity about what exactly is retrieved.
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?
No guidance is provided on when to use this tool versus alternatives such as search_companies or get_company_profile (self). There is no mention of prerequisites or context for invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_conversationC
Read a LinkedIn conversation via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It states 'Read' implying a non-destructive operation, but lacks any discussion of authentication, rate limits, or potential behaviors. No contradictions detected.
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 a single short sentence, which is concise but underspecifies. It could be more informative without being verbose.
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?
Given that an output schema exists, return values might be inferred, but the description still lacks context about what constitutes a LinkedIn conversation and how to interpret results. Incomplete for a tool with no annotations.
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 0%, yet the description does not elaborate on the single required parameter 'id'. The agent gets no clues about what value to provide (e.g., conversation ID vs. user ID).
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 clearly states 'Read a LinkedIn conversation', which is a specific verb+resource. The phrase 'via CDP browser' adds context. It distinguishes from siblings like 'get_inbox' or 'get_person_profile' by the resource, though not explicitly.
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?
No guidance on when to use this tool vs alternatives, no prerequisites, and no mention of best practices. The description is too minimal to provide usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_engine_statusC
Show available engines.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, placing the full burden on the description. The two-word description gives no behavioral traits such as whether the operation is read-only, has side effects, or any access requirements. This is insufficient for an agent to infer safety or consequences.
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 extremely concise (two words), which makes it front-loaded and efficient. However, it lacks explanatory context about what 'engines' are, which could lead to ambiguity. A slightly longer description would not harm conciseness and would improve clarity.
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?
Given the tool has no parameters and an output schema exists, the description is adequate but not complete. It states the action but does not explain the meaning of 'engines' or the structure of the output. The output schema presumably covers return details, so the description is minimally sufficient.
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?
The tool has zero parameters, and the schema coverage is 100% (empty properties). The description adds no additional parameter information, but with no parameters, the schema already fully defines the interface. A baseline of 4 is appropriate as the description doesn't need to compensate.
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 'Show available engines' clearly specifies the verb (Show) and resource (available engines), making the tool's purpose immediately understandable. However, it does not differentiate from sibling tools, many of which also use 'get' or 'show' verbs, but 'engines' is unique enough to avoid major confusion.
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?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any prerequisites, exclusions, or context in which this tool is preferred over sibling tools like 'get_job_details' or 'search_jobs', which leaves the agent without directional help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_feedC
Get LinkedIn home feed via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description only adds 'via CDP browser', hinting at a non-standard mechanism, but fails to disclose behavioral traits like session requirements, rate limits, or output characteristics.
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 a single sentence with no wasted words, but it is under-specified. It achieves conciseness at the expense of completeness.
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?
Despite having an output schema, the description does not mention what the feed contains (e.g., posts, activities) or any usage constraints. It is incomplete for an agent to reliably invoke the tool.
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 0%, yet the description does not explain the 'limit' parameter's meaning or effect. The parameter remains undocumented, adding no value.
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 clearly states it retrieves the LinkedIn home feed via CDP browser. It distinguishes from sibling tools like get_inbox (messages) and get_notifications (alerts).
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?
No guidance on when to use this tool versus alternatives. The description does not mention prerequisites, context, or when to avoid using it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_helpC
Show tool documentation.
| Name | Required | Description | Default |
|---|---|---|---|
| tool | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. However, it only states 'Show tool documentation' without mentioning whether the operation is read-only, requires authentication, or has any side effects. This is insufficient for an agent to understand the tool's behavior.
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 extremely short (three words), but this is underspecification rather than good conciseness. It lacks structure and fails to convey essential information. Every sentence should earn its place, but here the single sentence is too vague to be useful.
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?
Given the tool's simplicity (one optional parameter) and the presence of an output schema, the description still falls short. It does not explain the purpose of the 'tool' parameter, what the output contains, or how to use the tool effectively. The description is incomplete for an agent to invoke it correctly.
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?
The input schema has one parameter 'tool' with no description (0% coverage). The description does not mention or explain this parameter. It fails to add meaning beyond the schema, leaving the agent unaware that the 'tool' parameter specifies which tool's documentation to show.
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 'Show tool documentation' clearly states the tool's purpose: it displays documentation about tools. This distinguishes it from sibling tools that retrieve specific data (e.g., jobs, profiles). The verb 'show' is specific and the resource 'tool documentation' is unambiguous.
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?
The description provides no guidance on when to use this tool versus alternatives. It does not specify that it should be used when the agent needs help with a particular tool, nor does it mention any exclusions or prerequisites. The agent has no context for appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_inboxC
Get recent LinkedIn conversations via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It only mentions 'via CDP browser' but fails to state that it is read-only, requires an active browser session, or has any rate limits or side effects.
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 very concise at one sentence, but could benefit from slight expansion on key details without becoming overly verbose. It is front-loaded and efficient.
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?
Given no annotations and an output schema, the description is incomplete. It does not explain the return format, prerequisites (browser session), or error conditions. It barely provides enough context for correct invocation.
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 0% meaning the description must explain parameters. It does not explain what 'limit' controls or what the output contains beyond 'recent conversations'. The parameter is minimally self-explanatory but lacks important context.
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 clearly states the verb 'Get', resource 'recent LinkedIn conversations', and method 'via CDP browser'. It distinctly identifies the tool's function and differentiates it from sibling tools like 'get_conversation'.
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?
The description provides no guidance on when to use this tool versus alternatives like 'get_conversation'. No context on prerequisites or limitations is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_industry_insightsD
Get public market insights for an industry.
| Name | Required | Description | Default |
|---|---|---|---|
| ind | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present to indicate safety or side effects, and the description lacks any disclosure of behavioral traits such as data freshness, required permissions, or limitations.
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?
Single sentence, but overly terse and incomplete; it sacrifices necessary detail for brevity, resulting in under-specification.
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?
Although output schema exists, the description fails to adequately explain what the tool does or how to use the parameter, making it incomplete for a tool with only one parameter and no annotations.
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 0% and description does not clarify the meaning of the parameter 'ind' (e.g., industry name, code, or ID), leaving the agent to guess.
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?
Description states verb 'Get' and resource 'public market insights for an industry', but 'insights' is vague and does not differentiate from sibling tools that also retrieve data (e.g., get_job_trends, get_company_profile).
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?
No guidance provided on when to use this tool versus alternatives, no exclusions, prerequisites, or context for its invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_job_detailsC
Get full public LinkedIn job details.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavior (e.g., read-only, requires authentication). It only states 'full public' but omits crucial details like error handling or rate limits.
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?
Extremely short (5 words), but lacks necessary detail. While front-loaded, it omits parameter information, making it less useful than it could be.
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?
Despite a simple tool with one parameter and an output schema, the description fails to mention that the 'id' parameter is required. The agent is left guessing.
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 coverage is 0%, and the description does not clarify the 'id' parameter. The agent cannot determine that 'id' is the LinkedIn job ID from the description alone.
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 clearly states the tool's action ('Get') and resource ('full public LinkedIn job details'), effectively distinguishing it from siblings like get_job_salary or search_jobs.
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?
No guidance on when to use this tool versus alternatives (e.g., search_jobs, compare_jobs). The agent must infer from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_job_salaryB
Extract salary from public job details.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; the description only implies a read operation but lacks details on auth, rate limits, or side effects. The full burden is unmet.
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?
Single sentence, front-loaded, efficient, no unnecessary words.
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?
Despite output schema existence, the description is too minimal; it could mention the return format or clarify the identifier scope for adequate completeness.
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 0%, and the description does not explain what the 'id' parameter represents (e.g., job ID), failing to compensate for missing schema info.
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 'Extract salary from public job details' clearly states the verb (extract) and resource (salary), distinguishing it from siblings like get_job_details and others.
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?
No guidance on when to use this tool vs alternatives like get_job_details, no context for prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_job_trendsC
Get hiring trends by role/location.
| Name | Required | Description | Default |
|---|---|---|---|
| kw | Yes | ||
| loc | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description bears full responsibility for behavioral disclosure. It does not mention whether the tool is read-only, requires authentication, or any other behavioral traits beyond the basic purpose.
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 a single sentence of six words, which is very concise but lacks detail. While there is no fluff, the brevity comes at the expense of completeness, especially regarding parameter semantics and usage guidance.
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?
Despite having an output schema, the description fails to provide context about the nature of the trends (e.g., counts, percentages, time periods). With no annotations and minimal parameter context, the description is incomplete for a tool that likely returns aggregated data.
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?
The description adds minimal value by mapping the parameters to 'role' (kw) and 'location' (loc), which is helpful given 0% schema coverage. However, it does not specify format, allowed values, or default behavior for the optional parameter.
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 clearly states the purpose: 'Get hiring trends by role/location.' It uses a specific verb-resource combination and distinguishes from siblings like search_jobs and get_job_details by focusing on aggregate trends rather than individual job postings.
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?
No guidance is provided on when to use this tool versus alternatives. The description does not mention any context for use, such as comparing with search_jobs for individual listings or when to use other job-related sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_my_connectionsC
Get your LinkedIn connections via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides no details beyond the basic operation. No annotations exist, so the description carries the full burden. It does not disclose if this is read-only, whether a session is required, or any rate limits.
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 a single sentence, which is concise but lacks important details. It is appropriately front-loaded but too sparse for a tool with no annotations or parameter descriptions.
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?
Despite having an output schema (context signal), the description omits what the output contains, pagination behavior, or prerequisites. The 1-parameter tool is inadequately documented without behavioral or output context.
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?
The single parameter 'limit' has no description in the schema (0% coverage) and is not explained in the tool description. The agent receives no guidance on what this parameter does or its valid range.
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 clearly states the tool retrieves 'your LinkedIn connections' via 'CDP browser,' specifying the resource and verb. However, it does not differentiate from sibling tools that also retrieve lists, like get_company_employees or get_sidebar_profiles.
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?
There is no guidance on when to use this tool versus alternatives. With 31 sibling tools including other list-retrieval tools, the lack of usage context is a significant gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_my_profileA
Get your LinkedIn profile via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose that this is a read-only operation requiring authentication or any behavioral traits beyond the basic action.
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?
Single sentence, no wasted words, front-loaded with the key action. Perfectly concise.
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?
For a zero-parameter tool with an output schema, the description is adequate. However, it could mention that it fetches the authenticated user's profile to avoid confusion with get_person_profile.
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?
With 0 parameters and 100% schema coverage, the description is clear and sufficient; no additional parameter details needed.
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 clearly states the verb 'Get' and the resource 'your LinkedIn profile', distinguishing it from siblings like get_person_profile (other people) and get_company_profile.
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?
No guidance on when to use this tool versus alternatives like get_person_profile or get_profile_voyager. The description lacks contextual hints for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_notificationsC
Get LinkedIn notifications via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It only mentions 'via CDP browser,' implying a read operation, but does not confirm read-only status, potential delays, or other side effects.
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?
Extremely concise (one sentence), but lacks necessary detail. The space could be used to add parameter context or behavior notes without significantly increasing length.
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?
Despite a simple parameter set and existing output schema, the description fails to explain what notifications are returned, the response format, or pagination behavior. It is incomplete for effective use.
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?
The single parameter (limit) has 0% schema description coverage and is not mentioned in the tool description. No added meaning beyond the schema itself.
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 clearly states 'Get LinkedIn notifications via CDP browser,' specifying the verb (get) and resource (notifications). It distinguishes from sibling tools like get_feed or get_inbox, though it could be more specific about the type of notifications.
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?
No guidance on when to use this tool vs alternatives (e.g., get_feed, get_inbox). The description lacks context about prerequisites or appropriate scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_person_profileC
Get a person's LinkedIn profile via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
| uname | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavior. Only mentions 'via CDP browser', which is vague. No mention of authentication, data freshness, side effects, or output characteristics.
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?
Single sentence, no wasted words. Action is front-loaded. However, under-specification reduces effectiveness.
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?
Despite having an output schema (not in description), the description lacks context about the parameter, return value, and differentiation from similar profile tools. Incomplete for a tool with one parameter.
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 coverage is 0% and description does not explain the 'uname' parameter. The agent has no guidance on what value to provide (e.g., username, profile ID).
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 clearly states it retrieves a person's LinkedIn profile via CDP browser. It distinguishes from siblings like get_my_profile and get_company_profile, though not from get_profile_voyager or get_sidebar_profiles.
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?
No guidance on when to use this tool versus alternatives. Does not specify prerequisites, context for use, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_profile_voyagerC
Get a profile through gated Voyager mode.
| Name | Required | Description | Default |
|---|---|---|---|
| uname | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description only mentions 'gated Voyager mode' without explaining behavioral implications such as authentication requirements or side effects.
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 a single short sentence, which is concise but sacrifices necessary detail; it is not overly verbose.
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?
Despite having an output schema and one parameter, the description lacks context about what 'Voyager mode' means and how it differs from other profile tools, making it incomplete.
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?
The schema has one parameter 'uname' with 0% coverage; the description does not explain it, leaving the agent without semantic understanding.
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 states the verb 'Get' and resource 'profile', but 'gated Voyager mode' is ambiguous and doesn't clearly distinguish from sibling tools like get_person_profile or get_my_profile.
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?
No guidance is provided on when to use this tool versus alternatives; with many similar sibling tools, this omission is critical.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_resume_insightsC
Get local resume skill gaps and suggestions.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states it 'gets' data, implying a read operation, but does not mention whether it modifies data, requires authentication, or handles errors.
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 a single short sentence with no wasted words, but it lacks important detail, making it under-specified rather than optimally concise.
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?
Despite an output schema existing, the description does not set sufficient context. It does not clarify the meaning of 'local', how to obtain the required 'id', or what the returned insights contain.
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?
The only parameter 'id' has no description in schema (0% coverage). The description does not explain what 'id' refers to (e.g., resume ID, user ID), leaving the agent to guess.
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 clearly states the tool gets 'local resume skill gaps and suggestions', specifying verb and resource. It distinguishes from siblings like 'analyze_resume' by focusing on insights rather than general analysis, though 'local' is ambiguous.
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?
No guidance on when to use this tool versus alternatives like 'analyze_resume' or 'match_jobs_to_resume'. No prerequisites or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_saved_alertsB
List saved job alerts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It only states 'list', implying read-only, but no details on side effects, authentication, rate limits, or output format.
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?
Extremely concise (4 words). No wasted information, though could benefit from slight elaboration. Good for a simple tool.
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 output schema present, return values are covered. But description does not explain what constitutes a 'saved alert' or how it relates to sibling tools. Adequate but not fully complete.
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?
No parameters exist, so schema coverage is 100%. Description adds nothing beyond schema, but no gaps exist. Baseline 4 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?
Description clearly states verb 'list' and resource 'saved job alerts'. It distinguishes from sibling 'save_job_alert' (create) and 'check_saved_alerts' (check vs list), but could be more precise about alert types.
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?
No explicit guidance on when to use this tool over alternatives like 'check_saved_alerts' or 'save_job_alert'. Only implicit context from the verb 'list'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sidebar_profilesB
Get sidebar profile suggestions via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It states 'via CDP browser' but does not explain what that implies (e.g., data freshness, permissions, side effects). Lacks details on read-only nature or required authentication.
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?
Single sentence, no wasted words. Front-loaded with action and resource. Could be slightly more informative but remains concise.
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?
Given zero parameters and an output schema, the description is minimally adequate but lacks context on what sidebar profiles represent or when to invoke this tool. The many siblings suggest a need for better differentiation.
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?
The tool has zero parameters, and baseline for 0 params is 4. The description does not add parameter meaning since there are none, but it correctly implies no input is needed.
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 clearly states the action ('Get') and resource ('sidebar profile suggestions'), but does not distinguish it from many similar 'get' tools like get_feed or get_notifications. The term 'via CDP browser' adds slight context but is vague.
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?
No guidance on when to use this tool vs alternatives (e.g., get_person_profile). No when-not or prerequisite information is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
match_jobs_to_resumeC
Rank public jobs against a saved resume.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| kw | No | ||
| loc | No | ||
| min_score | No | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavioral traits, but it only says 'rank public jobs'. It does not explain what ranking means (e.g., scoring scale, if it alters data, permissions needed, or side effects). This is insufficient for safe invocation.
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 very concise at six words, but it lacks necessary detail. Conciseness is positive, but here it results in under-specification. A slightly longer description with key context would be better.
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?
Given 5 parameters, no schema descriptions, no annotations, and an output schema not explained, the description is incomplete. The agent lacks understanding of the required 'id', optional filters, and output format. The tool's complexity demands more detail.
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 coverage is 0%, so the description should add meaning to parameters. It only implies that 'id' is the resume identifier, but does not explain 'kw', 'loc', 'min_score', or 'limit'. The description adds minimal value beyond parameter names.
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 clearly states the verb 'rank' and the resource 'public jobs' with context 'against a saved resume'. It distinguishes from sibling tools like search_jobs and compare_jobs by implying a personalized scoring. However, 'saved resume' is ambiguous without specifying how the resume is identified.
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?
No guidance on when to use this tool versus alternatives like search_jobs or compare_jobs. No prerequisites mentioned, such as having a saved resume or understanding the ranking model. The agent is left guessing the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_job_alertC
Save a recurring job search.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| kw | Yes | ||
| loc | No | ||
| freq | No | daily |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must convey behavioral traits, but it only says 'Save a recurring job search.' It does not disclose idempotency, authentication needs, side effects (e.g., overwriting existing alerts), or the role of the 'freq' parameter.
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 extremely concise at one sentence, but it is under-specified and fails to provide essential information. Conciseness is not beneficial when it sacrifices clarity and completeness.
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?
Given the tool has 4 parameters, an output schema, and is a mutating operation, the description is grossly incomplete. It lacks details on parameter constraints, return values, error conditions, and behavior relative to other tools.
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 0%, and the description adds no meaning to the parameters. It fails to explain 'name', 'kw', 'loc', or 'freq', leaving the agent to infer from parameter names alone.
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 clearly states the verb 'Save' and the resource 'recurring job search', which aligns with the tool's function. However, it does not differentiate from sibling tools like 'check_saved_alerts' or 'get_saved_alerts'.
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?
No guidance is provided on when to use this tool versus its siblings or alternatives. There is no mention of prerequisites, typical use cases, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_companiesC
Search companies from public job signals.
| Name | Required | Description | Default |
|---|---|---|---|
| kw | Yes | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose any behavioral traits such as read-only nature, performance characteristics, or side effects.
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 very short (one sentence), which is concise but lacks necessary detail. It is not verbose, but it is under-informative.
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?
For a search tool with two parameters and an output schema (not shown), the description is too brief. It misses information about pagination, result format, or any advanced features that might be inferred.
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?
With 0% schema description coverage, the description adds no meaning to the parameters 'kw' and 'limit'. The schema lists them but the description provides no explanation of their purpose or format.
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 clearly states the action (search) and the resource (companies) and mentions 'from public job signals' which gives context. However, it doesn't differentiate from similar siblings like search_jobs.
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?
No guidance on when to use this tool vs alternatives like search_people or get_company_profile. Lacks any context on prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_jobsC
Search LinkedIn jobs by keyword/location.
| Name | Required | Description | Default |
|---|---|---|---|
| kw | Yes | ||
| loc | No | ||
| type | No | ||
| exp | No | ||
| remote | No | ||
| age | No | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits such as authentication needs, rate limits, or result handling. The description is a single phrase with no such details, leaving the agent unaware of important behavior.
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 extremely short, but it sacrifices necessary detail. True conciseness would pack value into few words without omitting critical information. Here, it is under-specified.
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?
Given 7 parameters, an output schema, and many sibling tools, the description is woefully incomplete. It fails to mention return format, pagination, or how to filter effectively. The agent cannot confidently use this tool based on the description alone.
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 0%. The description mentions keyword and location but does not explain any parameter details, including the allowed enum values or the meaning of each field. The agent receives no additional context beyond parameter names.
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 clearly states the action (search) and resource (jobs) along with criteria (by keyword/location). However, it does not differentiate from sibling tools like search_jobs_advanced or search_jobs_multi, which could confuse the agent about which to use.
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?
No guidance on when to use this tool versus others, no conditions for use, and no exclusions. The agent must infer usage solely from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_jobs_advancedD
Advanced public LinkedIn job search.
| Name | Required | Description | Default |
|---|---|---|---|
| kw | Yes | ||
| loc | No | ||
| co | No | ||
| type | No | ||
| exp | No | ||
| remote | No | ||
| age | No | ||
| sort | No | relevance | |
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description fails to disclose any behavioral traits such as authentication requirements, result limits, pagination, or rate limits. It only states 'advanced public LinkedIn job search' without elaboration.
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 extremely short (5 words) but not concise in a helpful way—it omits essential details. It is under-specified rather than efficiently informative.
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?
Given the 9 parameters and the existence of an output schema, the description is severely incomplete. There is no context on filtering, sorting, date age, remote options, or what the output contains. The tool's complexity demands far more detail.
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?
The input schema has 9 parameters with 0% description coverage in the schema, and the description adds no explanation for any parameter. Agents receive no help understanding the meaning of 'kw', 'loc', 'type', 'exp', etc.
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 states 'Advanced public LinkedIn job search,' which identifies the resource and action vaguely. However, it does not differentiate from the sibling 'search_jobs' or explain what makes it 'advanced,' leaving ambiguity.
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?
No guidance is provided on when to use this tool versus alternatives like 'search_jobs' or 'search_jobs_multi'. The description offers no context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_jobs_multiC
Search multiple public job boards.
| Name | Required | Description | Default |
|---|---|---|---|
| kw | Yes | ||
| loc | No | ||
| limit | No | ||
| age | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It fails to disclose any behavioral traits such as rate limits, pagination, data source specifics, or what happens on error.
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 extremely short (5 words) but omits essential details. Conciseness is not valuable when it sacrifices clarity and completeness.
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?
Despite having an output schema, the description does not mention the structure or volume of results. For a search tool with 4 parameters and no annotations, this description is incomplete.
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 0%, and the description does not explain any of the four parameters (kw, loc, limit, age). The agent must rely solely on parameter names, which is insufficient.
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 states 'Search multiple public job boards', clearly indicating the verb and resource. However, it does not differentiate from sibling tools like 'search_jobs' or 'search_jobs_advanced', which likely have similar purposes.
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?
No guidance is provided on when to use this tool versus alternatives. The description lacks any context or exclusions, leaving the agent without direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_peopleC
Search people via CDP browser.
| Name | Required | Description | Default |
|---|---|---|---|
| kw | Yes | ||
| loc | No | ||
| co | No | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description fails to disclose behavioral traits such as whether the tool is read-only, idempotent, or has side effects. The phrase 'via CDP browser' is ambiguous and does not clarify behavior.
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 a single sentence, which is concise but lacks structure. It does not front-load key information or provide any details beyond the basic purpose, making it under-specified.
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?
Given 4 parameters, no schema coverage, no annotations, and an output schema that is not referenced, the description is completely inadequate. The agent cannot determine what results to expect or how to invoke the tool properly.
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?
The input schema has 4 parameters with 0% description coverage, and the tool description does not explain any parameter semantics. The agent receives no help understanding what 'kw', 'loc', 'co', or 'limit' mean or how to use them correctly.
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 clearly states the action ('search') and the target resource ('people'), distinguishing it from sibling tools like search_companies or search_jobs. However, it lacks specifics about the search scope or what CDP browser refers to, slightly reducing clarity.
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?
No guidance is provided on when to use this tool versus alternatives such as get_person_profile or search_people (if any). The description does not include context, prerequisites, or exclusions, leaving the agent without decision support.
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.
32 tool updates
v0.1.2- First observed
analyze_resume - First observed
check_saved_alerts - First observed
check_session - First observed
compare_jobs - First observed
export_jobs - First observed
get_company_employees - First observed
get_company_jobs - First observed
get_company_profile - First observed
get_conversation - First observed
get_engine_status - First observed
get_feed - First observed
get_help - First observed
get_inbox - First observed
get_industry_insights - First observed
get_job_details - First observed
get_job_salary - First observed
get_job_trends - First observed
get_my_connections - First observed
get_my_profile - First observed
get_notifications - First observed
get_person_profile - First observed
get_profile_voyager - First observed
get_resume_insights - First observed
get_saved_alerts - First observed
get_sidebar_profiles - First observed
match_jobs_to_resume - First observed
save_job_alert - First observed
search_companies - First observed
search_jobs - First observed
search_jobs_advanced - First observed
search_jobs_multi - First observed
search_people
TDQS
Scored across 32 tools
Many tools have distinct purposes, but some overlap exists, e.g., multiple search tools (search_jobs, search_jobs_advanced, search_jobs_multi) and profile retrieval tools (get_person_profile, get_profile_voyager). This could cause confusion for agents.
All tools follow a consistent verb_noun pattern (e.g., analyze_resume, get_company_profile, search_jobs). This makes the set predictable and easy to navigate.
At 32 tools, the set is slightly large but still manageable. Some fine-grained tools (e.g., get_job_salary separate from get_job_details) feel slightly redundant but overall justified for the domain's complexity.
The server covers major LinkedIn operations: job search, company info, people profiles, resume analysis, messaging, and notifications. Minor gaps like posting or endorsements exist, but core workflows are well-supported.
Maintenance
Related MCP Connectors
- LinkMCPOAuthio.linkmcp
Hosted MCP server for LinkedIn: 31 tools for profiles, search, messaging, posts, enrichment.
7 recruiting tools over one MCP endpoint: ATS boards, LinkedIn jobs, profiles, companies, Naukri.
Managed LinkedIn MCP server for AI agents: search, connect, message and enrich on accounts you own.
LinkedIn outreach MCP server — 19 tools for AI agents to prospect, sequence, and manage contacts.
Related MCP Servers
- AlicenseAqualityCmaintenanceSelf-hosted, ban-safe MCP server for LinkedIn that provides 22 tools for profiles, search, jobs, posts, connections, and messages. Integrates with any MCP-compatible client like Claude Desktop.581MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for programmable LinkedIn automation via Playwright, offering 20 tools for profile management, messaging, feed interaction, and job searching through real browser automation.15MIT
- FlicenseNot gradedqualityBmaintenanceMCP server for LinkedIn that lets Claude and ChatGPT read your profile, post updates, and generate a resume PDF pre-formatted for LinkedIn's Import Resume feature.-
- AlicenseAqualityCmaintenanceMCP server for safe LinkedIn automation: official-API posting, comments, and likes plus guest-endpoint job search and a local application tracker.16MIT