Capacities-MCP-Plus
This MCP server provides comprehensive integration with Capacities knowledge management system, enabling AI assistants to read, search, and write content to your personal knowledge base.
Core Capabilities:
• List Spaces - Retrieve all your personal Capacities workspaces
• Space Information - Access detailed structures, collections, and metadata for specific spaces by ID
• Search Content - Perform full-text or title-only searches across spaces with optional filtering by space IDs and structure types
• Read Object Content - Retrieve complete note content by UUID, using direct API access with intelligent fallback to search aggregation, enhanced by an optional title parameter
• Save Weblinks - Bookmark URLs to spaces with optional metadata including custom titles, descriptions, markdown notes, and tags (up to 30 tags, with automatic creation if exact matches don't exist)
• Daily Notes - Append markdown content to today's daily note in any space, with options to specify origin or suppress timestamps
Key Features: All read operations are non-destructive (readOnly), supports UUID-based object identification, markdown formatting throughout, and rate-limited API access per Capacities specifications.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Capacities-MCP-Plussearch for meeting notes about the Q3 project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Capacities MCP Plus
An enhanced MCP (Model Context Protocol) server for Capacities, providing seamless integration with your knowledge management system.
Note: This is a fork of jemgold/capacities-mcp with additional features and fixes.
What's Different from the Original
Feature | Original | Plus |
Read Object Content | Not available | Retrieve full note content by object ID |
fastmcp Version | 1.27.3 | 3.25.4 (fixes MCP SDK compatibility) |
Windows Support | May have issues | Tested with cmd wrapper |
npm Package |
|
|
New Tool: capacities_read_object_content
Retrieve the full content of any Capacities object by its ID:
Tries undocumented API endpoints first for direct retrieval
Falls back to search API aggregation when direct access unavailable
Provides title parameter to improve search accuracy
Related MCP server: NOUZ MCP Server
Features
This MCP server provides access to all current Capacities API endpoints:
List Spaces - Get all your personal spaces
Space Information - Retrieve detailed space structures and collections
Search Content - Search across spaces with advanced filtering
Read Object Content - Retrieve full note content by object ID
Save Weblinks - Save URLs to your spaces with metadata
Daily Notes - Add content to your daily notes
Installation
For Claude Desktop (macOS)
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"capacities": {
"command": "npx",
"args": ["-y", "capacities-mcp-plus"],
"env": {
"CAPACITIES_API_KEY": "your_capacities_api_key_here"
}
}
}
}For Claude Desktop (Windows)
Windows requires a cmd wrapper. Add to %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"capacities": {
"command": "cmd",
"args": ["/c", "npx", "-y", "capacities-mcp-plus"],
"env": {
"CAPACITIES_API_KEY": "your_capacities_api_key_here"
}
}
}
}Get your Capacities API key from your Capacities account settings.
That's it! The server will be automatically downloaded and run when Claude Desktop starts.
Development
Local Setup
For local development, you'll need to clone and build the project:
Clone this repository:
git clone https://github.com/Im-Hal-9K/capacities-mcp.git
cd capacities-mcpInstall dependencies:
npm install
# or
bun installCopy the example environment file:
cp .env.example .envAdd your Capacities API key to
.env:
CAPACITIES_API_KEY=your_api_key_hereBuild the server:
npm run buildRunning the Server
Start the development server with interactive mode:
bun run devFor production use:
npm run startTo inspect the server tools and schema:
bun run inspectTesting
Run the test suite:
bun run testCode Quality
Check linting and types:
bun run lintFormat code:
bun run formatAPI Reference
Get your Capacities API key from your Capacities account settings.
For detailed API documentation, see:
Available Tools
capacities_list_spaces
Get a list of all your personal spaces.
capacities_get_space_info
Get detailed information about a specific space, including structures and collections.
spaceId: UUID of the space
capacities_search
Search for content across your spaces with optional filtering.
searchTerm: Text to search for
spaceIds: Array of space UUIDs to search in
mode (optional): "fullText" or "title" search mode
filterStructureIds (optional): Filter by specific structure types
capacities_read_object_content
Retrieve the full content of a Capacities object by its ID.
objectId: UUID of the object to retrieve (can be obtained from 'Copy object reference' in Capacities)
spaceId: UUID of the space containing the object
title (optional): The title or partial title of the object - strongly recommended to improve search results
How it works:
First attempts to use undocumented GET endpoints for direct object retrieval
Falls back to search API, aggregating content from highlights and snippets
Filters search results by object ID to find exact match
Note: When using search fallback, content may be incomplete as it's assembled from search snippets. Providing the title parameter significantly improves results.
capacities_save_weblink
Save a web link to a space with optional metadata.
spaceId: UUID of the target space
url: The URL to save
titleOverwrite (optional): Custom title for the link
descriptionOverwrite (optional): Description text
tags (optional): Array of tags. Tags need to exactly match your tag names in Capacities, otherwise they will be created.
mdText (optional): Text formatted as markdown that will be added to the notes section
capacities_save_to_daily_note
Add markdown content to today's daily note in a space.
spaceId: UUID of the target space
mdText: Markdown content to add
origin (optional): Origin label for the content (only "commandPalette" is supported)
noTimestamp (optional): If true, no timestamp will be added to the note
Rate Limits
The Capacities API has the following rate limits:
/spaces: 5 requests per 60 seconds/space-info: 5 requests per 60 seconds/search: 120 requests per 60 seconds/save-weblink: 10 requests per 60 seconds/save-to-daily-note: 5 requests per 60 seconds
Example Prompts
Here are some example prompts you can use with Claude when this MCP server is configured:
Getting Started
"Show me all my Capacities spaces"
"What spaces do I have in Capacities?"Exploring Your Knowledge Base
"Get detailed information about my main workspace in Capacities"
"What structures and collections are in my [space name] space?"Searching Content
"Search for 'project management' across all my Capacities spaces"
"Find all notes mentioning 'machine learning' in my research space"
"Search for 'meeting notes' but only check titles, not full content"Reading Content
"Read the content of object [object-id] from my research space"
"Get the full note content for [title] in my workspace"Saving Information
"Save this article to my research space: https://example.com/article"
"Bookmark this GitHub repo in my coding space with tags 'javascript' and 'tools'"
"Save this link with a custom title and description to my resources space"Daily Notes
"Add a summary of today's key insights to my daily note"
"Save these meeting notes to today's daily note in my work space"
"Add this quote to my daily note: [your quote here]"Advanced Usage
"Search for 'productivity' in my work and personal spaces, but filter to only show task-related structures"
"Save this research paper to my academic space and add it to today's daily note as well"
"Find all my notes about 'AI tools' and then save the best ones as bookmarks"Credits
License
MIT - see LICENSE file for details.
Available Tools
6 toolscapacities_get_space_infoARead-only
Get detailed information about a specific Capacities space including structures and collections
| Name | Required | Description | Default |
|---|---|---|---|
| spaceId | Yes | The UUID of the space to get information for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, indicating this is a safe read operation that may return varying data. The description adds value by specifying what information is included ('structures and collections'), which provides useful context beyond the annotations. However, it doesn't mention rate limits, authentication needs, or response format details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose and includes relevant scope details ('including structures and collections'). There's no wasted language, and every element serves to clarify the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with one parameter and good annotations, the description is reasonably complete. It specifies what information is returned, which compensates for the lack of an output schema. However, it could be more complete by mentioning the response format or any limitations, though annotations cover the safety profile adequately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single parameter 'spaceId' fully documented as 'The UUID of the space to get information for'. The description doesn't add any additional parameter semantics beyond what the schema provides, so it meets the baseline for high schema coverage without compensating with extra details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information') and resource ('a specific Capacities space'), including scope ('including structures and collections'). It distinguishes from 'capacities_list_spaces' by focusing on a single space rather than listing multiple spaces, but doesn't explicitly differentiate from other siblings like 'capacities_search'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through 'a specific Capacities space' and the required spaceId parameter, suggesting this tool is for retrieving details about a known space. However, it doesn't provide explicit guidance on when to use this versus alternatives like 'capacities_search' or mention any prerequisites beyond having a space ID.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capacities_list_spacesBRead-only
Get a list of all personal spaces in Capacities
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and openWorldHint=true, indicating this is a safe read operation that may return incomplete data. The description adds minimal behavioral context beyond this—it specifies 'all personal spaces' but doesn't mention pagination, rate limits, or what 'personal spaces' entails. With annotations covering safety, a 3 is appropriate as the description adds some value but not rich behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It's front-loaded with the core action and resource, making it easy to scan. Every part of the sentence earns its place by conveying essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, read-only operation), the description is adequate but has gaps. Annotations cover safety, but there's no output schema, so the description doesn't explain return values (e.g., format of the list). For a list operation, more context on output structure would be helpful, but the description meets minimum viability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%, so there are no parameters to document. The description correctly doesn't mention any parameters, which is appropriate. Baseline for 0 parameters is 4, as no parameter semantics are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get a list') and resource ('all personal spaces in Capacities'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'capacities_get_space_info' (which presumably gets details for a specific space), but the scope is clear. The description avoids tautology by not just repeating the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'capacities_search' (which might search within spaces) or 'capacities_get_space_info' (which gets details for a specific space), nor does it specify any prerequisites or contexts for use. The agent must infer usage from the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capacities_read_object_contentARead-only
Retrieve the full content of a Capacities object by its ID. Optionally provide a title or search term to improve results. This tries undocumented endpoints first, then falls back to search API aggregation.
| Name | Required | Description | Default |
|---|---|---|---|
| objectId | Yes | The UUID of the object to retrieve. You can get this from 'Copy object reference' in Capacities. | |
| spaceId | Yes | The UUID of the space containing the object | |
| title | No | Optional: The title or partial title of the object to search for. This improves search results. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, indicating a safe read operation with potential for unknown endpoints. The description adds valuable context beyond this: it discloses the fallback behavior to search API aggregation and mentions undocumented endpoints, which helps the agent understand reliability and performance implications. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and includes two additional sentences that add context without unnecessary detail. It's appropriately sized, though the second sentence could be slightly more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read operation with annotations covering safety and open-world hints, and no output schema, the description provides adequate context on behavior (fallback mechanism) but lacks details on return values or error handling. It's complete enough for basic use but has gaps in output expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all parameters. The description adds minimal semantics by noting that the title parameter 'improves search results,' but this is redundant with the schema's description. Baseline 3 is appropriate as the schema carries the burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Retrieve') and resource ('full content of a Capacities object by its ID'), making the purpose specific. However, it doesn't explicitly distinguish this tool from sibling tools like 'capacities_search', which might also retrieve content, though the focus on a specific object ID provides some implicit differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by mentioning that it 'tries undocumented endpoints first, then falls back to search API aggregation,' which suggests a fallback mechanism but doesn't explicitly state when to use this tool versus alternatives like 'capacities_search'. No clear exclusions or prerequisites are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capacities_save_to_daily_noteB
Add markdown text to today's daily note in a Capacities space
| Name | Required | Description | Default |
|---|---|---|---|
| spaceId | Yes | The UUID of the space to save to the daily note | |
| mdText | Yes | The markdown text to add to today's daily note | |
| origin | No | Optional origin label for the content (only 'commandPalette' is supported) | |
| noTimestamp | No | If true, no time stamp will be added to the note |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false (implying a write operation) and openWorldHint=true (suggesting flexible use), which the description aligns with by describing an 'Add' action. However, it doesn't add significant behavioral context beyond annotations, such as whether the text is appended or overwritten, or any rate limits or permissions needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action and resource without unnecessary details. It's appropriately sized for the tool's complexity, with zero waste or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (4 parameters, no output schema) and rich annotations, the description is minimally adequate. It covers the basic purpose but lacks details on usage context, behavioral nuances, or output expectations, leaving gaps that could hinder an AI agent's effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the input schema fully documents all parameters, including mdText, noTimestamp, origin, and spaceId. The description mentions 'markdown text' and 'today's daily note', which loosely maps to mdText and implies a date context, but adds minimal semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add markdown text') and target resource ('today's daily note in a Capacities space'), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like capacities_save_weblink, which might also involve saving content but to different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as capacities_save_weblink for saving links or capacities_search for finding notes. It lacks context on prerequisites (e.g., needing a valid spaceId) or exclusions, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capacities_save_weblinkA
Save a web link to a Capacities space with optional title and tags
| Name | Required | Description | Default |
|---|---|---|---|
| spaceId | Yes | The UUID of the space to save the weblink to | |
| url | Yes | The URL to save | |
| titleOverwrite | No | Optional custom title for the weblink | |
| descriptionOverwrite | No | Optional description for the weblink | |
| tags | No | Optional Tags to add to the weblink. Tags need to exactly match your tag names in Capacities, otherwise they will be created. | |
| mdText | No | Text formatted as markdown that will be added to the notes section |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false (mutation) and openWorldHint=true (supports flexible inputs), which the description aligns with by describing a save operation. It adds context about tag creation if names don't match, but doesn't disclose other behavioral traits like error handling, rate limits, or authentication needs beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose and lists optional features. Every word contributes to understanding without redundancy or unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and rich annotations, the description adequately covers the basic operation but lacks details on return values, error conditions, or integration with sibling tools. It's minimally viable given the context but has clear gaps in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are fully documented in the schema. The description mentions optional title and tags, which map to titleOverwrite and tags parameters, but adds no additional meaning beyond what the schema already provides (e.g., no usage examples or edge cases).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Save a web link') and target resource ('to a Capacities space'), specifying optional features (title and tags). It distinguishes from siblings like capacities_get_space_info (read-only info) and capacities_save_to_daily_note (different target), but doesn't explicitly differentiate from capacities_search (search vs. save).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for saving web links with metadata to a space, but provides no explicit guidance on when to use this tool versus alternatives like capacities_save_to_daily_note (for daily notes) or capacities_search (for finding content). No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capacities_searchARead-only
Search for content across Capacities spaces with optional filtering
| Name | Required | Description | Default |
|---|---|---|---|
| searchTerm | Yes | The search term to look for | |
| spaceIds | Yes | Array of space UUIDs to search in | |
| mode | No | Search mode: fullText or title only | title |
| filterStructureIds | No | Optional array of structure IDs to filter results |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, indicating a safe, exploratory operation. The description adds minimal behavioral context beyond this, such as mentioning 'optional filtering' but not detailing result formats, pagination, or error handling. It doesn't contradict annotations, so it earns a baseline score for adding some value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('Search for content') and includes key details ('across Capacities spaces with optional filtering'). There is no wasted verbiage, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (4 parameters, no output schema) and rich annotations, the description is adequate but lacks details on output format or error scenarios. It covers the basic purpose but doesn't fully compensate for the absence of an output schema, leaving gaps in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all parameters. The description mentions 'optional filtering' but doesn't add specific meaning beyond what the schema provides, such as explaining how filtering interacts with search modes. This aligns with the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Search') and resource ('content across Capacities spaces'), making the purpose evident. However, it doesn't explicitly differentiate from sibling tools like 'capacities_list_spaces' or 'capacities_save_to_daily_note', which reduces it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through 'optional filtering' but doesn't specify when to use this tool versus alternatives like 'capacities_list_spaces' for listing spaces or 'capacities_save_to_daily_note' for saving content. It provides some context but lacks explicit guidance on exclusions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
- First observed
capacities_get_space_info - First observed
capacities_list_spaces - First observed
capacities_read_object_content - First observed
capacities_save_to_daily_note - First observed
capacities_save_weblink - First observed
capacities_search
TDQS
Scored across 6 tools
Most tools have clearly distinct purposes: get_space_info, list_spaces, read_object_content, save_to_daily_note, save_weblink, and search. However, read_object_content and search could potentially overlap in some retrieval scenarios, though their descriptions help differentiate them (one retrieves specific object content, the other searches across spaces).
All tools follow a consistent naming pattern: 'capacities_' prefix followed by a descriptive verb_noun combination (e.g., get_space_info, list_spaces, read_object_content). This makes the tool set predictable and easy to understand at a glance.
With 6 tools, this server is well-scoped for its purpose of interacting with Capacities spaces. Each tool serves a distinct function (info retrieval, listing, content reading, saving notes/links, and searching), and none feel redundant or unnecessary for the domain.
The tool set covers core operations for the Capacities domain: reading (get_space_info, list_spaces, read_object_content, search) and writing (save_to_daily_note, save_weblink). A minor gap is the lack of update or delete operations for objects, but agents can likely work around this given the focus on retrieval and basic saving.
Maintenance
Related MCP Connectors
Personal knowledge base MCP server with semantic search, auto-categorization, metadata extraction
MCP-native open-source Notion alternative: read & write pages, databases and kanban boards.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Zotero MCP server for Claude and ChatGPT: search, citations, safe writes, PDF passages and pages.
Related MCP Servers
- AlicenseAqualityFmaintenanceProvides seamless integration with Capacities knowledge management system, allowing Claude to list spaces, retrieve space information, search content, save weblinks, and add content to daily notes.58 npm41MIT
- AlicenseAqualityAmaintenanceMCP Server for local knowledge management. Semantic + keywords + tags8155 PyPI19MIT
- AlicenseCqualityDmaintenanceEnables interaction with the Capacities.io note-taking API via MCP, supporting operations like searching content, saving weblinks, and appending to daily notes.513MIT
- AlicenseNot gradedqualityAmaintenanceEnables search, content creation, weblink saving, and knowledge base analysis with Capacities through any MCP-compatible client.7MIT