Skip to main content
Glama

discovery_upload

Upload datasets from URLs, local paths, or direct content to prepare for predictive pattern analysis. Provides a file reference required for subsequent discovery analysis.

Instructions

Upload a dataset file and return a file reference for use with discovery_analyze.

Call this before discovery_analyze. Pass the returned result directly to
discovery_analyze as the file_ref argument.

Provide exactly one of: file_url, file_path, or file_content.

Args:
    file_url: A publicly accessible http/https URL. The server downloads it directly.
              Best option for remote datasets.
    file_path: Absolute path to a local file. Only works when running the MCP server
               locally (not the hosted version). Streams the file directly — no size limit.
    file_content: File contents, base64-encoded. For small files when a URL or path
                  isn't available. Limited by the model's context window.
    file_name: Filename with extension (e.g. "data.csv"), for format detection.
               Only used with file_content. Default: "data.csv".
    api_key: Disco API key (disco_...). Optional if DISCOVERY_API_KEY env var is set.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
file_contentNo
file_nameNodata.csv
file_pathNo
file_urlNo
api_keyNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

The description adds valuable behavioral context beyond what annotations provide. While annotations only indicate it's non-destructive and non-idempotent, the description explains the tool's role in a workflow (precursor to discovery_analyze), provides practical constraints (size limits, context window limitations, local vs hosted server considerations), and clarifies authentication behavior (optional API key with fallback to env var). No contradiction with annotations exists.

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?

The description is well-structured and efficiently organized. It starts with the core purpose and workflow integration, then provides clear parameter guidance. Every sentence serves a specific purpose with no wasted words. The bullet-point style parameter explanations are particularly effective for readability.

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

Completeness5/5

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

Given the tool's complexity (5 parameters, workflow integration, multiple input methods) and the presence of an output schema (which handles return value documentation), the description is complete. It covers purpose, workflow context, parameter semantics, behavioral constraints, and authentication - everything needed for an agent to use this tool correctly without needing to infer missing information.

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

Parameters5/5

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

With 0% schema description coverage, the description fully compensates by providing comprehensive semantic information for all parameters. It explains the purpose of each parameter, when to use which one, practical constraints, and default behavior. The description adds significant value beyond the bare schema, especially with the mutually exclusive guidance about providing exactly one of file_url, file_path, or file_content.

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?

The description clearly states the specific action ('Upload a dataset file') and the resource ('dataset file'), and distinguishes it from sibling tools by explicitly mentioning its relationship with 'discovery_analyze'. It provides a clear verb+resource combination with contextual differentiation.

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?

The description provides explicit guidance on when to use this tool ('Call this before discovery_analyze') and how to use the output ('Pass the returned result directly to discovery_analyze as the file_ref argument'). It also offers clear alternatives within the tool itself (file_url vs file_path vs file_content) with context about when each is appropriate.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/leap-laboratories/discovery-engine'

If you have feedback or need assistance with the MCP directory API, please join our Discord server