Skip to main content
Glama

Device Link

Server Details

DeviceLink lets you share folders from your computer with AI assistants, securely and in real-time. Nothing is uploaded. Your files stay on your machine, and are only accessible while the device sharing them is connected - your agent while it runs, or a browser tab while it stays open.

Ownership verified
Status
Healthy
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.6/5.0

Scored across 4 tools

Disambiguation4/5

device_tool_call and discover have clearly distinct roles (execution vs. enumeration), and device_ping is scoped to a single device. The only soft overlap is between device_ping and health, since both are liveness checks, though the descriptions distinguish device-level from server-level status.

Naming Consistency3/5

Two tools use a device_ prefix (device_ping, device_tool_call) while the others are bare nouns (discover, health), and there is no consistent verb_noun pattern. Names are still readable and not ambiguous, but the convention is mixed.

Tool Count4/5

Four tools is compact, and because device_tool_call acts as a multiplexer over remote tools, the surface is effectively broader than the count suggests. It is slightly thin, with device_ping and health being near-neighbors in purpose, but nothing feels redundant overall.

Completeness3/5

Discovery, execution, and liveness checking are covered, but there are no lifecycle operations such as connecting/registering a device, cancelling or polling a long-running tool call, or managing shared-folder contents despite folders being referenced. Agents can work around these, but the surface has notable gaps.

Available Tools

4 tools
device_pingA
Read-onlyIdempotent
Inspect

Check that a device is reachable and how long a round trip takes. Reads no files, needs no shared folder and consumes no credit, so it is the safe way to prove a device is live.

ParametersJSON Schema
NameRequiredDescriptionDefault
echoNo
device_idNo
workspace_idNo

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and closed-world, yet the description still adds genuinely new operational facts: no file reads, no shared folder required, and no credit consumed. That cost/side-effect disclosure is exactly the value-add structured fields cannot carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the outcome and followed by the safety/cost rationale. No filler and nothing that could be cut without losing information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, and the description only loosely indicates the return ('how long a round trip takes') without saying whether reachability is a boolean, whether latency is milliseconds, or what happens on failure. Combined with fully undocumented parameters, the definition is adequate but leaves real gaps for a 3-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and all three parameters (echo, device_id, workspace_id) are undocumented, so the description must compensate and does not. It never explains what 'echo' does, whether device_id is effectively mandatory despite zero required fields, or how workspace_id scopes the lookup.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a concrete verb and resource ('Check that a device is reachable') plus the measured result ('how long a round trip takes'), which is clearly distinct from siblings like device_tool_call and health. It stops short of naming those siblings, so the differentiation is implicit rather than explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'It is the safe way to prove a device is live' implies when to reach for it, but there are no explicit exclusions and no alternatives are named (e.g. when to use health or device_tool_call instead). An agent gets a hint of context, not a routing rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

device_tool_callB
Destructive
Inspect

Execute a tool on a connected device. Use discover first to find available tool names, device IDs, and workspace IDs. When workspace_id, device_id, or directory_id are omitted, the server uses the unambiguous default if one exists.

ParametersJSON Schema
NameRequiredDescriptionDefault
argsNo
toolYes
device_idNo
request_idNo
directory_idNo
workspace_idNo

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this as destructive, non-read-only, non-idempotent, and closed-world. The description adds useful context about prerequisite discovery and default resolution for omitted IDs, but does not explain execution side effects, permissions, or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the core action, then the prerequisite, then the default-resolution rule. Every sentence provides actionable information with no waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a destructive meta-tool with six parameters, a nested `args` object, and no output schema. The description covers discovery and ID defaults but leaves the most important invocation parameter, `args`, unexplained, along with side effects and result behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry parameter meaning. It partially covers `tool` and the default behavior for `workspace_id`, `device_id`, and `directory_id`, but says nothing about the critical nested `args` object or `request_id`.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action, executing a tool on a connected device, and routes discovery to the sibling `discover`. It is clear enough to distinguish this from discovery, though the repeated generic term 'tool' slightly weakens precision.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly tells the agent to use `discover` first to find tool names, device IDs, and workspace IDs. It also explains fallback behavior when workspace_id, device_id, or directory_id are omitted, though it gives no when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

discoverA
Read-only
Inspect

Discover workspaces, devices, shared folders, and available tools in one call. Call this first to understand what is available before invoking device_tool_call. Automatically selects workspace, device, or folder when only one option exists; returns a list of choices when disambiguation is needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
toolsNo
devicesNo
device_idNo
directoriesNo
directory_idNo
workspace_idNo

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a safe read-only, non-destructive, closed-world discovery tool. The description adds meaningful behavior beyond annotations: it auto-selects when only one option exists and returns a list when disambiguation is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences, front-loaded with the core purpose and immediately followed by the critical usage instruction. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers when to call it and some return behavior, which is useful because there is no output schema. However, with 6 undocumented parameters and nested mode options, an agent still lacks enough detail to know how the optional inputs shape discovery results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage across 6 parameters, including nested mode options and identifier fields. The description mentions the resource categories but does not explain what tools.mode, devices.mode, directories.preview_limit, or the various IDs do.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb and the resources it discovers: workspaces, devices, shared folders, and tools. It also distinguishes itself from device_tool_call by positioning itself as the prerequisite discovery step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says to call this first before device_tool_call, and explains the selection/disambiguation behavior. That gives the agent a clear routing rule rather than leaving usage to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

healthA
Read-only
Inspect

Simple health check — returns server status.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds only that it 'returns server status' — useful but thin, and it says nothing about what the status field looks like, latency, or failure behavior. With annotation coverage this high, a 3 reflects modest added value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with the core purpose front-loaded and no wasted wording. Nothing could be removed without losing information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a trivial zero-parameter read tool with complete safety annotations, the description is close to sufficient. However, with no output schema, the description could have said what the status response looks like (e.g., a status string or boolean), which is the one piece of information an agent can't get elsewhere.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there are no parameter semantics for the description to explain. The baseline for a null-parameter tool applies, and nothing is missing or misleading.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: a health check that returns server status. It's clearly scoped to the server rather than a device, but it never explicitly distinguishes itself from the sibling device_ping, which is a similar liveness probe directed at a different target.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the phrase 'health check' — an agent can infer it's for liveness/availability probing. There is no explicit statement of when to call this versus device_ping or discover, and no prerequisites or exclusions are given.

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.

  1. 4 tool updates
    • First observeddevice_ping
    • First observeddevice_tool_call
    • First observeddiscover
    • First observedhealth

Publisher details

Operator
DeviceLink
Operator website
https://devicelink.ai
Vendor relationship
Not applicable
Restrictions
Not applicable

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Perplexity for social: ask what competitors are running across social and get answers grounded in real ad and creative data, not guesses.
    2
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    4 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources