80trust / 100

Dutify

by dutify.ai in Developer tools

MCP serverPassing, checked 3 h ago

Whole Dutify suite in one server: Hub call recordings, projects, Codexum wiki, Roadmarq requests.

https://mcp.dutify.ai
Tools
191
open to any client
Uptime
95.5%
last 30 days
Response time
364 ms
416 ms slowest 5%
Last check
Passed
3 h ago, next in 3 h

Scan it nowHow to connect

Reliability

All checks passedSome failedAll failedNot checked

Status and outage history · Atom feed · Watch with other listings

How to connect

Add it to any MCP client that supports remote servers.

{
  "mcpServers": {
    "dutify": {
      "type": "http",
      "url": "https://mcp.dutify.ai"
    }
  }
}

191 tools

  • whoami

    Unified Dutify whoami: fresh credential/workspace discovery. Does not require a selected workspace or reserve quota.

  • list_accounts

    List the accounts configured for this MCP session. Returns one entry per account with `name` (the label the caller passes as the `account` tool argument) and `workspace` (the workspace identifier or name declared for that account). API keys are not returned. In single-account…

  • find_my_workspace

    Unified Dutify find_my_workspace: fresh credential/workspace discovery. Does not require a selected workspace or reserve quota.

  • list_workspaces

    Unified Dutify list_workspaces: fresh credential/workspace discovery. Does not require a selected workspace or reserve quota.

  • list_boards

    List feature-request boards the caller can view in the current workspace. Each entry includes the board slug and the short-ID prefixes (featureRequestKey, bugReportKey) needed to address requests/bugs in follow-up tool calls.

  • list_spaces

    List wiki spaces the caller can view in the current workspace, each with a page count. Use the `key` field as the space identifier in follow-up wiki tool calls.

  • get_endpoint_examples

    Fetch the request/response example payloads (full JSON values) for a Dutify API resource tag. Use this when you're about to write rich content via a tool that accepts a TipTap `content` parameter (e.g. wiki_create_page) and need a concrete reference of what the doc shape looks…

  • wiki_search

    Find wiki PAGES by title/keyword in the current workspace. Returns a list of matching pages (slug, title, spaceKey, spaceName, excerpt, status, updatedAt) — no UUIDs, no full body. Use this to LOCATE or LIST pages (then call wiki_get_page to read one). To ANSWER a question FROM…

  • wiki_retrieve

    Search the wiki by MEANING and get back the most relevant PASSAGES (chunks) with citations and relevance scores. Use this to GROUND or ANSWER a question from wiki content: it returns quotable chunkText plus the source page/section so you can cite it. Each result has pageSlug…

  • wiki_list_pages

    List wiki pages in a space. Without `parent` returns root-level pages; pass a parent slug to list that page's children. Response items have slug, title, status, type (page|folder), parentSlug, updatedAt — no bodies. Page results include webUrl: a browser link requiring normal…

  • wiki_get_page

    Get a wiki page by slug within a space. Default format is Markdown (the body is returned under the `markdown` field); pass format="tiptap" for raw ProseMirror JSON. Page results include webUrl: a browser link requiring normal workspace access. Use it for citations; it does not…

  • wiki_create_page

    Create a wiki page under a space. Pass EITHER `markdown` (simpler, server converts to TipTap) OR `content` (TipTap/ProseMirror JSON, mutually exclusive with markdown). Use `content` when you need rich features that markdown can't express — banners, collapsibles, mermaid…

  • wiki_update_page

    Update an existing wiki page by slug. Any field left unset preserves the current value. Pass EITHER `markdown` OR `content` (TipTap/ProseMirror JSON) for the body — they're mutually exclusive. Use `content` for rich features (banners, collapsibles, mermaid, etc.); call…

  • wiki_move_page

    Move a wiki page to a new parent and/or a new space. All body fields are optional and use slugs (resolved server-side in the target space) instead of UUIDs: `targetSpaceKey` for cross-space moves (omit to stay in the current space); `newParent` is the slug of the new parent page…

  • wiki_delete_page

    Archive (soft-delete) or permanently delete a wiki page by slug. Falls through to the non-lite Wiki Pages API since there is no lite delete endpoint — path is `DELETE /v1/workspaces/{workspaceIdentifier}/wiki/spaces/{spaceKey}/pages/{slug}` with optional `?permanent=true`…

  • wiki_get_page_share

    Get the public SHARE-LINK status for a single page (PublicShareInfoDTO): `isEnabled`, `publicToken`, `publicUrl` (the shareable link), `showAuthor`, `sharedAt`, `sharedBy`, `workspaceAllowsSharing`. A per-page share link lets anyone with the URL read just that one page…

  • wiki_enable_page_share

    Enable a public SHARE LINK for a single page, returning a PublicShareInfoDTO with the `publicUrl` to hand out. Optional `token` sets a custom URL slug (3-100 chars, lowercase letters/digits/hyphens; 409 if already taken — omit to auto-generate). Optional `showAuthor` toggles…

  • wiki_disable_page_share

    Disable the public share link for a single page, revoking access via its URL (returns 204). Requires edit access. API-key scope: `wiki:pages:write`.

  • wiki_list_spaces

    List every wiki space the caller can see in the current workspace. Each entry has the space's `key` (use this in subsequent calls), `name`, `description`, `effectivePermission` (view/edit/admin), and `canView`/`canEdit`/`canAdmin` booleans for quick gating. Call this first when…

  • wiki_get_space

    Fetch a single wiki space by key. Returns the WikiSpaceDTO (id, key, name, description, icon, color, cover image, visibility flags, permissions, timestamps). For the page tree inside the space, use wiki_get_space_with_pages instead. API-key scope: `wiki:spaces:read`.

  • wiki_get_space_with_pages

    Fetch a wiki space AND its complete page tree in one call. Returns WikiSpaceWithPagesDTO — space metadata plus `pages` (a recursive tree of WikiPageTreeNodeDTO with slug, title, type=page|folder, hasChildren, children[], view count, top reactions, the caller's…

  • wiki_create_space

    Create a new wiki space in the current workspace. `key` is the unique short identifier used in URLs and subsequent API calls — uppercase letters + digits only, 2-20 chars, must start with a letter (e.g. "DOCS", "ENG2"). `name` is the human display name. Defaults: `isPublic…

  • wiki_update_space

    Update a wiki space's metadata. All fields are optional — pass only what you want to change. The space key cannot be changed. Requires edit access to the space. API-key scope: `wiki:spaces:write`.

  • wiki_delete_space

    PERMANENTLY delete a wiki space AND every page inside it. Requires admin access to the space. This is destructive — surface a clear confirmation to the user before calling. Returns 204. API-key scope: `wiki:spaces:write`.

  • wiki_get_public_settings

    Get a space's PUBLIC-WEB publishing settings (PublicSpaceSettingsDTO): `isEnabled` (is the space published to the public internet), `customSlug` (public URL slug), `allowedEmojis`, `showReactions`, `showPageViews`, `showLastUpdated`, `showAuthor`, `viewMode`…

  • wiki_check_public_slug

    Check whether a public URL slug is available and validly formatted for a space, before publishing. Returns a SlugAvailabilityDTO. Call this when choosing a `customSlug` for wiki_set_public_settings. Requires space admin. API-key scope: `wiki:spaces:read`.

  • wiki_set_public_settings

    Publish / unpublish a space to the PUBLIC INTERNET, or update its public-site config. This is the REAL publish switch — NOT the space `isPublic` flag (which is internal visibility). Pass only the fields you want to change: `isEnabled` (true = publish to the web, false = take…

  • wiki_list_attachments

    List every attachment on a wiki page (WikiAttachmentDTO[]): id, pageId, filename, contentType, sizeBytes, status (pending|confirmed|failed), uploadedBy/At, confirmedAt. `pageId` is the page UUID (from wiki_get_space_with_pages tree node `id`, not the slug). Use to find an…

  • wiki_request_attachment_upload

    Step 1 of uploading an image/file to a wiki page. Returns { attachmentId, uploadUrl, storageKey }. AFTER calling this you MUST: (2) PUT the raw file bytes to `uploadUrl` with your OWN HTTP client — the MCP server cannot do this binary upload — sending the EXACT same…

  • wiki_confirm_attachment

    Step 3 of uploading: confirm that the bytes were successfully PUT to the presigned `uploadUrl`, activating the attachment. Returns the WikiAttachmentDTO (status becomes "confirmed"). Call only after the byte PUT succeeded. API-key scope: `wiki:attachments:write`.

  • wiki_delete_attachment

    Permanently delete an attachment and its stored file (returns 204). Useful for cleaning up unused or leftover uploads. This does not remove image nodes that still reference it in a page body — update the page content separately if needed. API-key scope: `wiki:attachments:write`.

  • fr_list_requests

    List feature requests on a feedback board (by board slug). Filter by status / category / milestone name (lenient — trimmed + case-insensitive). Pass `q` to search request titles instead. Paginated via page/size. API-key scope: `feedback:requests:read`.

  • fr_get_request

    Get a feature request by short ID (e.g. "FR-42"). Returns full detail: title, description, status, category, milestone, voteCount, commentCount, reactions. Internal notes and linkedTaskIds are populated only when the caller has `View Internal Data` permission. API-key scope…

  • fr_create_request

    Create a new feature request on a board. Category is resolved by name (lenient match). No turnstile token required — API-key authentication is sufficient. Returns the new request with assigned shortId. API-key scope: `feedback:requests:write`.

  • fr_set_request_status

    Change a feature request's status by name. The name is resolved leniently against the request's board's status set (trim + case-insensitive). Returns the updated request detail. API-key scope: `feedback:requests:write`.

  • fr_comment_request

    Add a comment to a feature request. Pass isInternal=true to make the comment visible only to users with `View Internal Data` permission. API-key scope: `feedback:comments:write`.

  • fr_vote_request

    Toggle a vote or emoji reaction on a feature request. Passing emoji=null or omitting the field registers a plain upvote. Calling the tool again with the same emoji removes the vote (idempotent toggle). API-key scope: `feedback:votes:write`.

  • fr_moderate_request

    Approve, reject, or mark a feature request as spam. Action is case-insensitive. Requires `Manage Queue` permission. API-key scope: `feedback:moderation:write`.

  • fr_delete_request

    Permanently delete a feature request. Requires `Manage Queue` permission. Returns 204 on success. This operation is irreversible — confirm with the user before calling unless the intent is unambiguous. API-key scope: `feedback:requests:write`.

  • fr_list_bugs

    List bug reports on a feedback board (by board slug). Filter by severity and/or status name (lenient match). API-key scope: `feedback:bugs:read`.

Security scan

1 finding

  • Unusually long description in tool:pm_list_reference_data
    pm_list_reference_data (pm list reference data) List a Dutify reference-data enu…

Recent checks

WhenResultHTTPTime
3 h agoPassed200369 ms
17 h agoPassed200366 ms
31 h agoPassed200408 ms
46 h agoPassed200367 ms
3 days agoPassed200268 ms
Show 10 older checks
3 days agoPassed200416 ms
4 days agoPassed200352 ms
4 days agoPassed200380 ms
5 days agoPassed200345 ms
5 days agoPassed200344 ms
6 days agoPassed200364 ms
6 days agoPassed200353 ms
7 days agoTimed out--
7 days agoPassed200315 ms
8 days agoPassed200394 ms