# Figshare MCP

> Figshare manages your entire research publishing lifecycle directly through an AI agent. You can list public articles, create private drafts, manage complex data uploads, and organize collections without leaving your chat window. This MCP lets you control metadata and track scholarly outputs for researchers and data teams.

## Overview
- **Category:** data-management
- **Price:** Free
- **Tags:** open-science, research-data, academic-publishing, repository-management, dataset-storage

## Description

Got a mountain of research files and need to keep your academic output organized? This connector links directly to your Figshare account, turning tedious repository navigation into natural conversation. You can manage everything from drafting private articles to publishing public datasets—all through your AI client. Instead of logging into a dashboard just to check a file upload status or tweak an article's title, you ask the agent. It handles it. Need to track usage? Get total views and download counts for any piece of published work. You can also build structured knowledge by creating new projects or collections to group related research outputs. When working with complex data sets, Vinkius makes this MCP available in your preferred AI client, so you don't have to switch tools just to manage metadata.

## Tools

### complete_file_upload
Finalizes a data transfer that was previously initiated for an article.

### create_collection
Builds a new public grouping of related scholarly outputs.

### create_private_article
Generates a draft article in your account that is not visible to the public yet.

### create_project
Sets up a new formal container for related research outputs and datasets.

### delete_article
Removes an existing article from your Figshare account.

### get_article_downloads
Pulls the total count of times an article has been downloaded.

### get_article
Retrieves all the specific details for one published article ID.

### get_article_views
Provides the cumulative number of views for a specific article.

### get_custom_fields
Fetches extra, institution-specific metadata fields associated with your account.

### get_file_details
Retrieves specific information about a file uploaded to Figshare.

### get_hrfeed_upload
Gets details regarding an HR feed upload process.

### initiate_file_upload
Starts the multi-part file transfer necessary for a new article draft.

### list_article_files
Shows all files that are currently attached to an existing article.

### list_public_articles
Retrieves a list of articles you have published publicly.

### list_public_collections
Lists all public collections that you've created to organize content.

### list_public_projects
Shows a list of publicly visible research projects.

### search_articles
Performs advanced text and metadata searches across your published articles.

### search_collections
Searches through collections based on keywords or criteria you provide.

### search_projects
Executes an advanced search across all your defined research projects.

### update_article
Modifies the title, description, or other metadata of an existing article.

## Prompt Examples

**Prompt:** 
```
List the most recent public articles on Figshare.
```

**Response:** 
```
I've retrieved the latest public articles. I found several entries including 'Climate Change Impact on Alpine Flora' and 'Dataset for Neural Network Optimization'. Would you like details on any of these?
```

**Prompt:** 
```
Create a private article titled 'Lab Results Q4' with the description 'Raw data from the December experiments'.
```

**Response:** 
```
Success! I've created the private article 'Lab Results Q4' (ID: 9876543). You can now start uploading files to this draft using the initiate upload tool.
```

**Prompt:** 
```
Show me all files attached to article 1234567.
```

**Response:** 
```
Checking files for article 1234567... I found 3 files: 'methodology.pdf', 'raw_data.csv', and 'analysis_script.py'. Would you like the specific details or download URLs for any of these?
```

## Capabilities

### List all public publications
The agent finds and lists every article currently marked as public on your Figshare profile.

### Create private content drafts
You can draft a new, unpublished article in your account that you'll fill out later.

### Upload and manage research files
Initiate large file uploads for articles or list all existing datasets associated with a specific publication.

### Update article metadata
Change the title, description, and custom fields of an existing article to improve search visibility.

### Organize research projects and collections
Create new themed groups or formal projects to keep related datasets and articles together.

## Use Cases

### Preparing a paper for submission
A researcher has finished their core analysis files. They ask the agent to create a private article draft, upload all associated raw data using `initiate_file_upload`, and then update the article description with the final methodology details. The entire process happens without leaving the chat.

### Auditing old datasets
A librarian needs to prove usage for a grant report. They ask the agent to list public articles, select five key pieces, and then retrieve the total views and download counts for each using `get_article_views` and `get_article_downloads`.

### Refactoring an old project
A data manager realizes two related datasets were published separately. They ask the agent to create a new dedicated collection, list all files from the two old articles using `list_article_files`, and then add those files to the newly created group.

### Tracking organizational output
An archivist needs to check if a specific set of core institutional metadata has been updated. They ask for custom field details using `get_custom_fields` and confirm that all required data points are current before publication.

## Benefits

- You save time by avoiding manual data entry. Instead of logging into Figshare to change an article's description and then remembering to update the associated project metadata, you simply instruct your agent to handle it all in one go.
- Track impact without opening a dashboard. You can ask the MCP for total views or download counts on specific research pieces using `get_article_downloads`—all through conversational prompts.
- Keep drafts and ongoing work separate from published material. Use `create_private_article` to write and upload files for an experiment before you're ready to make it public, giving you full control over timing.
- Organize complex datasets better than folders can. You build structure by listing or creating projects and collections, allowing your agent to search across those boundaries using tools like `search_projects`.
- Update publication details instantly. If a study's scope changes, instead of manually editing the article page, you call `update_article` to change the title and description immediately.

## How It Works

The bottom line is you manage your entire research repository by talking to your AI client instead of clicking through web interfaces.

1. You connect your Figshare account using a Personal Access Token within the Vinkius platform.
2. Your AI agent uses the available tools to interpret your request—for instance, finding all files for Article X or listing public collections.
3. The agent executes the necessary commands and reports back the requested data or confirms the action was taken.

## Frequently Asked Questions

**How do I update metadata using the Figshare MCP? (update_article)**
You simply ask the agent to change it. You call `update_article` and specify which fields—like the title or description—need changing for a given article ID.

**Can I upload files using Figshare MCP? (initiate_file_upload)**
Yes, you initiate uploads by calling `initiate_file_upload`. The process is multi-step; the agent starts the transfer and then needs to use `complete_file_upload` afterward.

**What does list_public_articles do? (list_public_articles)**
This tool retrieves a clean, comprehensive list of every article that has been made public on your Figshare profile for easy review or auditing.

**Do I need to use search_articles if I know the ID? (get_article)**
No. If you have a specific Article ID, always use `get_article` first because it provides all details directly without needing an advanced search query.

**Can I create draft work with Figshare MCP? (create_private_article)**
Yes. You can call `create_private_article` to generate a new, unpublished draft article in your account, letting you prepare content before making it visible.

**How do I check an article's impact or usage using `get_article_downloads` or `get_article_views`?**
You retrieve the total download count or view count for a specific article. This lets you track scholarly interest and monitor your publication’s performance metrics without manually checking the Figshare dashboard.

**What's the purpose of using `create_collection`? Does it organize my output?**
It allows you to group related articles, datasets, or projects under one umbrella. Think of it as building a curated bibliography or a research portfolio rather than just uploading individual files.

**After I run `initiate_file_upload`, how do I finalize the transfer using `complete_file_upload`?**
File uploads require two steps. First, you start the process; then, running `complete_file_upload` handles the remaining data and makes the file fully live in your Figshare account.

**Can I upload files to a Figshare article using this integration?**
Yes. You can use `initiate_file_upload` to start the process and `complete_file_upload` once the data transfer is finished. You can also use `list_article_files` to verify the contents of any article.

**How do I create a new private draft for my research?**
Simply ask the agent to use the `create_private_article` tool. Provide a title and an optional description, and the agent will generate a new private entry in your Figshare account.

**Is it possible to organize my articles into projects or collections?**
Absolutely. You can use `create_project` or `create_collection` to set up organizational structures, and use `list_public_projects` or `list_public_collections` to browse existing ones.