@nestr/mcp
MCP server that connects AI assistants like Claude to your Nestr workspace, enabling task, project, role management, and organizational insights through natural language.
README
@nestr/mcp
MCP (Model Context Protocol) server for Nestr - connect AI assistants like Claude to your workspace.
What is this?
This MCP server allows AI assistants to interact with your Nestr workspace:
- Search for tasks, projects, and roles
- Create and update nests
- View organizational structure (circles, roles, accountabilities)
- Get workspace insights and metrics
- Add comments and collaborate
Quick Start
Visit mcp.nestr.io for the easiest setup with step-by-step instructions for Claude Desktop, Claude Code, and Cursor.
Claude Desktop
- Go to Settings → Connectors → Add custom connector
- Set Name to
Nestrand Remote MCP URL tohttps://mcp.nestr.io/mcp - Click "Add" then "Authenticate" to log in with Nestr
Claude Code
claude mcp add nestr --transport http https://mcp.nestr.io/mcp
Then run /mcp in Claude Code and click "Authenticate" to log in.
Using the npm Package (Local)
If you prefer to run the MCP server locally:
npx @nestr/mcp
Configure your AI client with:
{
"mcpServers": {
"nestr": {
"command": "npx",
"args": ["-y", "@nestr/mcp"],
"env": {
"NESTR_API_KEY": "your-api-key-here"
}
}
}
}
To get an API key:
- Go to your Nestr workspace
- Click Settings → Integrations → Workspace API access → Configure
- Click "New API key" and copy it
Start Using It
Ask your AI assistant things like:
- "What workspaces do I have access to?"
- "Search for tasks related to marketing"
- "Create a new project called 'Q1 Planning'"
- "What are my current projects and their status?"
- "Who is responsible for customer support?"
Available Tools
Workspace & Search
| Tool | Description |
|---|---|
nestr_list_workspaces |
List accessible workspaces |
nestr_get_workspace |
Get workspace details |
nestr_create_workspace |
Create a new workspace (OAuth only) |
nestr_search |
Search for nests (tasks, projects, roles) |
nestr_get_me |
Get current user identity and workspace list |
Nests (Tasks, Projects, Roles)
| Tool | Description |
|---|---|
nestr_get_nest |
Get details of a specific nest (supports batch fetch with comma-separated IDs) |
nestr_get_nest_children |
Get child nests |
nestr_create_nest |
Create a new nest |
nestr_update_nest |
Update nest properties |
nestr_delete_nest |
Delete a nest |
nestr_reorder_nest |
Reorder a nest relative to another |
nestr_bulk_reorder |
Bulk reorder multiple nests |
nestr_add_label |
Add a label to a nest |
nestr_remove_label |
Remove a label from a nest |
Comments & Discussion
| Tool | Description |
|---|---|
nestr_add_comment |
Add a comment to a nest |
nestr_get_comments |
Get comments/discussion on a nest |
nestr_update_comment |
Update a comment |
nestr_delete_comment |
Delete a comment |
Organization Structure
| Tool | Description |
|---|---|
nestr_list_circles |
List organizational circles |
nestr_get_circle |
Get circle details |
nestr_get_circle_roles |
Get roles in a circle with accountabilities and domains |
nestr_list_roles |
List all roles |
nestr_list_users |
List workspace members |
nestr_get_user |
Get user details |
nestr_add_workspace_user |
Add a user to the workspace |
Tensions
| Tool | Description |
|---|---|
nestr_create_tension |
Create a tension on a circle or role |
nestr_get_tension |
Get tension details |
nestr_list_tensions |
List tensions on a circle or role |
nestr_update_tension |
Update a tension |
nestr_delete_tension |
Delete a tension |
nestr_get_tension_parts |
Get proposal parts of a tension |
nestr_add_tension_part |
Add a proposal part (new/changed governance item) |
nestr_modify_tension_part |
Modify a proposal part |
nestr_remove_tension_part |
Remove a proposal part |
nestr_get_tension_part_children |
Get children (accountabilities/domains) of a proposal part |
nestr_create_tension_part_child |
Add a child to a proposal part |
nestr_update_tension_part_child |
Update a proposal part child |
nestr_delete_tension_part_child |
Delete a proposal part child |
nestr_get_tension_changes |
Preview the diff a proposal part would apply |
nestr_get_tension_status |
Get voting status for a tension |
nestr_update_tension_status |
Submit for voting or retract to draft |
Graph Links
| Tool | Description |
|---|---|
nestr_get_graph_links |
Get nests linked via a named relation (e.g., meeting agenda items) |
nestr_add_graph_link |
Create a bidirectional link between two nests |
nestr_remove_graph_link |
Remove a link between two nests |
Labels & Projects
| Tool | Description |
|---|---|
nestr_list_labels |
List workspace labels |
nestr_get_label |
Get label details |
nestr_get_projects |
List projects with status |
Insights & Apps
| Tool | Description |
|---|---|
nestr_get_insights |
Get workspace metrics |
nestr_get_insight_history |
Get historical trend data for a metric |
nestr_get_workspace_apps |
List enabled apps/features |
Personal (OAuth only)
| Tool | Description |
|---|---|
nestr_get_me |
Get current user identity and workspaces |
nestr_list_inbox |
List items in user's inbox |
nestr_create_inbox_item |
Quick capture to inbox |
nestr_get_inbox_item |
Get inbox item details |
nestr_update_inbox_item |
Update inbox item |
nestr_reorder_inbox |
Reorder inbox items |
nestr_list_personal_labels |
List user's personal labels |
nestr_create_personal_label |
Create a personal label |
nestr_get_daily_plan |
Get items marked for today |
nestr_add_to_daily_plan |
Add items to today's focus |
nestr_remove_from_daily_plan |
Remove items from today's focus |
nestr_list_my_tensions |
List tensions authored by or assigned to you |
nestr_list_tensions_awaiting_consent |
List governance proposals needing your vote |
MCP Apps (Interactive UI)
MCP Apps are interactive UI components that can be embedded in MCP clients that support them (like Claude.ai). They provide rich, visual interfaces for working with Nestr data.
Completable List
Resource URI: ui://nestr/completable-list
An interactive list for viewing and completing tasks and projects.
Features:
- Projects show a box icon, todos show a checkbox
- Check items to mark them complete (strikethrough)
- Inline editing of titles (auto-saves)
- Drag-and-drop reordering
- Shows parent path for context
- Quick link to open item in Nestr
Usage: When an AI assistant returns task or project results, supporting clients can render this interactive UI instead of plain text, allowing you to complete items, edit titles, and reorder directly in the chat.
Authentication
OAuth (Recommended)
The hosted service at mcp.nestr.io handles OAuth automatically. Just add the server and authenticate through your browser.
OAuth respects user-specific permissions - the AI assistant can only access what the authenticated user can access.
API Key
API keys provide full workspace access and work with the local npm package. See Quick Start above.
Note: API keys have full workspace access regardless of user permissions.
Environment Variables
Authentication (Required)
| Variable | Description |
|---|---|
NESTR_API_KEY |
Nestr API key (full workspace access) |
NESTR_OAUTH_TOKEN |
OAuth token (respects user permissions) |
* Either NESTR_API_KEY or NESTR_OAUTH_TOKEN is required for local usage.
Configuration (Optional)
| Variable | Description | Default |
|---|---|---|
NESTR_API_BASE |
API base URL | https://app.nestr.io/api |
Hosting/Server (HTTP transport only)
These are used when running the HTTP server for hosted deployments:
| Variable | Description | Default |
|---|---|---|
PORT |
HTTP server port | 3000 |
NESTR_OAUTH_CLIENT_ID |
OAuth client ID for hosted OAuth flow | - |
NESTR_OAUTH_CLIENT_SECRET |
OAuth client secret | - |
OAUTH_ENCRYPTION_KEY |
32-byte base64 key for encrypting OAuth sessions at rest | - |
GTM_ID |
Google Tag Manager container ID for landing page | - |
Analytics (Optional)
Server-side analytics options:
GA4 Measurement Protocol:
| Variable | Description |
|---|---|
GA4_MEASUREMENT_ID |
GA4 Measurement ID (e.g., G-XXXXXXXXXX) |
GA4_API_SECRET |
Measurement Protocol API secret |
GA4_DEBUG |
Set to true to validate events without recording |
Note: Both GA4_MEASUREMENT_ID and GA4_API_SECRET are required for GA4 tracking. If only the measurement ID is set, a warning is logged and tracking is disabled.
MCPcat (MCP-specific analytics):
| Variable | Description |
|---|---|
MCPCAT_PROJECT_ID |
MCPcat project ID (from mcpcat.io) |
MCPCAT_ENABLE_REPLAY |
Enable session replay (default: false) |
Development
# Clone the repository
git clone https://github.com/nestr-dev/nestr-mcp.git
cd nestr-mcp
# Install dependencies
npm install
# Set your API key
export NESTR_API_KEY=your-api-key
# Run in development mode (stdio)
npm run dev
# Run HTTP server for local testing
npm run dev:http
# Build for production
npm run build
# Test with MCP Inspector
npm run inspect
Security
- Never commit your API key or OAuth token to version control
- OAuth tokens respect user permissions and are recommended
- API keys provide full workspace access - use OAuth for granular permissions
- Rotate credentials if you suspect they've been compromised
Resources
- Setup Guide - Step-by-step setup instructions
- Nestr Help Center
- Nestr API Documentation
- Model Context Protocol
License
MIT - see LICENSE
Support
推荐服务器
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 模型以安全和受控的方式获取实时的网络信息。