Build solutions, not workarounds.
What do you want Grist and MalShare to do together?
Ask the assistant
Connect your AI client
Give your AI client this address.
https://mcp.apiant.aiAny client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.
Set it up in your client
Claude Code
Run this in the directory you want to work in.
claude mcp add --transport http -s project apiant-ai https://mcp.apiant.aiStart Claude Code there, approve the server, and sign in in the browser page it opens.
Claude Code guide (opens in a new tab)Claude, web and desktop
Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.
Setup guide (opens in a new tab)Cursor
Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.
Setup guide (opens in a new tab)Zed
Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.
Setup guide (opens in a new tab)Codex and the ChatGPT desktop app
Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.
Setup guide (opens in a new tab)Any other MCP client
Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.
Setup guide (opens in a new tab)Example flows
What Grist can start in MalShare
When New or Updated Record in Grist
then Add file in MalShare
When New Record in Grist
then Add URL download in MalShare
Starting points drawn from the triggers and actions in the catalog today. Describe the flow you need, at any depth, and your agent builds it and tests every scenario before it ships.
Everything your agent can do with Grist and MalShare
Triggers and actions 4 triggers · 33 actions
Trigger
New or Updated RecordTriggered when a row in a Grist table is created or updated.
Trigger
New or Updated Record (Instant)Triggers when a Record is updated, or a new Record is added.
Trigger
New RecordTriggered when a new row is added to a Grist table.
Trigger
New Record (Instant)Triggers when a new Record is created
Action
Add ColumnAdds a column to a table in a Grist document.
Action
Add TableCreates a new table in a Grist document, optionally with a starting set of columns.
Action
Create DocumentCreates a new document in a Grist workspace and returns its document ID.
Action
Create or Update RecordAdds a row to a Grist table, or updates the existing row when the match column already holds the match value. Returns the row ID.
Action
Create RecordAdds a new row to a Grist table and returns its row ID.
Action
Create WorkspaceCreates a new workspace in a Grist organization and returns its ID.
Action
Delete DocumentDeletes a Grist document permanently.
Action
Delete RecordsDeletes one or more rows from a Grist table by row ID.
Action
Delete WorkspaceDeletes a Grist workspace along with every document inside it.
Action
Find RecordSearches a Grist table for a row whose column holds a given value and returns that row's ID and column values.
Action
Get DocumentReturns the details of one Grist document — its name, web address, workspace, and organization.
Action
Get OrgReturns the details of one Grist organization (team site) — its name, subdomain, owner, and your access level.
Action
Get WorkspaceReturns the details of one Grist workspace, including the documents it contains.
Action
List ColumnsReturns the columns of a Grist table, with each column's ID, label, and type.
Action
List OrgsReturns every Grist organization (team site) this connection can reach.
Action
List TablesReturns the tables in a Grist document.
Action
List WorkspacesReturns the workspaces in a Grist organization, each with the documents it contains.
Action
Run SQL QueryRuns a read-only SELECT statement against a Grist document and returns the rows.
Action
Update DocumentRenames a Grist document or changes whether it is pinned. Anything left blank stays as it is.
Action
Update RecordChanges the column values of one row in a Grist table. Columns left blank keep their current values.
Action
Update WorkspaceRenames a Grist workspace.
Action
Add fileUploads a file to the MalShare sample collection.
Action
Add URL downloadFetch a sample from a URL and add the result to the sample collection.
Action
Find samplesSearches MalShare sample hashes, sources and file names for the given query and returns the matching samples.
Action
Find samples by hashReturns the MalShare samples that match the specified MD5, SHA1 or SHA256 hashes.
Action
Get API limitReturns how many API requests your MalShare key is allocated per day and how many remain.
Action
Get fileDownloads the raw file contents of a MalShare sample by its MD5, SHA1 or SHA256 hash.
Action
Get file detailsGet stored file metadata for a given hash.
Action
Get URL download statusCheck status of a download_url task by GUID (missing/pending/processing/finished).
Action
List file typesLists the file types seen in MalShare samples from the past 24 hours, with how many samples of each type were added.
Action
List hashesLists the hashes of samples added to MalShare in the past 24 hours.
Action
List hashes by typeLists the MD5/SHA1/SHA256 hashes of samples of a specific file type added to MalShare in the past 24 hours.
Action
List sourcesLists the sources samples were collected from in the past 24 hours.
No trigger or action matches that. Ask your agent to add it: it reads the API documentation and builds what you describe.
Each app on its own
Reviews
What our customers say
More from Grist
Grist to GmailGmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...
Grist to HubSpotHubSpot is your all-in-one stop for all of your marketing software needs.
Grist to SalesforceSalesforce is a leading enterprise customer relationship management (CRM) platform.
Grist to Google SheetsGoogle Sheets
Grist to Google DriveGoogle Drive is a cloud storage solution for uploading, sharing, and collaborating on files across devices...
Grist to MailchimpMailchimp marketing automation and email platform.
More into MalShare
HubSpot to MalShareHubSpot is your all-in-one stop for all of your marketing software needs.
Salesforce to MalShareSalesforce is a leading enterprise customer relationship management (CRM) platform.
Slack to MalShareSlack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...
Google Sheets to MalShareGoogle Sheets
Gmail to MalShareGmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...
Google Calendar to MalShareGoogle Calendar is a time management tool providing scheduling features, event reminders, and integration...
Questions
Grist and MalShare, answered
What can start an automation from Grist?
Any of Grist's 4 triggers in the catalog, including New or Updated Record, New or Updated Record (Instant), New Record and New Record (Instant). Describe the moment in plain language and your agent picks the right one.
What can your agent do in MalShare when something happens in Grist?
Any of MalShare's 12 actions, including Add file, Add URL download, Find samples and Find samples by hash. Your agent maps the data both ways and tests every scenario before it ships.
Can it also run from MalShare to Grist?
MalShare has no triggers in the catalog today, so automations start in Grist. If you need the other direction, ask: your agent reads MalShare's API documentation and adds it.
Do I have to build a connector for Grist or MalShare?
No. Both are in the catalog with their triggers and actions. You describe the automation; your agent builds it, tests every scenario and keeps it running.
What happens when something fails?
Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.
Is there a free plan?
Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.