MCP server
Tana provides a Model Context Protocol (MCP) server that lets external AI tools connect to Tana. From a client like Claude Code or Claude Desktop, an agent can read documents, search content, create and update items, and use the same capabilities available in Tana's built-in chat.
The server lives at https://home.tana.inc/mcp, and authentication is handled automatically over OAuth. Settings, MCP has a one-click copy for the URL and ready-made configuration snippets.
MCP works in both directions. This page covers Tana as a server, external AI tools reaching into Tana. For the reverse, connecting Tana to your own MCP servers so their tools become available in chat, see Custom MCP servers in Integrations.
Claude Code
Add Tana to Claude Code with a single command:
claude mcp add tana --transport http https://home.tana.inc/mcp
The command and URL are available for one-click copy in Settings, MCP.
Claude Desktop
Claude Desktop connects to Tana through Anthropic's connectors flow. From the Settings, MCP page in Tana, follow the link to Anthropic's "Use connectors to extend Claude's capabilities" guide and add Tana with the MCP Server URL shown on the page.
Other MCP clients
Any MCP client that supports HTTP transport and OAuth can connect to https://home.tana.inc/mcp. Point the client at that URL and it goes through the same authentication flow as Claude Code and Claude Desktop.
External clients can also point directly at a calendar event URL and pull the full meeting context in a single readEvent call: participants, attendees, transcript references, screen-share screenshots, and the relatedDocs index of attached artifacts and chats. The bundled tana-cli and the URI validator accept the broader set of doc kinds (event, call, transcript, screen-share, artifact, asset, audio, video, canvas, agent, workflow, calendar-subscription) and the /o/:org/e/:event and /o/:org/c/:chat URL shapes, so you can pass a URL straight from the browser.
Available tools
The server exposes much of the same toolset the built-in AI uses, so an external agent can do many of the same things Tana's own assistant can. Tools are grouped by purpose:
Read
| Tool | Description |
|---|---|
searchItems | Full-text search across Tana. Wildcard listings (queries: ["*"]) sort results newest-first |
semanticSearchItems | Meaning-based search that finds conceptually related content |
readItems | Fetch the full content, fields, and block structure of specific documents. Distinguishes "kind I do not read" from "URI does not resolve" |
getItemInfo | Read an item's metadata and status by URI (access, owner, timestamps, proposal state, external IDs) without loading its body content |
listEdges | Find relationships between documents in the knowledge graph |
readTable | Read tabular data with cell block IDs for precise edits |
getTypes | Inspect type definitions and fields so the agent knows the shape of your data |
readSkill | Read the definition of a skill |
contextRetrieval | Gather the relevant context for a natural-language question, the way built-in chat does |
readEvent | Read a calendar event with its participants, attendees, and a relatedDocs index of every artifact, event chat, and screen-share image attached to the meeting |
readFullTranscript | Read the transcript of a meeting recording |
readScreenShareScreenshots | List and read the screenshots Tana captured during a meeting's screen shares |
listEvents | List calendar events |
listCalendars | List the user's connected calendars |
Write
| Tool | Description |
|---|---|
createItems | Create new documents |
updateItems | Edit existing documents |
deleteItems | Remove documents |
moveDocuments | Reparent documents in the graph |
rename | Rename a document, with the change going through the proposal review like any other write |
manipulateTable | Insert and update rows, columns, and cells in tables |
createArtifact | Produce structured artifacts like summaries and notes |
updateArtifact | Edit an existing artifact |
updateEvent | Edit a calendar event |
generateImageDocuments | Create image documents from prompts |
manageTypes | Create and change types and their fields |
manageSpace | Create or modify spaces |
manageAccess | Change access control for an item, the agent equivalent of the share menu |
createSkill | Author a new skill |
createAgent | Create a new agent document, with its skills and capabilities |
Proposal review
| Tool | Description |
|---|---|
listProposals | List pending proposals from a write session |
approveProposals | Apply pending proposals |
rejectProposals | Discard pending proposals |
The exact list and schemas are always available from the server itself via the standard MCP tools/list call.
How writes work
Write tools do not change your graph directly. They create proposals attached to a session, and you review them the same way you review changes from built-in chat. This keeps you in control when an external agent is doing real work on your graph.
The typical flow is:
- The agent calls a write tool. The server returns a
sessionUriand the proposed changes go into that session as pending proposals. - You open the session in Tana and review, edit, or discard the proposals. The chat opens with a short recap from the agent of what it did and why, so you have the context to continue from rather than a bare set of tiles.
- The agent can call
listProposals,approveProposals, orrejectProposalsif you have told it to, but it should not auto-approve on your behalf.
If you have already authorized a write out of band, for example through an explicit instruction to the agent or a CLI flag, the agent can pass autoApprove: true on the write call. The server then applies the proposals in the same round-trip instead of leaving them pending.
Preloaded context
When a client connects, the server sends instructions that include your identity and the members of your space. This means an agent can resolve "me", "I", and "my" to the right user URI and assign tasks or reference people by name without an extra lookup.
Custom MCP servers
MCP also runs the other way: Tana can connect to your own remote MCP servers so their tools are available to its AI chat, much like the built-in integrations. You set these up in Settings under Custom MCP servers, authorizing each server over OAuth and choosing which of its tools the AI may use. See Custom MCP servers in Integrations for the full setup.
Spotting MCP chats
A chat session that an MCP client starts shows an "MCP:" prefix on its auto-generated title in your chat list, so it is easy to spot among your other chats.

