Capacities MCP Enhanced
The Capacities MCP server provides comprehensive read-write access to a Capacities knowledge base, enabling AI agents to:
Discover and Read:
inspect_spaceto explore object types, properties, labels, and write options.search_objectsto find objects by title, optionally filtered.get_objectto retrieve full content as structured JSON or Markdown.
Create New Objects:
create_objectfor pages, tasks, tags, or custom objects with structured blocks.create_object_markdownfrom a Markdown string.create_object_from_urlandcreate_object_from_url_markdownto save web resources with notes.
Modify Content:
update_objectto change titles, typed properties, and collections.append_contentandappend_content_markdownto add blocks/Markdown.update_blockfor precise editing anddelete_blockfor removal.delete_objectto trash or permanently delete.
Daily Notes:
append_daily_noteandappend_daily_note_markdownto add content to today's or specific daily notes.
Media Uploads:
upload_filesto stream local files as media objects with verification.manage_upload_jobto monitor, wait for, or cancel uploads.
Reliability and Rich Features: API key pooling with rate-limit failover, concurrency-safe write locks, readback verification after mutations, support for rich content (headings, lists, code, math, etc.), and Markdown conversion loss reports.
Click on "Install 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 Enhancedsearch for 'project plan' objects"
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 Enhanced — API 2.0 for AI Agents
The official MCP server sucks, it's time to make a new one.
Built for the new Capacities API 2.0 with native precise block level CRUD support.
Capacities MCP brings rich, read-write access to your knowledge base through one agent-friendly server. Agents can discover your object types, understand custom properties, create polished content, make precise edits, save web resources, and work with Daily Notes.
✨ Why Capacities MCP Enhanced
✍️ Markdown & structured block authoring — combine fast Markdown workflows with precise Capacities-native block editing in one server.
🧩 Full CRUD with Capacities API 2.0 — objects, custom properties, collections, blocks, web links, tasks, tags, and Daily Notes.
🤖 Designed for autonomous agents — live schema discovery, consistent responses, focused tools, and clear recovery information.
📤 Agent-friendly MCP file uploads — support multi-file and large-file uploads with built-in MCP progress reporting, streaming transfers, upload verification, and long-running job tracking.
🔑 API key pooling — distribute requests across multiple API keys, improve throughput under rate limits, and provide resilient API access for high-volume workloads.
🔒 Concurrency-safe object operations — same-object reads can run concurrently, while writes use an exclusive lock and automatically wait for active reads or other writes; different objects proceed concurrently.
🎨 Faithful rich content — headings, nested blocks, grids, toggles, tasks, links, entity references, colors, code, and math.
📚 Bundled best-practice skill — a complete agent operating guide is included, so a model can use the server correctly without already knowing Capacities.
Related MCP server: SpaceTraders MCP Server
🚀 Quick start
Requirements
Node.js 20+ or Bun 1.3+
One or more personal API keys from the new Capacities API with the permissions you need
Installation
Configure your MCP client to use the Capacities MCP server:
Generate a token in Capacities → Settings → Capacities API → Generate new token. New API tokens begin with cap-api-.
Configuring at least 3 tokens with same space and permissions is recommended to avoid rate-limit errors.
Claude Code
{
"mcpServers": {
"capacities": {
"command": "npx",
"args": ["--yes", "capacities-mcp-enhanced@latest"],
"env": {
"CAPACITIES_API_TOKEN": "cap-api-key-1,cap-api-key-2;cap-api-key-3"
}
}
}
}Hermes Agent
mcp_servers:
capacities:
command: "npx"
args:
- "--yes"
- "capacities-mcp-enhanced@latest"
env:
CAPACITIES_API_TOKEN: "cap-api-key-1,cap-api-key-2;cap-api-key-3"
supports_parallel_tool_calls: trueInstall the bundled skills (Optional)
By installing the Capacities MCP Best Practices skill, your agent can learn the full workflow, strict content schemas, safe mutation patterns, rate-limit recovery, and common pitfalls.
npx skills add nyrest/capacities-mcp-enhanced🧰 What agents can do
Category | Tool | What it does |
Discover and read |
| Discover structures, properties, labels, and available write options. |
Discover and read |
| Find objects by title, optionally within selected structures. |
Discover and read |
| List cursor-paginated object summaries by structure, tag, or collection. |
Discover and read |
| Read a complete object as structured content or Markdown. |
Create objects |
| Create a Page, Task, Tag, or custom object with structured content. |
Create objects |
| Create an object from a Markdown document. |
Create objects |
| Save a web resource with structured notes. |
Create objects |
| Save a web resource with Markdown notes. |
Update content |
| Update titles, typed properties, and collections. |
Update content |
| Add structured blocks to an object. |
Update content |
| Add Markdown content to an object. |
Update content |
| Precisely edit one existing block. |
Update content |
| Remove one block and its nested content. |
Update content |
| Move an object to trash or permanently delete it when explicitly requested. |
Daily Notes |
| Add structured blocks to today's or a dated Daily Note. |
Daily Notes |
| Add Markdown to today's or a dated Daily Note. |
Media uploads |
| Stream one or more local files into Capacities media objects with readback verification. |
Media uploads |
| Inspect, wait for, or cancel an in-process background upload job. |
search_objects is title-only discovery. Use list_objects when you already know a structure, tag UUID, or collection UUID and need membership listing; follow nextCursor while hasMore is true, then pass selected object IDs to get_object for full content.
upload_files accepts absolute local file paths only; relative paths, directories, and empty files are rejected. Background upload jobs live only in the current MCP process and retain terminal status for a limited time.
Supported environment variables and configuration options
Setting | Required | Default | Description |
| Yes, unless every call supplies | — | One API key or a comma/semicolon-separated key pool. The keys must belong to the same space and use the same permissions. |
| No |
| Set to |
Per-call configuration is exposed through the optional apiToken argument on
all tools. It overrides CAPACITIES_API_TOKEN for that call and accepts the
same key-pool syntax.
⚙️ API key pool and rate limits
CAPACITIES_API_TOKEN and the per-call apiToken option accept multiple API
keys separated by , or ;.
Keys are selected with round-robin scheduling independently for each endpoint,
skipping keys currently marked as rate-limited.
All keys in one pool must belong to the same space and have the same permissions. At least 3 keys are recommended; use separate MCP server instances for multiple spaces.
On 429, the pool immediately fails over to another key that is not rate
limited. The error is returned only when all keys are rate limited. No waiting,
exponential backoff, or cross-pool retry is performed.
🚅 Concurrency and safe writes
Reads for the same object can run concurrently. A mutation obtains an exclusive
object lock, so it waits for active reads and other writes; reads arriving
during a write wait as well. Operations for different objects proceed
concurrently. This protects the full read → mutate → readback lifecycle against
last-write-wins races.
The Capacities SDK does not expose request cancellation/timeout configuration, so ordinary SDK-backed calls do not use an unsafe client-side timeout race. Multipart media upload is the sole direct-HTTP path: it retains native AbortSignal cancellation, explicit per-part progress, pooled-key failover, and independent SDK readback verification.
🛠️ Development
bun run lint
bun run typecheck
bun test
bun run build
bun run verify:toolsThe final local release gate is:
npm run release:check
npm publish --dry-run --access publicnpm publish --dry-run validates the package without publishing it. Actual
publishing additionally requires an authenticated npm account.
Live API tests are available through bun run test:live when a dedicated test token is configured.
📚 Documentation
Maintenance
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceA local MCP server that enables AI applications like Claude Desktop to securely access and work with Obsidian vaults, providing capabilities for reading notes, executing templates, and performing semantic searches.831MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI agents to interact with the SpaceTraders API, managing agents, fleets, contracts, and trading operations in the SpaceTraders universe.MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for AI agents to read, write, and organize notes in a local-first, human-in-the-loop note-taking app.01MIT
- AlicenseNot gradedqualityAmaintenanceAn MCP server that enables AI agents to read, search, and write to your Obsidian vault.4MIT
Related MCP Connectors
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Nyrest/capacities-mcp-enhanced'
If you have feedback or need assistance with the MCP directory API, please join our Discord server