freedcamp
Freedcamp MCP 服务器
这是 Freedcamp 任务管理的模型上下文协议 (MCP) 服务器实现。它提供了在 Freedcamp 项目中创建、更新和删除任务的工具。
特征
创建具有标题、描述、优先级、截止日期和受让人的新任务
更新现有任务,包括状态变化
删除任务
凭证的环境变量支持
错误处理和验证
Related MCP server: MCP Tasks
先决条件
Node.js 17 或更高版本
TypeScript
具有 API 访问权限的 Freedcamp 帐户
来自 Freedcamp 的 API 密钥和秘密
来自 Freedcamp 的项目 ID
安装(仅用于手动调用,不需要与 IDE 或其他 MCP 桌面客户端一起使用)
克隆存储库:
git clone <repository-url>
cd freedcamp-mcp安装依赖项:
npm install使用您的 Freedcamp 凭据在根目录中创建一个
.env文件:
FREEDCAMP_API_KEY=your_api_key
FREEDCAMP_API_SECRET=your_api_secret
FREEDCAMP_PROJECT_ID=your_project_id用法
运行服务器
首先构建 TypeScript 代码:
npm run build然后启动服务器:
npm start运行测试工具
该项目包括一个全面的测试工具,可验证所有 MCP 功能:
npm test测试工具执行以下检查:
使用适当的协议版本进行服务器初始化
工具清单和能力验证
使用各种参数创建任务
任务更新,包括状态变化
任务列表和验证
可用工具
freedcamp_add_task在 Freedcamp 中创建新任务
参数:
title(必填):任务标题description(可选):任务描述priority(可选):任务优先级(0-3)due_date(可选):任务截止日期(YYYY-MM-DD)assigned_to_id(可选):分配任务的用户 ID
freedcamp_update_task更新现有任务
参数:
task_id(必需):要更新的任务的IDtitle(可选):新任务标题description(可选):新任务描述priority(可选):新任务优先级(0-3)due_date(可选):新的到期日(YYYY-MM-DD)assigned_to_id(可选):分配任务的新用户 IDstatus(可选):新任务状态(0=打开,1=完成,2=关闭)
freedcamp_list_tasks列出已配置的 Freedcamp 项目中的所有任务
无需参数(使用环境变量中的项目 ID)
返回任务及其详细信息的列表
IDE 集成
可以使用npx直接运行服务器,而无需克隆存储库。
光标
在项目根目录中打开(或创建)
.cursor/mcp.json。添加您的 Freedcamp MCP 服务器配置:
{ "mcpServers": { "freedcamp": { "command": "npx", "args": ["freedcamp-mcp"], "env": { "FREEDCAMP_API_KEY": "your_api_key", "FREEDCAMP_API_SECRET": "your_api_secret", "FREEDCAMP_PROJECT_ID": "your_project_id" } } } }重新启动 Cursor 或重新加载 MCP 服务器。
袋鼠
打开(或创建)您的 Roo MCP 配置文件(通常是
roo.mcp.json或类似的)。添加您的 Freedcamp MCP 服务器配置:
{ "mcpServers": { "Freedcamp": { "transport": "stdio", "command": "npx", "args": ["freedcamp-mcp"], "env": { "FREEDCAMP_API_KEY": "your_api_key", "FREEDCAMP_API_SECRET": "your_api_secret", "FREEDCAMP_PROJECT_ID": "your_project_id" } } } }
Available Tools
4 toolsfreedcamp_add_taskA
Create one or more new tasks in Freedcamp with support for title, description, priority, due date, and assignee. Supports bulk operations for creating multiple tasks at once.
| Name | Required | Description | Default |
|---|---|---|---|
| tasks | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide a title ('Create Task'), so the description carries the burden. It discloses that the tool creates tasks and supports bulk operations, which is useful context beyond annotations. However, it lacks details on permissions, rate limits, or what happens on failure, which are important for a creation tool with no output schema.
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 two sentences, front-loaded with the main purpose and followed by key features. Every sentence adds value: the first defines the action and scope, the second highlights bulk capability and supported fields, with no wasted words.
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 no output schema and annotations only providing a title, the description is somewhat complete for a creation tool but lacks details on return values, error handling, or prerequisites. It covers the basics but could be more informative for a tool with 1 parameter (an array of objects) and no structured output documentation.
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 0%, so the description must compensate. It lists supported fields (title, description, priority, due date, assignee) and mentions bulk operations, adding meaning beyond the schema's structure. However, it does not explain the 'tasks' array parameter's semantics or constraints in detail.
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 'Create one or more new tasks in Freedcamp' with specific verb (create) and resource (tasks), and distinguishes from siblings by focusing on creation rather than deletion, listing, or updating mentioned in sibling tool names.
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 creating tasks and mentions 'bulk operations for creating multiple tasks at once,' which provides context for when to use it (multiple tasks). However, it does not explicitly state when not to use it or name alternatives like the sibling tools for other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
freedcamp_delete_taskA
Permanently delete one or more tasks from Freedcamp. WARNING: This action cannot be undone. Supports bulk operations for deleting multiple tasks at once.
| Name | Required | Description | Default |
|---|---|---|---|
| tasks | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond what annotations provide. Annotations only give a title ('Delete Task'), while the description explicitly warns that the action 'cannot be undone', clarifies it's permanent, and mentions support for bulk operations - all critical behavioral traits for a destructive operation.
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 perfectly concise with two sentences that each earn their place: the first states the core action with critical warning, the second adds important bulk operation capability. No wasted words, front-loaded with the most critical 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 this is a destructive mutation tool with no output schema and minimal annotations, the description does well by warning about irreversibility and mentioning bulk operations. However, it could be more complete by specifying what happens to dependent objects or confirming deletion success criteria.
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 0% schema description coverage (the schema has no parameter descriptions), the description carries the full burden. It adds meaningful context by explaining that the tool supports bulk operations for deleting multiple tasks at once, which helps interpret the 'tasks' array parameter structure, though it doesn't detail individual parameter semantics like 'task_id' format.
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 specific action ('permanently delete') and resource ('tasks from Freedcamp'), distinguishing it from sibling tools like 'add_task', 'list_tasks', and 'update_task' which perform different operations on the same resource.
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 clear context for when to use this tool ('permanently delete one or more tasks') and mentions bulk operations, but does not explicitly state when NOT to use it or name specific alternatives like 'update_task' for modifications instead of deletions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
freedcamp_list_tasksB
Retrieve all tasks in the configured Freedcamp project. Returns task details including ID, title, description, status, priority, due date, and assignee information.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide a title ('List Tasks'), so the description carries the burden of behavioral disclosure. It adds value by specifying the return format (task details like ID, title, status, etc.) and implying a read-only operation, but doesn't cover aspects like error handling, pagination, or rate limits. No contradiction with annotations exists.
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, well-structured sentence that efficiently conveys the action, scope, and return details without redundancy. It's front-loaded with the core purpose, but could be slightly more concise by integrating the return information more seamlessly.
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, no output schema, minimal annotations), the description is adequate but has gaps. It explains what the tool does and what it returns, but lacks usage guidelines, error handling, or behavioral nuances. For a list tool with no complex inputs, this is minimally viable but not comprehensive.
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 input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately omits parameter details, focusing on the tool's function and output. This meets the baseline for zero parameters, but doesn't exceed expectations with extra context.
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 ('all tasks in the configured Freedcamp project'), making the purpose evident. It distinguishes from siblings by focusing on listing rather than adding, deleting, or updating tasks. However, it doesn't explicitly contrast with sibling tools, preventing 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 provides no guidance on when to use this tool versus alternatives like 'freedcamp_add_task' or 'freedcamp_update_task'. It lacks context about prerequisites (e.g., needing a configured project) or exclusions, leaving usage decisions to inference from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
freedcamp_update_taskB
Update one or more existing tasks in Freedcamp including title, description, priority, due date, assignee, and status. Supports bulk operations for updating multiple tasks at once.
| Name | Required | Description | Default |
|---|---|---|---|
| tasks | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide a title ('Update Task'), so the description carries the full burden. It mentions bulk operations but lacks details on permissions, rate limits, error handling, or what happens to unspecified fields (e.g., whether they remain unchanged). This is inadequate for a mutation tool with no annotation coverage.
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 includes essential details like bulk support. It avoids redundancy but could be slightly more structured for clarity.
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 annotations, 0% schema description coverage, and no output schema, the description is incomplete. It lacks behavioral context (e.g., side effects, auth needs), detailed parameter guidance, and output information, making it insufficient for safe and 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?
Schema description coverage is 0%, but the description lists key updatable fields (title, description, priority, due date, assignee, status), which adds meaning beyond the bare schema. However, it doesn't explain the 'tasks' array structure or parameter constraints, leaving gaps in documentation.
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 ('Update') and resource ('existing tasks in Freedcamp'), and lists specific fields that can be updated. It distinguishes itself from siblings by focusing on updates rather than adding, deleting, or listing tasks. However, it doesn't explicitly contrast with siblings beyond the core action.
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 updating tasks, including bulk operations, but doesn't provide explicit guidance on when to use this tool versus alternatives like 'freedcamp_add_task' for new tasks or 'freedcamp_delete_task' for removal. 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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
v1.0.0- First observed
freedcamp_add_task - First observed
freedcamp_delete_task - First observed
freedcamp_list_tasks - First observed
freedcamp_update_task
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose targeting different CRUD operations: add_task for creation, delete_task for deletion, list_tasks for retrieval, and update_task for modification. There is no overlap or ambiguity between these functions.
All tools follow a consistent 'freedcamp_verb_task' pattern with snake_case, using clear action verbs (add, delete, list, update). This predictable naming makes it easy to understand each tool's function at a glance.
Four tools is perfectly appropriate for a task management server, covering the essential CRUD operations without being overwhelming. Each tool earns its place with distinct functionality, and the count aligns well with the server's focused scope.
The tool set provides complete CRUD coverage for tasks in Freedcamp, including bulk operations for efficiency. There are no obvious gaps—agents can create, read, update, and delete tasks, covering the full lifecycle without dead ends.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
- mcpOAuthnet.todoist
Official Todoist MCP server for AI assistants to manage tasks, projects, and workflows.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceA Model Context Protocol server that enables advanced task and project management in Todoist via Claude Desktop and other MCP-compatible clients.794 npm2MIT
- AlicenseAqualityBmaintenanceA comprehensive and efficient Model Context Protocol server for task management that works with Claude, Cursor, and other MCP clients, providing powerful search, filtering, and organization capabilities across multiple file formats.5227 npm47MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables seamless integration with Freedcamp API for enterprise-level project management with advanced filtering, full CRUD operations, and extensive customization options.5MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that exposes Kanboard API functionality to Large Language Models (LLMs), enabling AI assistants to interact with Kanboard project management system.2MIT