CapacitiesMCP
Enables AI assistants to search, create, and organize content in your Capacities.io knowledge base, with limitations on reading object content due to API restrictions.
README
<p align="center"> <img src="https://img.shields.io/badge/MCP-Server-blue?style=for-the-badge" alt="MCP Server"> <img src="https://img.shields.io/badge/Capacities.io-Integration-purple?style=for-the-badge" alt="Capacities Integration"> <img src="https://img.shields.io/badge/TypeScript-007ACC?style=for-the-badge&logo=typescript&logoColor=white" alt="TypeScript"> </p>
<h1 align="center">
╔═╗┌─┐┌─┐┌─┐┌─┐┬┌┬┐┬┌─┐┌─┐
║ ├─┤├─┘├─┤│ │ │ │├┤ └─┐
╚═╝┴ ┴┴ ┴ ┴└─┘┴ ┴ ┴└─┘└─┘
╔╦╗╔═╗╔═╗
║║║║ ╠═╝
╩ ╩╚═╝╩
MCP Server for Capacities.io
</h1>
<p align="center"> <b>Search, create, and organize content in your Capacities knowledge base via AI</b> </p>
Important Limitations
The Capacities API does not support reading object content.
This MCP server can:
- Search for objects by title (returns IDs and titles only)
- Create new objects of any type
- Write to daily notes and save weblinks
This MCP server cannot:
- Read the actual content/body of any object
- Retrieve notes, documents, or page contents
- Export or analyze existing data
This is a limitation of the Capacities API, not this server. The API is in beta and Capacities may add read endpoints in the future.
What is this?
CapacitiesMCP is a Model Context Protocol server that connects AI assistants to Capacities.io for searching and creating content.
┌─────────────────────────────────────────────────────────────────┐
│ Your AI Assistant │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ CapacitiesMCP Server │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ REST API │ X-Callback URLs │ │
│ │ • Search by title │ • Create objects │ │
│ │ • List spaces │ • Open in app │ │
│ │ • Save weblinks │ • Get current object info │ │
│ │ • Add to daily note │ │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ [!] NO READ ACCESS TO OBJECT CONTENT (API limitation) │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ Capacities.io │
└─────────────────────────────────────────────────────────────────┘
What You Can Actually Do
| Feature | Works? | Requires Desktop App | Details |
|---|---|---|---|
| List your spaces | Yes | No | Get space IDs and titles |
| Search by title | Yes | No | Find objects, get IDs (not content) |
| Get object types | Yes | No | See available structures in a space |
| Create objects | Yes | Yes | Create Books, People, Meetings, custom types |
| Save weblinks | Yes | No | Clip URLs with tags and notes |
| Add to daily note | Yes | No | Append markdown to today's note |
| Open objects | Yes | Yes | Deep-link into the desktop app |
| Get current object | Yes | Yes | Get info about open object |
| Read object content | NO | - | Not possible - API limitation |
| Export data | NO | - | Not possible - API limitation |
| Get page/note body | NO | - | Not possible - API limitation |
Installation
Prerequisites
- Node.js 18+
- Capacities.io Pro subscription (required for API access)
- Capacities desktop app must be running (required for creating objects, opening objects, and getting current object info)
Quick Start
# Clone the repository
git clone https://github.com/ajokunu/capacities-mcp.git
cd capacities-mcp
# Install dependencies
npm install
# Build
npm run build
Configuration
1. Get Your API Key
Note: API access requires a Capacities Pro subscription.
- Open Capacities desktop app
- Go to Settings → Capacities API
- Generate and copy your API key
2. Configure Your MCP Client
<details> <summary><b>Claude Code</b></summary>
Add to ~/.claude/settings.json:
{
"mcpServers": {
"capacities": {
"command": "node",
"args": ["/path/to/capacities-mcp/dist/index.js"],
"env": {
"CAPACITIES_API_KEY": "your_api_key_here"
}
}
}
}
</details>
<details> <summary><b>Claude Desktop</b></summary>
Add to claude_desktop_config.json:
{
"mcpServers": {
"capacities": {
"command": "node",
"args": ["/path/to/capacities-mcp/dist/index.js"],
"env": {
"CAPACITIES_API_KEY": "your_api_key_here"
}
}
}
}
</details>
Environment Variables
| Variable | Required | Description |
|---|---|---|
CAPACITIES_API_KEY |
Yes | Your Capacities API key |
CAPACITIES_DEFAULT_SPACE_ID |
No | Default space for operations |
CAPACITIES_CALLBACK_PORT |
No | Port for x-callback responses (0 = auto) |
Available Tools
Search & Discovery
capacities_list_spaces
List all spaces you have access to.
capacities_search
Search for objects by title. Returns IDs and titles only, not content.
{
"spaceId": "uuid-of-your-space",
"searchTerm": "meeting notes"
}
capacities_get_space_info
Get info about a space including available structures.
capacities_get_object_types
List all object types (structures) available in a space.
Create & Write
capacities_create_object
Create any object type. Requires Capacities desktop app running.
{
"type": "Book",
"title": "Atomic Habits",
"content": "Key insights from the book...",
"tags": ["productivity", "habits"]
}
capacities_save_weblink
Save a URL with metadata.
{
"spaceId": "uuid",
"url": "https://example.com/article",
"title": "Great Article",
"tags": ["research"]
}
capacities_add_to_daily_note
Append content to today's daily note.
{
"spaceId": "uuid",
"content": "## Meeting Summary\n- Discussed roadmap"
}
Utility
capacities_get_current_object
Get info (URL, title) about the currently open object. Does not return content.
capacities_open_object
Open a specific object by its URL in the desktop app.
Usage Examples
Things you can ask your AI assistant:
"List all my Capacities spaces"
"Search for 'project planning' in my work space"
"Create a new Book called 'Deep Work' with notes about focus"
"Save this URL to my research space"
"Add a summary to today's daily note"
Things you cannot do:
"Read my meeting notes from last week"
"Summarize my research documents"
"Export all my notes about X topic"
Rate Limits
| Endpoint | Limit |
|---|---|
/spaces, /space-info |
5 req/60s |
/lookup |
120 req/60s |
/save-weblink |
10 req/60s |
/save-to-daily-note |
5 req/60s |
Why No Read Access?
The Capacities API is in early beta. From their docs:
"The Capacities API is in a very early stage. Many endpoints you'd expect for a REST API are not yet available."
There is no /get-object or similar endpoint. The x-callback URL scheme also only returns metadata (URL, title), not content.
If you want this feature, request it from Capacities directly.
Development
npm run dev # Watch mode
npm run typecheck # Type checking
npm run build # Build
License
MIT
<p align="center"> <sub>Built for the Capacities and MCP communities</sub><br> <sub>Waiting patiently for Capacities to add read endpoints...</sub> </p>
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。