Developers · Model Context Protocol
Ditfa MCP server
One MCP server for your whole Ditfa workspace. Let Claude, ChatGPT, Cursor, Antigravity or any MCP client read and edit your documents, sheets, plans, designs, sites and marketing, with exactly the access you choose.
Server URL
https://chat.ditfa.com/api/mcp- Transport
- Streamable HTTP
- Stateless JSON responses
- Auth
- Bearer key · OAuth 2.1
- PKCE + dynamic client registration
- Tools
- 117 tools
- 10 categories
- Price
- Free on every plan
- Credits only for Ditfa AI tools
Overview
The Model Context Protocol (MCP) is an open standard that lets AI apps call tools in other services. Ditfa exposes a single MCP server for the whole workspace: Docs & Office, Sheets, Architecture, CAD, 3D, Design, Studio, Library, Sites & Links and Marketing.
Each connection carries its own grant. When you create it, you pick the categories it may use and whether it can only read or also write. The server lists only the tools that grant allows, so a client never sees what it was not given, and the model's context stays small.
Every change is made as you, on your own content only. Tools return plain JSON (and images where useful, such as 3D snapshots). The server implements initialize, ping, tools/list and tools/call over Streamable HTTP with JSON responses and no sessions. Supported protocol versions: 2025-06-18, 2025-03-26, 2024-11-05.
Connect
Two ways to authenticate. Both use the same permission model.
Connection key
Open Integrations › MCP, choose Connect an app, pick categories and permissions, then copy the key. It is shown once. Send it as Authorization: Bearer <key>. Works with Claude Code, Claude Desktop, Cursor, Antigravity and any client that can set a header.
Sign in with Ditfa (OAuth)
For Claude.ai, ChatGPT and other clients that add remote MCP servers as connectors. You paste only the server URL; the client registers itself (OAuth 2.1 dynamic client registration), you sign in to Ditfa and approve the connection on a consent screen with the same category and permission picker. The authorization code exchange is protected with PKCE, and there is no key to copy.
Client setup
Replace <your-connection-key> with the key from Integrations › MCP. The in-app wizard shows the same snippets with your key filled in.
Claude Code
Connection keyclaude mcp add --transport http ditfa https://chat.ditfa.com/api/mcp \
--header "Authorization: Bearer <your-connection-key>"Then run /mcp inside Claude Code to confirm that "ditfa" is connected.
Cursor
Connection key{
"mcpServers": {
"ditfa": {
"url": "https://chat.ditfa.com/api/mcp",
"headers": {
"Authorization": "Bearer <your-connection-key>"
}
}
}
}Antigravity
Connection key{
"mcpServers": {
"ditfa": {
"serverUrl": "https://chat.ditfa.com/api/mcp",
"headers": {
"Authorization": "Bearer <your-connection-key>"
}
}
}
}Claude Desktop
Connection key{
"mcpServers": {
"ditfa": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://chat.ditfa.com/api/mcp",
"--header",
"Authorization:${DITFA_AUTH}"
],
"env": {
"DITFA_AUTH": "Bearer <your-connection-key>"
}
}
}
}Uses the mcp-remote bridge (needs Node.js). The key stays in an environment variable so the header is passed intact.
Claude.ai and ChatGPT
OAuthConnector URL: https://chat.ditfa.com/api/mcp
Authentication: OAuth (Sign in with Ditfa)Add Ditfa as a custom connector with this URL, then sign in and choose what the connector may use.
Any other client
Connection keyURL: https://chat.ditfa.com/api/mcp
Header: Authorization: Bearer <your-connection-key>Any MCP client that supports Streamable HTTP and custom headers works with this URL and key.
Client documentation: Claude custom connectors · OpenAI and MCP
Permissions
Chosen per connection when you create it, and editable at any time in Integrations › MCP.
Categories
Pick any of the ten areas. Tools outside them are not listed and cannot be called; an unknown tool and a tool outside the grant get the same answer, so a client cannot probe for them.
Read only
Look things up and read content. Nothing is changed.
Read and write
Also create and edit your own content. Nothing is ever permanently deleted: edits are saved as new versions, files are archived rather than removed, and trashed Studio items can be restored for 30 days.
Publishing and sending
A separate opt-in on top of Read and write, off by default. Currently no MCP tool publishes or sends: sites, link pages and social posts are saved as drafts that you publish yourself in Ditfa.
Ditfa AI
Tools only
Free on every planThe default. Your AI app does the thinking with its own model; Ditfa only runs the tools. No credits are used.
Allow AI tools
Plus and aboveLets the app call tools that use Ditfa's own AI (for example an AI-worded link page draft). Credits come from your plan, capped by a daily limit per connection (10 to 5,000, default 200) that resets at 00:00 UTC. Credits are reserved before the tool runs and given back if it fails.
Tools
117 tools in 10 categories. Names are prefixed by area; start with the list_* tools to find ids.
Docs & OfficeFind, read and edit documents and presentations. Every edit is saved as a new version you can restore in the app.13 tools
office_list_documentsList documents and presentationsReadoffice_search_documentsSearch documents by contentReadoffice_get_documentRead a document or presentationReadoffice_create_documentCreate a documentWriteoffice_create_presentationCreate a presentationWriteoffice_append_to_documentAppend to a documentWriteoffice_replace_in_documentReplace text in a documentWriteoffice_add_slidesAdd slides to a presentationWriteoffice_rename_documentRename a document or presentationWriteoffice_share_documentShare a document or presentation by linkPublishoffice_unshare_documentStop sharing a document or presentationPublishoffice_ai_outline_documentAI outline for a documentWriteDitfa AIoffice_ai_outline_presentationAI outline for a presentationWriteDitfa AI
SheetsRead ranges and formulas in A1 notation, search cells and apply batched edits (values, formulas, formats, new sheets). Edits apply all together or not at all; sensitive columns are masked on read.12 tools
sheets_list_workbooksList spreadsheetsReadsheets_get_sheetGet a spreadsheet overviewReadsheets_read_rangeRead cellsReadsheets_search_cellsSearch cellsReadsheets_write_cellsEdit a spreadsheetWritesheets_create_workbookCreate a spreadsheetWritesheets_rename_workbookRename a spreadsheetWritesheets_share_workbookShare or publish a spreadsheetPublishsheets_unshare_workbookMake a spreadsheet privatePublishsheets_ai_write_formulaAI: write a formulaWriteDitfa AIsheets_ai_explain_formulaAI: explain a formulaWriteDitfa AIsheets_ai_fix_formulaAI: fix a formulaWriteDitfa AI
ArchitectureInspect floor plans, run building-code checks against rule packs and edit the model through the same validated operation queue as the editor (walls, openings, rooms, levels), with dry runs and revision guards.10 tools
arch_list_projectsList architecture projectsReadarch_get_projectGet an architecture projectReadarch_inspect_elementsInspect plan elementsReadarch_run_checksRun code-compliance checksReadarch_list_versionsList project versionsReadarch_list_rule_packsList rule packsReadarch_create_projectCreate an architecture projectWritearch_rename_projectRename an architecture projectWritearch_apply_opsApply model operationsWritearch_set_visibilityPublish / unpublish an architecture projectPublish
CADWork with Ditfa Draft projects: read projects, recent operations, imported sources and templates, turn a site description into a structured brief, dry-run operation batches and create projects.10 tools
cad_list_projectsList Draft (CAD) projectsReadcad_get_projectGet a Draft projectReadcad_list_recent_opsList recent edit operationsReadcad_list_sourcesList imported source filesReadcad_list_templatesList Draft templatesReadcad_parse_site_briefParse a site descriptionReadcad_validate_opsValidate Draft operationsReadcad_create_projectCreate a Draft projectWritecad_rename_projectRename a Draft projectWritecad_set_visibilityPublish / unpublish a Draft projectPublish
3DThe same scene tools as the in-app 3D agent: create scenes, build objects from recipes, apply scene operations and materials, take snapshots and export.Requires a plan that includes Ditfa 3D.9 tools
model3d_list_scenesList 3D scenesReadmodel3d_create_sceneCreate a 3D sceneWritemodel3d_inspect_sceneInspect a 3D sceneReadmodel3d_build3dBuild 3D objects from recipesWritemodel3d_edit_recipeEdit a 3D object recipeWritemodel3d_apply_scene_opsApply scene operationsWritemodel3d_set_materialSet a materialWritemodel3d_snapshot3dTake a 3D snapshotReadmodel3d_export_forExport a 3D sceneRead
DesignList and read designs, start from a template or a blank size, edit layer text and layout, and export PNG, JPG, WebP, SVG or PDF as a private download that expires after 24 hours.11 tools
design_list_designsList saved designsReaddesign_get_designGet a designReaddesign_list_templatesList design templatesReaddesign_create_designCreate a designWritedesign_rename_designRename a designWritedesign_update_layersEdit design layersWritedesign_exportExport a designWritedesign_get_jobGet a design jobReaddesign_set_visibilityPublish or unpublish a designPublishdesign_ai_image_opAI image op on a layerWriteDitfa AIdesign_apply_image_opApply a finished image opWrite
StudioOrganise work across tools: search items, group them into projects, star them or move them to the trash (restorable for 30 days).11 tools
studio_list_itemsList Studio itemsReadstudio_search_itemsSearch Studio itemsReadstudio_list_projectsList Studio projectsReadstudio_get_projectGet a Studio projectReadstudio_list_trashList trashed itemsReadstudio_create_projectCreate a Studio projectWritestudio_update_projectUpdate a Studio projectWritestudio_move_itemMove an item into a projectWritestudio_star_itemStar or unstar an itemWritestudio_trash_itemMove an item to the trashWritestudio_set_visibilityMake an item public, unlisted or privatePublish
LibraryBrowse and search your files, read the extracted text of documents, sheets and slides, check storage, and rename, move or archive files (archiving is fully reversible).10 tools
library_list_filesList Library filesReadlibrary_search_filesSearch Library filesReadlibrary_get_fileGet a Library fileReadlibrary_read_file_textRead extracted file textReadlibrary_get_statsLibrary statisticsReadlibrary_list_foldersList Library foldersReadlibrary_update_fileRename / annotate a fileWritelibrary_move_filesMove files to a folderWritelibrary_archive_filesArchive or restore filesWritelibrary_create_temporary_linkCreate a temporary file linkPublish
Sites & LinksRead site code and analytics, save new site versions and create or edit link-in-bio pages. New versions and pages stay drafts; publishing or unpublishing a site or page needs the separate "publish" permission, and every publish runs the same safety checks as the app.18 tools
sites_listList sitesReadsites_getInspect a siteReadsites_get_versionRead a site version's codeReadsites_analyticsSite visitorsReadsites_createCreate an empty siteWritesites_update_infoRename a siteWritesites_save_versionSave new site codeWritesites_publishPublish a sitePublishsites_unpublishUnpublish a sitePublishlinks_list_pagesList link pagesReadlinks_get_pageInspect a link pageReadlinks_statsLink page statisticsReadlinks_check_slugCheck a link addressReadlinks_create_pageCreate a link page (draft)Writelinks_update_pageEdit a link pageWritelinks_publish_pagePublish a link pagePublishlinks_unpublish_pageUnpublish a link pagePublishlinks_ai_draftAI-worded link page draftWriteDitfa AI
MarketingLook up contacts, posts, automations and analytics, add or tag contacts, create social post drafts and write emails with Ditfa AI. Scheduling or cancelling a post needs the separate "publish" permission; without it, drafts wait for you in Marketing › Publish.Requires a plan with Marketing API access.13 tools
marketing_list_contactsList contactsReadmarketing_get_contactGet a contactReadmarketing_add_contactAdd or update a contactWritemarketing_tag_contactTag a contactWritemarketing_list_accountsList connected accountsReadmarketing_list_postsList postsReadmarketing_create_post_draftCreate a post draftWritemarketing_schedule_postSchedule or publish a postPublishmarketing_cancel_postCancel a scheduled postPublishmarketing_list_flowsList automationsReadmarketing_get_analyticsMarketing analyticsReadmarketing_write_emailAI: write a marketing emailWriteDitfa AImarketing_email_subjectsAI: suggest email subject linesWriteDitfa AI
Tools also follow your plan's own limits (for example project counts, 3D or Marketing access). Annotations mark read tools as read-only, and no tool is marked destructive.
Limits
Per connection, per minute unless noted. Limits may change as usage grows.
| Requests per connection | 60 / minutePro: 120 / minute. Premium: 600 / minute. Answered with HTTP 429 and a Retry-After header. |
|---|---|
| Read tool calls | 120 / minutePer connection. |
| Write tool calls | 60 / minutePer connection. |
| Ditfa AI tool calls | 20 / minutePlus the daily credit limit you set (10 to 5,000). |
| Batch size | 20 messagesJSON-RPC batches per HTTP request. |
| Tool output | 200,000 charactersLonger results are cut and say so; narrow the request. |
A rate-limited tool call returns a readable RATE_LIMITED result with the wait time, so the model can pause and retry.
Security & privacy
Least privilege by default
New connections never publish and never spend credits unless you turn those on. Grants are re-checked on every request.
Keys you control
Connection keys are shown once and stored hashed. Revoke a connection in Integrations › MCP and it stops working immediately.
Your content only
Every tool acts as the connection owner, on the owner's own content. Sensitive spreadsheet columns are masked on read, and design exports are private downloads that expire after 24 hours.
Tool output is data, not instructions
The server tells clients that text returned by tools (documents, messages, file contents) is data and must not be followed as commands. Review what your AI app proposes before approving write actions.
See also the Privacy Policy and Acceptable Use Policy.
FAQ
Does connecting an AI app to Ditfa cost anything?
No. The MCP server is free on every plan, including Free. With "Tools only" your AI app does the thinking and Ditfa only runs the tools, so no credits are used. Credits are only spent if you turn on "Allow AI tools" for a connection, and never more than the daily limit you set.
Which apps can connect?
Any MCP client that speaks Streamable HTTP. Claude Code, Cursor, Antigravity and Claude Desktop (through mcp-remote) connect today with a connection key. Claude.ai and ChatGPT custom connectors use Sign in with Ditfa (OAuth): paste the URL, sign in and choose the access on the consent screen.
Can an AI app delete my work?
No tool deletes anything for good. Edits to documents, sheets, designs and sites are saved as new versions, Library files can only be archived, and Studio items go to the trash where you can restore them for 30 days.
Can an AI app publish or send something on my behalf?
Not unless you allow it. Publishing and sending is a separate opt-in that is off by default. With it on, an app can publish or unpublish a site or link page, share a document, workbook or design, change Studio visibility and schedule a social post, and every one of these runs the same plan, consent and content checks as the app.
Why can the AI app not see a tool I expect?
A connection only lists the tools its grant allows: the categories you picked, write tools only with Read and write, AI tools only when Ditfa AI is on and your plan is Plus or above. Some categories, like 3D and Marketing, also depend on your plan.
How do I change or revoke access?
Open Integrations › MCP in Ditfa. You can edit a connection's categories and permissions at any time, and revoking it stops access immediately.
Is there one server per product?
No. One endpoint covers the whole workspace. The permission picker decides which areas a connection can use, which also keeps the tool list, and the model's context, small.
Questions or a client that does not connect? Contact us.