Hugging Face
Server Details
Connect to Hugging Face Hub and thousands of Gradio AI Applications
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
TDQS
Scored across 4 tools
hf_fs's search command overlaps with hub_repo_search for discovering models, datasets, and spaces, creating ambiguity about which to use. hub_repo_details also partially overlaps with hf_fs's stat/ls for repo metadata. Descriptions are detailed but don't fully disambiguate.
Names mix prefixes (hf_ vs hub_) and structures (hf_fs is a noun, hub_repo_search is verb_noun, hf_whoami is a phrase). All are snake_case and readable, but no single consistent pattern.
Four tools is slightly low for a broad platform like Hugging Face, but each tool is a multi-command powerhouse covering many operations. The set is well-scoped with no redundant tools.
The toolset is entirely read-only, missing create, update, delete, and upload operations for repos, files, and metadata. While reading and discovery are well-covered, agents cannot perform lifecycle management tasks on the Hub.
Available Tools
4 toolshf_fsHugging Face Hub: Find, use and view models, datasets, spaces, buckets, papers, documentation and collections. Get daily papers reports, and browse trending content. ARead-onlyInspect
When to use: Hugging Face Hub models, datasets, Spaces, collections, papers, daily papers, today's trending models, current paper leaderboard, docs, and repository files.
Examples: {"operations":[{"cmd":"ls","args":["hf://models/trending","--limit","10"]}]} {"operations":[{"cmd":"ls","args":["hf://papers/trending"]}]} {"operations":[{"cmd":"ls","args":["hf://papers/daily/latest"]}]} {"operations":[{"cmd":"cat","args":["hf://papers/2501.00001/paper.md"]}]}
Use hf_fs for Hugging Face Hub filesystem operations. Call it with operations, an array of {cmd, args} items; multiple operations may be submitted together.
Usage: {"operations":[{"cmd":"ls","args":["hf://models/org/repo"]}]}
Grammar; each string below is one args array item: ls URI [--recursive] [--glob GLOB] [--type TYPE] [--sort SORT] [--limit N] cat URI [--offset N] [--max-bytes N] attach URI [--max-bytes N] stat URI find URI [--name GLOB] [--path GLOB] [--type TYPE] [--limit N] search URI [QUERY] [--type TYPE] [--sort SORT] [--tag TAG] [--kind mcp] [--limit N]
COMMAND = ls|cat|attach|stat|find|search. TYPE = file|dir|repo|bucket|collection|paper|link. SORT = createdAt|downloads|likes|lastModified|likes30d|trendingScore|mainSize|id|trending|upvotes. URI is a canonical hf:// URI. QUERY and GLOB are each one string.
Use search for resource discovery, not repository-content search; ls for a known directory, find for recursive file discovery by name/path (not file contents), stat for filesystem metadata or an uncertain target type, cat for text contents, and attach for a complete JPEG, PNG, or WebP image. When the request gives an exact text-file URI, use cat directly; do not add ls or stat first. stat does not read the contents of JSON, Markdown, or other text files.
Search scopes: hf://models[/OWNER], hf://datasets[/OWNER], hf://spaces[/OWNER], hf://collections[/OWNER], hf://papers, and hf://docs[/...]. Repository and repository-file scopes are not supported: search a resource root or owner scope to discover resources; use find for file discovery within a repository or cat for a known text file. Paper and documentation search require QUERY. --tag (repeatable) and --kind are supported only on exactly hf://spaces, not owner scopes or other roots. The only valid --kind value is mcp, which selects MCP Spaces. Use ls hf://models/trending, hf://datasets/trending, hf://spaces/trending, or hf://papers/trending for trending listings. hf://papers/ID is a paper directory, not paper text. Use cat hf://papers/ID/paper.md for paper text and cat hf://papers/ID/metadata.json for metadata. No preliminary listing is needed for these known paths. Use ls hf://papers/ID to discover other resources. Omit --limit, --sort, and --type unless the request requires them. Limits and path-specific behavior are documented at hf://README.md. Issue one hf_fs call.
| Name | Required | Description | Default |
|---|---|---|---|
| operations | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| results | Yes | |
| truncated | No | |
| truncation_reason | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate readOnlyHint=true and destructiveHint=false, but the description adds substantive behavioral context beyond annotations: stat does not read file contents, attach yields complete image files, search does not support repository or repository-file scopes, and --tag/--kind are valid only on exactly hf://spaces. It also documents paper subpaths and that no preliminary listing is needed for known paths.
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 definition is well structured into sections like Usage, Grammar, and command guidance, and it needs substantial space for six commands and their scopes. It is somewhat long and repeats the usage example pattern more than once at the end, so it is not maximally concise, but the length is mostly justified.
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 multi-command tool with no preexisting schema coverage, the description is unusually complete: it covers all commands, URI forms, search scopes, trending endpoints, paper package layout, flag validity, and where to find additional limits/behavior (README.md). Since an output schema exists, the lack of explicit return-format prose is acceptable.
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 coverage is reported as 0%, and the description compensates thoroughly: it gives a grammar line for each command, explains the args array shape (one argument per item) and requirement that the first arg is an hf:// URI, enumerates valid TYPE and SORT values for the agent, and documents flag constraints. This clearly exceeds the thin schema descriptions.
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 explicitly states that hf_fs is for Hugging Face Hub filesystem operations, lists the commands (ls, cat, attach, stat, find, search), and enumerates the resource types and scopes it covers. It also helps differentiate itself by distinguishing search from repository-content search and by giving command-specific roles.
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 includes a dedicated 'When to use' block and explicit routing rules: search for resource discovery, ls for a known directory, find for recursive discovery, stat for metadata or uncertain targets, cat for text contents, and attach for images. It further says to use cat directly for known text-file URIs and not to preface with ls or stat.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hf_whoamiHugging Face User InfoARead-onlyInspect
Inspect the current Hugging Face authentication context, including the account, visible organization memberships, and credential access details. Read-only and never returns credential values.
| 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?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable context by explicitly stating it is read-only and 'never returns credential values', providing a strong security guarantee. This goes beyond the annotations, though it partly repeats the read-only hint.
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 and front-loaded, using two sentences to convey purpose, scope, and a key security property. Every word earns its place without waste.
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 (no parameters), the presence of an output schema, and clear annotations, the description adequately covers the essential contextual information. It explains what the tool does, its read-only nature, and credential safety, making it complete for an agent to select and invoke 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 tool has zero parameters, so the baseline is 4. The schema coverage is vacuously 100%, and the description correctly avoids inventing parameter details. No additional parameter explanation 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 specifies the tool's function with a specific verb ('inspect') and resource ('Hugging Face authentication context'), listing the exact data covered (account, org memberships, credential access details). It distinguishes itself from sibling tools focused on file systems or repo operations.
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 clearly implies its purpose, but it does not explicitly state when to use this tool versus alternatives like hf_fs or hub_repo_details. No when-not-to-use guidance is provided, so usage context is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hub_repo_detailsHub Repository DetailsARead-onlyInspect
Get details for one or more Hugging Face repos (model, dataset, or space). Auto-detects type unless specified. For datasets, use operations: overview, dataset_structure, dataset_preview. Use dataset_structure first to discover configs, splits, sizes, and schema. Use dataset_preview only when config and split are known, unless the dataset has a single config/split.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Row count for dataset_preview. Defaults to 5 and is clamped to 1-100. | |
| split | No | Dataset Viewer split. Required for dataset_preview when the dataset has multiple config/split options. Discover via dataset_structure. | |
| config | No | Dataset Viewer config. Required for dataset_preview when the dataset has multiple config/split options. Discover via dataset_structure. | |
| offset | No | Row offset for dataset_preview. Defaults to 0. | |
| repo_ids | Yes | Repo IDs for (models|dataset/space) - usually in author/name format (e.g. openai/gpt-oss-120b) | |
| repo_type | No | Specify lookup type; otherwise auto-detects | |
| operations | No | Details to return. Defaults to ["overview"]. For datasets, prefer ["overview", "dataset_structure"] first; then call ["dataset_preview"] with config and split. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and destructiveHint=false, and the description adds behavioral context by explaining auto-detection of repo type and the recommended ordering of dataset operations. No contradiction with annotations.
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 three sentences long, beginning with the core purpose and followed by targeted guidance for datasets. No redundant or filler content; each sentence earns its place.
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 tool with 7 parameters and no output schema, the description covers the dataset workflow well, including discovery and preview conditions. It does not detail return shapes, but given the read-only nature and strong annotations, this is 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?
Schema covers 100% of parameters with descriptions, so baseline is 3. The description adds semantic value by linking operations to parameters (e.g., dataset_structure before dataset_preview, using config/split only when known), exceeding the schema's per-parameter descriptions.
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 details for one or more Hugging Face repos (model, dataset, or space)' with a specific verb, resource, and scope. It differentiates from siblings like hub_repo_search by focusing on details retrieval and mentions auto-detection of repo type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear workflow for datasets: 'Use dataset_structure first to discover configs, splits, sizes, and schema. Use dataset_preview only when config and split are known.' This gives explicit context, though it does not mention when NOT to use the tool or direct alternatives among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hub_repo_searchRepo SearchARead-onlyInspect
Search Hugging Face repositories with a shared query interface. You can target models, datasets, spaces, or aggregate across multiple repo types in one call. Include links to repositories in your response.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort order (descending): trendingScore, downloads, likes, createdAt, lastModified | |
| limit | No | Maximum number of results to return per selected repo type | |
| query | No | Search term. Leave blank and specify sort + limit to browse trending or recent repositories. | |
| author | No | Organization or user namespace to filter by (e.g. 'google', 'meta-llama', 'huggingface'). | |
| filters | No | Optional hub filter tags. Applied to each selected repo type (e.g. ["text-generation"], ["language:en"], ["mcp-server"]). | |
| repo_types | No | Repository types to search. Defaults to ["model", "dataset"]. space uses keyword search via /api/spaces. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context beyond the annotations by stating that the tool can aggregate across multiple repo types and that responses should include links to repositories. This is useful behavioral information, though it doesn't disclose details like rate limits or auth requirements, which are covered by annotations.
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 two sentences, front-loaded with the verb and resource. The first sentence defines the tool, and the second elaborates on scope and response format. Every clause is purposeful, with no wasted 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?
There is no output schema, but the description hints at the output by instructing the agent to include links to repositories. It covers the main capability (searching across repository types) and leaves parameter details to the schema. This is reasonably complete for a search tool, though it could mention sorting/limiting, which the schema already documents.
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 covers all 6 parameters with descriptions (100% coverage), so the baseline is 3. The description enhances the repo_types parameter by explaining the ability to target models, datasets, or spaces and aggregate across multiple types in one call, adding meaning beyond the schema's enum list.
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 'Search Hugging Face repositories' with a specific verb and resource. It also differentiates from siblings by mentioning targeting models, datasets, and spaces or aggregating across multiple repo types, making the purpose 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 clear context that this tool is for searching across repo types and can aggregate multiple types in one call. It does not explicitly name alternatives or exclusions, but the context of a shared query interface and the sibling names (e.g., hub_repo_details) make the appropriate usage evident.
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 tool update
- Changed
hf_fs1 field changed- changed
Input schema / properties / operations / items / properties / args / descriptionPrevious value: -"Command arguments. First item must be an hf:// URI, not a local path or bare filename. One argument per array item."New value: +"Command arguments. First item must be an hf:// URI, not a local path or bare filename. One argument per array item. search discovers resources, not repository contents; use root/owner discovery scopes, find for file discovery, or cat for a known text file. --tag and --kind require exactly hf://spaces; the only valid --kind value is mcp."
1 tool update
- Changed
hf_fs1 field changed- changed
Input schema / properties / operations / items / properties / args / descriptionPrevious value: -"Command arguments; each array item is one grammar token."New value: +"Command arguments. First item must be an hf:// URI, not a local path or bare filename. One argument per array item."
1 tool update
- Changed
hf_fs33 fields changed- added
Input schema / additionalPropertiesAdded value: +false - removed
Input schema / properties / argsRemoved value: -{ - "description": "Command arguments; each array item is one grammar token.", - "items": { - "type": "string" - }, - "type": "array" -} - removed
Input schema / properties / cmdRemoved value: -{ - "description": "Command to execute.", - "enum": [ - "ls", - "cat", - "attach", - "stat", - "find", - "search" - ], - "type": "string" -} - added
Input schema / properties / operationsAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "args": { + "description": "Command arguments; each array item is one grammar token.", + "items": { + "type": "string" + }, + "type": "array" + }, + "cmd": { + "description": "Command to execute.", + "enum": [ + "ls", + "cat", + "attach", + "stat", + "find", + "search" + ], + "type": "string" + } + }, + "required": [ + "cmd", + "args" + ], + "type": "object" + }, + "maxItems": 30, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "cmd", - "args" -]New value: +[ + "operations" +] - removed
Output schema / allOfRemoved value: -[ - { - "if": { - "properties": { - "op": { - "const": "attach" - } - }, - "required": [ - "op" - ] - }, - "then": { - "properties": { - "bytes": { - "maximum": 8388608, - "minimum": 0, - "type": "integer" - }, - "mime_type": { - "enum": [ - "image/jpeg", - "image/png", - "image/webp" - ], - "type": "string" - }, - "path": { - "type": "string" - } - }, - "required": [ - "path", - "mime_type", - "bytes" - ] - } - } -] - removed
Output schema / properties / arxiv_urlRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / bytesRemoved value: -{ - "type": "number" -} - removed
Output schema / properties / contentRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / content_typeRemoved value: -{ - "enum": [ - "application/json", - "text/markdown" - ], - "type": "string" -} - removed
Output schema / properties / daily_papers_dateRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / daily_papers_uriRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / entriesRemoved value: -{ - "items": { - "additionalProperties": false, - "properties": { - "anchor": { - "type": "string" - }, - "arxiv_url": { - "type": "string" - }, - "category": { - "type": "string" - }, - "content_type": { - "enum": [ - "application/json", - "text/markdown" - ], - "type": "string" - }, - "created_at": { - "type": "string" - }, - "daily_papers_date": { - "type": "string" - }, - "daily_papers_uri": { - "type": "string" - }, - "description": { - "type": "string" - }, - "downloads": { - "type": "number" - }, - "gated": { - "anyOf": [ - { - "const": false, - "type": "boolean" - }, - { - "enum": [ - "auto", - "manual" - ], - "type": "string" - } - ] - }, - "lfs": { - "type": "boolean" - }, - "library": { - "type": "string" - }, - "likes": { - "type": "number" - }, - "name": { - "type": "string" - }, - "observed_at": { - "type": "string" - }, - "path": { - "type": "string" - }, - "private": { - "type": "boolean" - }, - "published_at": { - "type": "string" - }, - "repo_type": { - "enum": [ - "model", - "dataset", - "space", - "bucket" - ], - "type": "string" - }, - "sdk": { - "type": "string" - }, - "semantic_relevance": { - "type": "number" - }, - "size": { - "type": "number" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "target_uri": { - "type": "string" - }, - "task": { - "type": "string" - }, - "title": { - "type": "string" - }, - "total_files": { - "type": "number" - }, - "trending_score": { - "type": "number" - }, - "type": { - "enum": [ - "file", - "dir", - "repo", - "bucket", - "collection", - "paper", - "link" - ], - "type": "string" - }, - "updated_at": { - "type": "string" - }, - "upvotes": { - "type": "number" - }, - "uri": { - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "type", - "path" - ], - "type": "object" - }, - "type": "array" -} - removed
Output schema / properties / existsRemoved value: -{ - "type": "boolean" -} - removed
Output schema / properties / lfsRemoved value: -{ - "type": "boolean" -} - removed
Output schema / properties / mime_typeRemoved value: -{ - "enum": [ - "image/jpeg", - "image/png", - "image/webp" - ], - "type": "string" -} - removed
Output schema / properties / namespaceRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / next_offsetRemoved value: -{ - "type": "number" -} - removed
Output schema / properties / opRemoved value: -{ - "enum": [ - "ls", - "cat", - "attach", - "stat", - "find", - "search" - ], - "type": "string" -} - removed
Output schema / properties / pathRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / published_atRemoved value: -{ - "type": "string" -} - added
Output schema / properties / resultsAdded value: +{ + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "index": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "output_truncated": { + "type": "boolean" + }, + "result": { + "additionalProperties": false, + "allOf": [ + { + "if": { + "properties": { + "op": { + "const": "attach" + } + }, + "required": [ + "op" + ] + }, + "then": { + "properties": { + "bytes": { + "maximum": 8388608, + "minimum": 0, + "type": "integer" + }, + "mime_type": { + "enum": [ + "image/jpeg", + "image/png", + "image/webp" + ], + "type": "string" + }, + "path": { + "type": "string" + } + }, + "required": [ + "path", + "mime_type", + "bytes" + ] + } + } + ], + "properties": { + "arxiv_url": { + "type": "string" + }, + "bytes": { + "type": "number" + }, + "content": { + "type": "string" + }, + "content_type": { + "enum": [ + "application/json", + "text/markdown" + ], + "type": "string" + }, + "daily_papers_date": { + "type": "string" + }, + "daily_papers_uri": { + "type": "string" + }, + "entries": { + "items": { + "additionalProperties": false, + "properties": { + "anchor": { + "type": "string" + }, + "arxiv_url": { + "type": "string" + }, + "category": { + "type": "string" + }, + "content_type": { + "enum": [ + "application/json", + "text/markdown" + ], + "type": "string" + }, + "created_at": { + "type": "string" + }, + "daily_papers_date": { + "type": "string" + }, + "daily_papers_uri": { + "type": "string" + }, + "description": { + "type": "string" + }, + "downloads": { + "type": "number" + }, + "gated": { + "anyOf": [ + { + "const": false, + "type": "boolean" + }, + { + "enum": [ + "auto", + "manual" + ], + "type": "string" + } + ] + }, + "lfs": { + "type": "boolean" + }, + "library": { + "type": "string" + }, + "likes": { + "type": "number" + }, + "name": { + "type": "string" + }, + "observed_at": { + "type": "string" + }, + "path": { + "type": "string" + }, + "private": { + "type": "boolean" + }, + "published_at": { + "type": "string" + }, + "repo_type": { + "enum": [ + "model", + "dataset", + "space", + "bucket" + ], + "type": "string" + }, + "sdk": { + "type": "string" + }, + "semantic_relevance": { + "type": "number" + }, + "size": { + "type": "number" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "target_uri": { + "type": "string" + }, + "task": { + "type": "string" + }, + "title": { + "type": "string" + }, + "total_files": { + "type": "number" + }, + "trending_score": { + "type": "number" + }, + "type": { + "enum": [ + "file", + "dir", + "repo", + "bucket", + "collection", + "paper", + "link" + ], + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "upvotes": { + "type": "number" + }, + "uri": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "type", + "path" + ], + "type": "object" + }, + "type": "array" + }, + "exists": { + "type": "boolean" + }, + "lfs": { + "type": "boolean" + }, + "mime_type": { + "enum": [ + "image/jpeg", + "image/png", + "image/webp" + ], + "type": "string" + }, + "namespace": { + "type": "string" + }, + "next_offset": { + "type": "number" + }, + "op": { + "enum": [ + "ls", + "cat", + "attach", + "stat", + "find", + "search" + ], + "type": "string" + }, + "path": { + "type": "string" + }, + "published_at": { + "type": "string" + }, + "section": { + "type": "string" + }, + "size": { + "type": "number" + }, + "target_uri": { + "type": "string" + }, + "truncated": { + "type": "boolean" + }, + "truncation_message": { + "type": "string" + }, + "truncation_reason": { + "enum": [ + "entry_limit", + "max_bytes", + "limit", + "provider_limit" + ], + "type": "string" + }, + "type": { + "enum": [ + "namespace", + "repo", + "dir", + "file", + "collection", + "paper", + "link", + "missing" + ], + "type": "string" + }, + "uri": { + "type": "string" + }, + "url": { + "type": "string" + }, + "warnings": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "uri", + "op" + ], + "type": "object" + }, + "status": { + "const": "success", + "type": "string" + } + }, + "required": [ + "index", + "status", + "result" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "enum": [ + "HF_FS_INVALID_ARGUMENT", + "HF_FS_NOT_FOUND", + "HF_FS_NOT_A_DIRECTORY", + "HF_FS_NOT_A_FILE", + "HF_FS_UNSUPPORTED_OPERATION", + "HF_FS_ACCESS_DENIED", + "HF_FS_TEXT_ONLY", + "HF_FS_IMAGE_ONLY", + "HF_FS_UNSUPPORTED_MEDIA", + "HF_FS_IMAGE_TOO_LARGE", + "HF_FS_ATTACHMENT_BUDGET_EXCEEDED", + "HF_FS_IMAGE_CONTENT_DISABLED", + "HF_FS_ATTACHMENT_INTEGRITY" + ], + "type": "string" + }, + "message": { + "type": "string" + }, + "recovery": { + "type": "string" + }, + "retryable": { + "const": false, + "type": "boolean" + }, + "suggestedOperation": { + "enum": [ + "ls", + "cat", + "attach", + "stat", + "search" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "recovery", + "retryable" + ], + "type": "object" + }, + "index": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "status": { + "const": "error", + "type": "string" + } + }, + "required": [ + "index", + "status", + "error" + ], + "type": "object" + } + ] + }, + "maxItems": 30, + "minItems": 1, + "type": "array" +} - removed
Output schema / properties / sectionRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / sizeRemoved value: -{ - "type": "number" -} - removed
Output schema / properties / target_uriRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / truncation_messageRemoved value: -{ - "type": "string" -} - added
Output schema / properties / truncation_reason / constAdded value: +"output_budget" - removed
Output schema / properties / truncation_reason / enumRemoved value: -[ - "entry_limit", - "max_bytes", - "limit", - "provider_limit" -] - removed
Output schema / properties / typeRemoved value: -{ - "enum": [ - "namespace", - "repo", - "dir", - "file", - "collection", - "paper", - "link", - "missing" - ], - "type": "string" -} - removed
Output schema / properties / uriRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / urlRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / warningsRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - changed
Output schema / requiredPrevious value: -[ - "uri", - "op" -]New value: +[ + "results" +]
1 tool update
- Changed
hf_fs4 fields changed- changed
Input schema / properties / cmd / enumPrevious value: -[ - "ls", - "cat", - "stat", - "find", - "search" -]New value: +[ + "ls", + "cat", + "attach", + "stat", + "find", + "search" +] - added
Output schema / allOfAdded value: +[ + { + "if": { + "properties": { + "op": { + "const": "attach" + } + }, + "required": [ + "op" + ] + }, + "then": { + "properties": { + "bytes": { + "maximum": 8388608, + "minimum": 0, + "type": "integer" + }, + "mime_type": { + "enum": [ + "image/jpeg", + "image/png", + "image/webp" + ], + "type": "string" + }, + "path": { + "type": "string" + } + }, + "required": [ + "path", + "mime_type", + "bytes" + ] + } + } +] - added
Output schema / properties / mime_typeAdded value: +{ + "enum": [ + "image/jpeg", + "image/png", + "image/webp" + ], + "type": "string" +} - changed
Output schema / properties / op / enumPrevious value: -[ - "ls", - "cat", - "stat", - "find", - "search" -]New value: +[ + "ls", + "cat", + "attach", + "stat", + "find", + "search" +]
1 tool update
- Changed
hf_whoami1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "account": { + "additionalProperties": false, + "properties": { + "id": { + "minLength": 1, + "type": "string" + }, + "is_pro": { + "type": "boolean" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "type": { + "enum": [ + "user", + "org", + "app" + ], + "type": "string" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "required": [ + "id", + "type", + "name" + ], + "type": "object" + }, + "credential": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "created_at": { + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$", + "type": "string" + }, + "permissions": { + "additionalProperties": false, + "properties": { + "can_read_gated_repos": { + "type": "boolean" + }, + "global": { + "items": { + "minLength": 1, + "type": "string" + }, + "type": "array" + }, + "scoped": { + "items": { + "additionalProperties": false, + "properties": { + "entity": { + "additionalProperties": false, + "properties": { + "id": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "type": { + "enum": [ + "model", + "dataset", + "space", + "bucket", + "kernel", + "collection", + "org", + "user", + "resource_group", + "oauth_app" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "permissions": { + "items": { + "minLength": 1, + "type": "string" + }, + "type": "array" + }, + "restrictions": { + "items": { + "additionalProperties": false, + "properties": { + "patterns": { + "items": { + "minLength": 1, + "type": "string" + }, + "type": "array" + }, + "resource_type": { + "const": "inference_endpoint", + "type": "string" + } + }, + "required": [ + "resource_type", + "patterns" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "entity", + "permissions" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "scoped" + ], + "type": "object" + }, + "role": { + "enum": [ + "read", + "write", + "fine_grained" + ], + "type": "string" + }, + "type": { + "const": "personal_access_token", + "type": "string" + } + }, + "required": [ + "type", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expires_at": { + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$", + "type": "string" + }, + "scopes": { + "items": { + "minLength": 1, + "type": "string" + }, + "type": "array" + }, + "type": { + "const": "oauth", + "type": "string" + } + }, + "required": [ + "type" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "entities": { + "items": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "type": { + "enum": [ + "model", + "dataset", + "space", + "bucket", + "kernel", + "org" + ], + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "type": "array" + }, + "role": { + "minLength": 1, + "type": "string" + }, + "type": { + "const": "app_token", + "type": "string" + } + }, + "required": [ + "type", + "entities" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expires_at": { + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$", + "type": "string" + }, + "type": { + "const": "other", + "type": "string" + } + }, + "required": [ + "type" + ], + "type": "object" + } + ] + }, + "organizations": { + "items": { + "additionalProperties": false, + "properties": { + "display_name": { + "minLength": 1, + "type": "string" + }, + "id": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "plan": { + "minLength": 1, + "type": "string" + }, + "resource_groups": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "role": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "id", + "name", + "role" + ], + "type": "object" + }, + "type": "array" + }, + "role": { + "minLength": 1, + "type": "string" + }, + "security_restrictions": { + "items": { + "minLength": 1, + "type": "string" + }, + "type": "array" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "required": [ + "id", + "name", + "display_name", + "url" + ], + "type": "object" + }, + "type": "array" + }, + "status": { + "const": "authenticated", + "type": "string" + } + }, + "required": [ + "status", + "account", + "organizations", + "credential" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "account": { + "type": "null" + }, + "credential": { + "type": "null" + }, + "guidance": { + "minLength": 1, + "type": "string" + }, + "organizations": { + "items": { + "additionalProperties": false, + "properties": { + "display_name": { + "minLength": 1, + "type": "string" + }, + "id": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "plan": { + "minLength": 1, + "type": "string" + }, + "resource_groups": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "role": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "id", + "name", + "role" + ], + "type": "object" + }, + "type": "array" + }, + "role": { + "minLength": 1, + "type": "string" + }, + "security_restrictions": { + "items": { + "minLength": 1, + "type": "string" + }, + "type": "array" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "required": [ + "id", + "name", + "display_name", + "url" + ], + "type": "object" + }, + "type": "array" + }, + "status": { + "const": "anonymous", + "type": "string" + } + }, + "required": [ + "status", + "account", + "organizations", + "credential", + "guidance" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "account": { + "type": "null" + }, + "credential": { + "type": "null" + }, + "guidance": { + "minLength": 1, + "type": "string" + }, + "organizations": { + "items": { + "additionalProperties": false, + "properties": { + "display_name": { + "minLength": 1, + "type": "string" + }, + "id": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "plan": { + "minLength": 1, + "type": "string" + }, + "resource_groups": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "role": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "id", + "name", + "role" + ], + "type": "object" + }, + "type": "array" + }, + "role": { + "minLength": 1, + "type": "string" + }, + "security_restrictions": { + "items": { + "minLength": 1, + "type": "string" + }, + "type": "array" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "required": [ + "id", + "name", + "display_name", + "url" + ], + "type": "object" + }, + "type": "array" + }, + "status": { + "const": "authentication_unverified", + "type": "string" + } + }, + "required": [ + "status", + "account", + "organizations", + "credential", + "guidance" + ], + "type": "object" + } + ], + "type": "object" +}
4 tool updates
- Changed
hf_fs3 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / additionalPropertiesRemoved value: -false - changed
Output schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
hf_whoami1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
hub_repo_details5 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / limit / maximumAdded value: +9007199254740991 - added
Input schema / properties / limit / minimumAdded value: +-9007199254740991 - added
Input schema / properties / offset / maximumAdded value: +9007199254740991
- Changed
hub_repo_search2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / additionalPropertiesRemoved value: -false
Related MCP Connectors
New Hugging Face Spaces: fresh AI app demos & UIs. Register in-session — free testnet funds.
HuggingFace trending models — what's hot now. $0.01/query. Register in-session — free testnet funds.
161New AI models on HuggingFace: releases, weights. Register in-session — free testnet funds.
Run AI models, create deployments, and manage predictions via cloud API
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceConnects LLMs to the Hugging Face Hub and thousands of Gradio AI applications, enabling repository search, file access, Space interaction, jobs, and sandbox tools through MCP. Supports STDIO and Streamable HTTP transports with optional Hugging Face authentication.MIT
- AlicenseNot gradedqualityCmaintenanceProvides direct access to the Hugging Face Hub for searching models and datasets, fetching metadata, and running inference on text, images, and audio.MIT
- AlicenseCqualityDmaintenanceConnects Claude Desktop to Hugging Face Spaces with minimal setup, enabling capabilities like image generation, vision tasks, text-to-speech, and chat with AI models.3605MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables access to 200,000+ machine learning models through the Hugging Face Inference API. Supports text generation, image creation, classification, translation, speech processing, embeddings, and more AI tasks.-