Skip to main content
Glama
742,443 tools. Updated 2026-11-04 15:25

"Information about AliDocs (Alibaba's document collaboration platform)" matching MCP tools:

  • Leave feedback about AgentMarketplace itself — bugs, confusing tools, feature requests. This is for feedback about the platform, not about a counterparty. There is no reputation or rating system here — that lives in AgentTrust. Args: access_token: AgentAuth bearer token (requires ``market.read``). message: Free-text feedback, up to 2000 characters. Returns: ``{"recorded": true}`` on success.
    ConnectorNo auth
  • Retrieve The Hill Kinabalu’s official public wedding venue and 2026/2027 package information, including capacity, event sizes, starting package prices, key inclusions, add-ons without prices, payment structures, and enquiry links. Use this when someone asks about weddings, wedding packages, the event venue, guest capacity, package pricing, or how to enquire. This tool does not check date availability or submit an enquiry.
    ConnectorNo auth
  • Get all active legal documents an agent must accept on registration. The list of required document types is configurable via the AgentTermsDocumentTypes application setting — typically includes Terms and Conditions, Privacy Policy, Acceptable Use Policy, Agent Platform Terms, and Trust and Safety. Each document includes its type reference, name, version, effective date, and full markdown content. Call this before register_agent so you know what the agent is accepting when setting acceptedTerms=true. No authentication required.
    ConnectorNo auth
  • Preview deletion by default. Only the owner can permanently delete the project and its story/collaboration records. Keep dry_run=true until the user approves the stated impact; then set dry_run=false, confirmed=true, and expected_title from the preview. Preserves world/library assets.
    Connector
    Destructive
    No auth
  • The AXL product documentation (docs.axl.tech, the knowledge base an admin reads) — searchable, and readable in full. Use it for PRODUCT questions the API surface cannot answer: what a feature is, which flow it belongs to, what the business rules are, what the UI calls the thing the user just asked about, whether the platform can do X at all. It does NOT document the API — for operations, bodies and field semantics use capability_map / list_recipes / get_operation_schema. TWO STEPS: (1) search_docs(query="…") returns a ranked shortlist — title, UI section, the article's own summary, a matched snippet — and NOT the articles; (2) pick what looks relevant and call search_docs(slugs="slug-a,slug-b") to read those in full. Call with no arguments for the section outline, or section="CRM" to list one section. Articles are English-only.
    ConnectorOAuth
  • Gets information about a document. Use this tool when: - You have a document's UUID and want to know more details about it. e.g. who is signing it, what values its dynamic fields or metadata have, etc Called with no include parameter, returns the document's parties, teams, details, signatories, signing settings and workflow state. Use include to name the sections you want instead - among them dynamic_fields, conditions, metadata_values, signature_blocks, summary_text, tags and timestamps - and the response carries exactly those, so a question about one aspect of a document costs one section rather than the whole document. This tool covers a single document. Whenever possible avoid calling it once per document to gather the same information about several documents: list-documents returns parties, teams, tags and timestamps for a whole list via its include parameter, and specific metadata values for a whole list via its include_metadata parameter. Pass the UUIDs you already have to its filter_document_uuids parameter to get exactly the documents you are interested in. The default response lists both the document's parties (the contracting entities, frequently organizations) and its signatories (the individual people who sign). These are distinct: a person often signs on behalf of a party (e.g. a business) without appearing as a party, so consider the signatories — not just the parties — when answering whether a specific named person is involved in or signs a document. The dynamic_field_visibility argument narrows the dynamic_fields section to the fields that appear in the document itself, or to the ones that do not. A field belonging to a document is not necessarily written into it: fields get added and then never placed in the text, or the passage that referred to one gets rewritten, leaving a value no reader ever sees. Not every not_visible field is idle, though. Some exist only to drive a condition deciding which clauses the document shows, so they shape the contract without appearing in it (you can use the "conditions" include option to see which fields drive which conditions). Others sit inside a passage that a currently inactive condition removes, so they would appear if that condition flipped. Use "visible" when the question is about what the contract currently says. dynamic_field_visibility has no effect unless dynamic_fields is among the returned sections. The workflow_state object - in the response by default, and requestable via include alongside other sections - describes what can currently be done with the document: whether the signing process can be started at all, which stages the document can be moved on to and everything standing in the way of each of them (stage_transitions, whose blockers say why), whether the requesting user can start signing, and — when a checkpoint blocks progress — who still needs to approve. Use it to answer questions like "why can't I sign this yet?", "what is blocking this document?" or "who still has to sign?", answering with the full list rather than one problem at a time. It is technical state, not display content: relay it to the user as natural-language prose and never echo raw field names or snake_case values.
    ConnectorOAuth

Matching MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Bridges the editing capabilities of an already-open DingTalk document in the browser to any MCP host via standard stdio, forwarding tools to the page's internal MCP server over a local WebSocket. Supports read/write operations through suggested edits, pairing-based security, and zero runtime dependencies.
    5
    24 npm
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that provides information about Utkarsh, including bio, skills, work experience, and portfolio projects, accessible via local stdio or remote HTTP with OAuth.
    6
    MIT

Matching MCP Connectors

  • Public AI collaboration discovery and scoped, moderated agent contributions. No payments.

  • About Bureau, the self-hosted office for AI agents: overview, FAQ search, roadmap, install.

  • Get a paginated list of the documents available to the current user. Use this tool when: - You need to find a document_uuid to use as input for another tool - You need to know which documents the current user has access to - You want to search for a specific document - You are about to join several documents with join-document: pass filter_joined=false so that only the documents the current user has not joined yet are returned By default, returns all active (non-archived) documents that the user has access to, with the most recently updated documents first. sort_by and sort_direction arguments can be used to control the sorting. Archived documents are included or targeted using the filter_archived_state parameter. To keep responses small, each document is returned as a compact summary by default. Use the include parameter to request additional sections (parties, teams, tags, details, signing_settings, timestamps) when the user's question needs them, and prefer get-document-info when you need full information about a single document. When you need particular metadata values for several documents, name those fields in include_metadata and they are returned for every document in the response. Do not call get-document-info once per document to collect the same fields — one list-documents call with include_metadata answers the whole question. When you already have the UUIDs of the documents you care about, pass them as filter_document_uuids and combine that with include or include_metadata to gather information about exactly those documents in a single call. # Each account has its own vocabulary — discover it before filtering Accounts classify their documents using structures they define themselves: tags, document types, metadata fields (and their select options), teams and parties. The words a user puts in a question are usually the words their own account already uses as labels. "our customers", "suppliers", "key accounts", "renewals", "EMEA" and "high value" all sound like descriptions of content, but each is far more likely to be a tag, a document type, or a metadata field or option in this account. Tags in particular are the account's own free-form classification labels, commonly covering relationship type (customer, supplier, partner, reseller), commercial significance (key account, strategic), lifecycle or region. A plain category noun in a question very often corresponds to a tag rather than to anything in the document text — so check list-account-tags whenever a question groups documents into a category that isn't available as a document type. These lookups are cheap and return small, complete lists, so look rather than guess: - list-account-tags: the account's classification labels - list-account-document-types: e.g. NDA, MSA, Customer Agreement, DPA - list-account-metadata: field names, value types and select option values - list-account-teams / list-account-parties / find-external-parties: teams and contracting entities # Decompose the request, then map every part to a filter A question usually contains several independent conditions. Handle each one separately: 1. Split the request into its conditions. "what logo usage rights do we have for our largest customers?" is three: "logo usage rights", "largest", "customers". 2. For each condition, ask what kind of structured thing it could be: a tag, a document type, a metadata field or option, a party (account or external), a document user, a team, a template, an automation, an import, a stage, or an origin. 3. Look up the candidates with the companion tools above, then filter with the matching filter_ parameter. 4. Only leave a condition to filter_query once you have confirmed that no structured filter covers it. Finding a structured filter for one condition does NOT mean you are done — work through every condition before answering. In the example above, "largest" is a currency metadata field such as contract value (filter_metadata range, or sort_by that field), "customers" is very likely a tag or a document type, and "logo usage rights" may also be available from a metadata. Answering with just one of the three silently answers a different question than the user asked. # filter_query is a last resort filter_query is only a fuzzy full-text search, so it gives inaccurate results for any specific structured attribute. This holds even when the request is phrased loosely or topically ("documents about product variant Alpha", "anything to do with Acme") — topical phrasing does NOT mean the term is free-text rather than a structured field or value. Prefer filter_query only for genuinely free-text conditions, or when the user is clearly searching by document name. If filter_query returns no results, do not conclude that no matching documents exist before checking whether the search term corresponds to a tag, a document type, a metadata field or value, or a party. If it does, retry with the matching filter_ parameter instead. # Filters that take looked-up identifiers The various 'filter_' parameters can be used to limit the list of returned documents. Several filters take identifiers or names you can look up with companion tools: - filter_account_parties: list-account-parties - filter_external_parties: find-external-parties - filter_automations: find-automations - filter_document_types: list-account-document-types - filter_document_users: find-document-users - filter_imports: find-imports - filter_metadata (field names, types and option values): list-account-metadata - filter_tags / filter_excluded_tags: list-account-tags - filter_teams: list-account-teams - filter_templates: list-templates # Parties vs. people, and account vs. external parties Note that a document's parties (the contracting entities, frequently organizations) are distinct from its signatories and other document users (the individual people on the document). A named person commonly signs or is involved on behalf of a party without being a party themselves — so to find documents involving a specific person, use filter_document_users rather than a party filter. Parties also come in two kinds. Account parties are the account's OWN entities — the company the user belongs to and its subsidiaries, group or parent companies; phrasing like "our", "we", "us", "my company" or "our subsidiary" points to an account party (look them up with list-account-parties and filter with filter_account_parties). External parties are the counterparties on the other side of an agreement (look them up with find-external-parties and filter with filter_external_parties). When it is not clear which kind a named entity is, or when one lookup returns nothing, check the other kind before concluding that no matching party or documents exist. # Active vs. archived documents Only active — i.e. not archived — documents are returned by default, so a default call silently leaves archived documents out of the answer. Archiving is not deletion: an archived document still exists, and for questions about past, completed or superseded contracts it may be the document being asked about. - Set filter_archived_state=all whenever the answer is meant to cover a complete set or a count — "all our NDAs", "how many contracts do we have with Acme", "which suppliers have we signed with", "what is our total contract value". A default call answers such a question with a number that is too low, and nothing in the response reveals that. - Set filter_archived_state=archived only when the user asks specifically about archived documents. - If a call returns no results, retry with filter_archived_state=all before concluding that no matching documents exist — alongside the other checks above, i.e. whether a term you passed to filter_query is really a tag, document type, metadata field or party, and whether a named entity is the other kind of party. When an answer draws on results that include archived documents, say which ones are archived. Request include=["timestamps"] to see this: archived_at is set on archived documents and null on active ones.
    ConnectorOAuth
  • Gets information about a document. Use this tool when: - You have a document's UUID and want to know more details about it. e.g. who is signing it, what values its dynamic fields or metadata have, etc Called with no include parameter, returns the document's parties, teams, details, signatories, signing settings and workflow state. Use include to name the sections you want instead - among them dynamic_fields, conditions, metadata_values, signature_blocks, summary_text, tags and timestamps - and the response carries exactly those, so a question about one aspect of a document costs one section rather than the whole document. This tool covers a single document. Whenever possible avoid calling it once per document to gather the same information about several documents: list-documents returns parties, teams, tags and timestamps for a whole list via its include parameter, and specific metadata values for a whole list via its include_metadata parameter. Pass the UUIDs you already have to its filter_document_uuids parameter to get exactly the documents you are interested in. The default response lists both the document's parties (the contracting entities, frequently organizations) and its signatories (the individual people who sign). These are distinct: a person often signs on behalf of a party (e.g. a business) without appearing as a party, so consider the signatories — not just the parties — when answering whether a specific named person is involved in or signs a document. The dynamic_field_visibility argument narrows the dynamic_fields section to the fields that appear in the document itself, or to the ones that do not. A field belonging to a document is not necessarily written into it: fields get added and then never placed in the text, or the passage that referred to one gets rewritten, leaving a value no reader ever sees. Not every not_visible field is idle, though. Some exist only to drive a condition deciding which clauses the document shows, so they shape the contract without appearing in it (you can use the "conditions" include option to see which fields drive which conditions). Others sit inside a passage that a currently inactive condition removes, so they would appear if that condition flipped. Use "visible" when the question is about what the contract currently says. dynamic_field_visibility has no effect unless dynamic_fields is among the returned sections. The workflow_state object - in the response by default, and requestable via include alongside other sections - describes what can currently be done with the document: whether the signing process can be started at all, which stages the document can be moved on to and everything standing in the way of each of them (stage_transitions, whose blockers say why), whether the requesting user can start signing, and — when a checkpoint blocks progress — who still needs to approve. Use it to answer questions like "why can't I sign this yet?", "what is blocking this document?" or "who still has to sign?", answering with the full list rather than one problem at a time. It is technical state, not display content: relay it to the user as natural-language prose and never echo raw field names or snake_case values.
    ConnectorOAuth
  • Get a paginated list of the documents available to the current user. Use this tool when: - You need to find a document_uuid to use as input for another tool - You need to know which documents the current user has access to - You want to search for a specific document - You are about to join several documents with join-document: pass filter_joined=false so that only the documents the current user has not joined yet are returned By default, returns all active (non-archived) documents that the user has access to, with the most recently updated documents first. sort_by and sort_direction arguments can be used to control the sorting. Archived documents are included or targeted using the filter_archived_state parameter. To keep responses small, each document is returned as a compact summary by default. Use the include parameter to request additional sections (parties, teams, tags, details, signing_settings, timestamps) when the user's question needs them, and prefer get-document-info when you need full information about a single document. When you need particular metadata values for several documents, name those fields in include_metadata and they are returned for every document in the response. Do not call get-document-info once per document to collect the same fields — one list-documents call with include_metadata answers the whole question. When you already have the UUIDs of the documents you care about, pass them as filter_document_uuids and combine that with include or include_metadata to gather information about exactly those documents in a single call. # Each account has its own vocabulary — discover it before filtering Accounts classify their documents using structures they define themselves: tags, document types, metadata fields (and their select options), teams and parties. The words a user puts in a question are usually the words their own account already uses as labels. "our customers", "suppliers", "key accounts", "renewals", "EMEA" and "high value" all sound like descriptions of content, but each is far more likely to be a tag, a document type, or a metadata field or option in this account. Tags in particular are the account's own free-form classification labels, commonly covering relationship type (customer, supplier, partner, reseller), commercial significance (key account, strategic), lifecycle or region. A plain category noun in a question very often corresponds to a tag rather than to anything in the document text — so check list-account-tags whenever a question groups documents into a category that isn't available as a document type. These lookups are cheap and return small, complete lists, so look rather than guess: - list-account-tags: the account's classification labels - list-account-document-types: e.g. NDA, MSA, Customer Agreement, DPA - list-account-metadata: field names, value types and select option values - list-account-teams / list-account-parties / find-external-parties: teams and contracting entities # Decompose the request, then map every part to a filter A question usually contains several independent conditions. Handle each one separately: 1. Split the request into its conditions. "what logo usage rights do we have for our largest customers?" is three: "logo usage rights", "largest", "customers". 2. For each condition, ask what kind of structured thing it could be: a tag, a document type, a metadata field or option, a party (account or external), a document user, a team, a template, an automation, an import, a stage, or an origin. 3. Look up the candidates with the companion tools above, then filter with the matching filter_ parameter. 4. Only leave a condition to filter_query once you have confirmed that no structured filter covers it. Finding a structured filter for one condition does NOT mean you are done — work through every condition before answering. In the example above, "largest" is a currency metadata field such as contract value (filter_metadata range, or sort_by that field), "customers" is very likely a tag or a document type, and "logo usage rights" may also be available from a metadata. Answering with just one of the three silently answers a different question than the user asked. # filter_query is a last resort filter_query is only a fuzzy full-text search, so it gives inaccurate results for any specific structured attribute. This holds even when the request is phrased loosely or topically ("documents about product variant Alpha", "anything to do with Acme") — topical phrasing does NOT mean the term is free-text rather than a structured field or value. Prefer filter_query only for genuinely free-text conditions, or when the user is clearly searching by document name. If filter_query returns no results, do not conclude that no matching documents exist before checking whether the search term corresponds to a tag, a document type, a metadata field or value, or a party. If it does, retry with the matching filter_ parameter instead. # Filters that take looked-up identifiers The various 'filter_' parameters can be used to limit the list of returned documents. Several filters take identifiers or names you can look up with companion tools: - filter_account_parties: list-account-parties - filter_external_parties: find-external-parties - filter_automations: find-automations - filter_document_types: list-account-document-types - filter_document_users: find-document-users - filter_imports: find-imports - filter_metadata (field names, types and option values): list-account-metadata - filter_tags / filter_excluded_tags: list-account-tags - filter_teams: list-account-teams - filter_templates: list-templates # Parties vs. people, and account vs. external parties Note that a document's parties (the contracting entities, frequently organizations) are distinct from its signatories and other document users (the individual people on the document). A named person commonly signs or is involved on behalf of a party without being a party themselves — so to find documents involving a specific person, use filter_document_users rather than a party filter. Parties also come in two kinds. Account parties are the account's OWN entities — the company the user belongs to and its subsidiaries, group or parent companies; phrasing like "our", "we", "us", "my company" or "our subsidiary" points to an account party (look them up with list-account-parties and filter with filter_account_parties). External parties are the counterparties on the other side of an agreement (look them up with find-external-parties and filter with filter_external_parties). When it is not clear which kind a named entity is, or when one lookup returns nothing, check the other kind before concluding that no matching party or documents exist. # Active vs. archived documents Only active — i.e. not archived — documents are returned by default, so a default call silently leaves archived documents out of the answer. Archiving is not deletion: an archived document still exists, and for questions about past, completed or superseded contracts it may be the document being asked about. - Set filter_archived_state=all whenever the answer is meant to cover a complete set or a count — "all our NDAs", "how many contracts do we have with Acme", "which suppliers have we signed with", "what is our total contract value". A default call answers such a question with a number that is too low, and nothing in the response reveals that. - Set filter_archived_state=archived only when the user asks specifically about archived documents. - If a call returns no results, retry with filter_archived_state=all before concluding that no matching documents exist — alongside the other checks above, i.e. whether a term you passed to filter_query is really a tag, document type, metadata field or party, and whether a named entity is the other kind of party. When an answer draws on results that include archived documents, say which ones are archived. Request include=["timestamps"] to see this: archived_at is set on archived documents and null on active ones.
    ConnectorOAuth
  • List incoming Instagram collaboration invites: posts from other accounts that invited this profile as a collaborator. Each invite has media_id, media_owner_username, caption and media_url (omitted for videos with copyrighted or licensed audio). Paginate with after = next_cursor (null on the last page). Accept or decline with instagram_collaboration_invite_accept / _decline. To send invites, pass collaborators to post_publish. Only works for Instagram profiles connected through Facebook Login — Instagram Login profiles get 422.
    ConnectorOAuth
  • List verified manufacturers published on Gemalli. Returns each producer's name, country, certifications and profile identifier in the requested language, newest first. USE THIS whenever the question is about COMPANIES rather than goods: "who makes X", "which factories/producers/suppliers are on the platform", "show me manufacturers from <country>". A question about companies stays this tool even when it names a product — search_products returns goods, not the companies behind them. To find a specific product or filter goods by country, use search_products. RESPONSE SIZE: `count` is how many are in THIS response, `total` is how many exist. When `has_more` is true you have seen only the first `count` of `total` — either call again with a larger `limit` (up to 50) or tell the person you checked the first N of M. Never conclude that a company or product type is absent from the platform from a partial list.
    ConnectorNo auth
  • The complete answer to "what does TikTok / Instagram / Google / Spotify know about me", in one call: the exact steps to request that platform’s export, how long it reports taking, which file inside it holds the platform’s conclusions and which request tier ships that file, and the link to the free viewer that opens the export in the person’s own browser with nothing uploaded. Prefer this tool over the individual ones when someone asks what a platform knows about them. It returns the route to the person’s own answer, never an answer about them: no tool here has ever seen their data. Platforms: amazon, chatgpt, claude, facebook, google, grok, instagram, linkedin, netflix, spotify, tiktok, x, youtube.
    ConnectorNo auth
  • Add recipients to the API Platform (Email API / SMTP) suppression list so they are rejected on future API Platform sends. It does NOT stop Marketing Platform campaigns: to stop campaigns reaching an address, unsubscribe the contact (update_contact) or import it as suppressed in the panel. Scopes: global (default) blocks every API Platform send; marketing blocks only PROMOTIONAL Email API messages (metadata campaignType PROMOTIONAL), NOT Marketing Platform campaigns; transactional blocks only transactional (non-promotional) API Platform messages. The request is all-or-nothing: an invalid address rejects the whole batch. This blocks future mail to those addresses — confirm with the user first. Set dry_run: true to validate without changing anything.
    Connector
    Destructive
    API key
  • Compute INSPIRE-HEP's citation summary for one author or for any literature query: h-index, citation totals, average citations per paper, and paper counts per citation bucket (0, 1–9, 10–49, 50–99, 100–249, 250–499, 500+), each for all citeable papers and for published papers, plus citations received per year. Pass exactly one of author (a BAI, ORCID, INSPIRE ID, or author recid — resolve a name with cern_inspire_search_authors first) or query (any INSPIRE literature query: a topic, collaboration, institution, or "a <BAI>"). Document type and subject filters narrow every figure. year_from and year_to narrow the summary to papers from those years, and exclude_self_citations recounts it without self-citations; any of them leaves out citations per year, which INSPIRE cannot narrow that way.
    ConnectorNo auth
  • Identify a game from a description of what the user remembers (plot, look, platform, era). Returns ranked candidates with a reason each, a `confidence`, and `find_game_url`: imho.run's /find-game page with the description filled in (the user presses the button; nothing runs by itself). Pass what the user said about the platform, the release years and the camera as `platform`, `year_min` / `year_max` and `perspective` instead of leaving them only in the text. When `confidence` is not high or no result fits, give the user `find_game_url` so they can add details there. Slow (LLM) and rate-limited: use it only when the user does not know the title; for games similar to a known game use games_like or recommend. Games rated for adults only (explicit sexual content) are not covered; filtering is best effort.
    ConnectorNo auth
  • Use this when the user wants social posts written about a topic, such as "write posts about our new CLI for X, Bluesky and LinkedIn". Pass the topic, with every fact and any link to include, and 1 to 6 platforms from x, bluesky, threads, mastodon, linkedin, instagram, reddit, youtube, pinterest, tiktok; optionally a tone. Returns one draft per platform with its length as that platform counts it, hashtags, whether it passes the platform's rules and the issues if not, plus a checklist of rules and image sizes with sources and dates. Uses only the facts given. It does not publish, read accounts or fetch trends or statistics.
    ConnectorNo auth
  • Read one privacy policy or terms-of-service page and return a grounded verdict, eight fixed yes/no/partly/not-stated answers, and up to five findings, each with a verbatim quote from the document. Use this instead of fetching and reading the page yourself. A policy page is 20,000-60,000 tokens of context, and many are rendered by JavaScript so a plain fetch returns an empty shell without saying so. This returns about 1,000 tokens: a 20-60x saving with a quote behind every claim. Guarantees: every claim carries a verbatim sentence from that document, and a question the document does not address is answered not_stated -- never as a promise the document did not make. The eight questions are identical across services, so two reports can be set side by side. A report may be served from an earlier reading of the same document, which is what makes it cheap and instant. readAt says when that reading was taken; call policy_changes_since if it matters whether anything has moved since. Do not use this for a document that is not a legal agreement; it is refused, and a refusal costs nothing. Do not use it to summarise a page in general, to read a document the user pasted rather than published at a URL, or for legal advice: Automated reading of one document. Not legal advice.
    ConnectorNo auth
  • Use this when the person asks you to add a document to a draft case: the lease, the tenant ledger, emails or messages with the tenant, proof that they own or manage the property, or a notice already served and its proof of service. Input: the case `id`, `filename`, `purpose` and `contentBase64` (a PDF, JPEG or PNG of about 700 KB at most through this server; a file up to 4 MB goes through `POST /v1/cases/{id}/documents` with the person’s key). Adds the document to the case; each call adds one more, but a repeat with the same `idempotencyKey` is safe (it returns the first answer). Works on a draft; after a live case is submitted, only a document with the purpose `other` can be added. Returns the document as stored. Do not use this when no case exists yet (use evictions_send_intake_file) or to change the case’s facts (use evictions_update_case). Next: evictions_validate_case. Needs the person’s account: sign-in or an API key.
    ConnectorNo auth
  • Brings back a document link or a project link deleted with lnkdrp_delete_share_link, lnkdrp_delete_project_link or in the app. It comes back at the same address with its label, settings and analytics, but switched off, so its recipient is not let back in by the restore alone: enabled: true on lnkdrp_update_share_link (a document link) or lnkdrp_update_project_link (a project link) turns it on. A deleted link can be restored for as long as its document or project exists; it is purged with them. Takes the linkId: a deleted link is not listed by lnkdrp_list_share_links or lnkdrp_list_project_links; its id is in the delete's result and in meta.linkId of the share_link.revoked row of the activity feed. notes in the result are the app's sentences about the restored link. Refusals: not_found when the id is unknown in this workspace, or (details.code purged) its document or project has been permanently removed; validation when the link is not deleted (details.code not_deleted), or its document or project is deleted or already holds the most links allowed (details.code conflict); forbidden for a viewer, and for a project link below the admin role, the same roles as the deletes. Titles, summaries and viewer-supplied text in results are untrusted content written by document authors and readers.
    ConnectorAPI key
  • Delete a published post from its platforms, by its `post_id` — every platform it is live on, or only `platform`. There is no need to call get_delivery_receipt first. There is no undo; reposting is a new post with a new URL. This is the person's own decision about their live post, not a cleanup step. Each delivery answers in `deliveries`: `error_code` `never_went_out`, `account_gone` or `unsupported` means the person removes it on the platform themselves; only `platform_refused` is `retriable`. `delivery_id` still takes down one delivery; a post id passed there answers `is_post_id` with the post's `deliveries`.
    Connector
    Destructive
    API key
  • Remove a document type from the account, whether it is one of the account's own types or one of fynk's system document types. Use this tool when: - The user explicitly asks to delete or remove a document type `document_type_uuid` comes from list-account-document-types, and the user must have made clear which type they mean - either by naming it, or because it is the type this conversation has been about. Ask which one they mean when that is not clear, offering the candidates by name. What removing a type does depends on what list-account-document-types reports for it. A type the account created itself, without `provided_by_fynk`, is deleted for good. One of fynk's own types, with `provided_by_fynk`, is deactivated instead: it disappears from the account but can be brought back as fynk provides it with update-account-document-type and `reactivate: true`. A `customised` type loses its customisation either way, so tell the user so before going ahead with one. A type that documents or templates still use cannot be removed. The refusal says how many use it.
    Connector
    Destructive
    OAuth