folderr mcp server
A Model Context Protocol (MCP) server that provides tools to interact with Folderr's API, specifically for managing and communicating with [Folderr](https://www.folderr.com/) Assistants.
A Model Context Protocol (MCP) server that provides tools to interact with Folderr's API, specifically for managing and communicating with [Folderr](https://www.folderr.com/) Assistants.
A Model Context Protocol (MCP) server that provides tools to interact with Folderr's API, specifically for managing and communicating with Folderr Assistants.
Add to your MCP Settings
{
"mcpServers": {
"folderr": {
"command": "npx",
"args": ["-y", "@folderr/folderr-mcp-server"]
}
}
}
The server provides the following tools:
Two methods of authentication are supported:
Login with Email/Password
{
"name": "login",
"arguments": {
"email": "[email protected]",
"password": "your-password"
}
}
API Token Authentication
{
"name": "set_api_token",
"arguments": {
"token": "your-api-token"
}
}
API tokens can be generated from the Folderr developers section. This method is recommended for automated or long-running processes.
List Assistants
{
"name": "list_assistants",
"arguments": {}
}
Returns a list of all available assistants for the authenticated user.
Ask Assistant
{
"name": "ask_assistant",
"arguments": {
"assistant_id": "assistant-id",
"question": "Your question here"
}
}
Send a question to a specific assistant and receive their response.
The server stores its configuration in a config.json
file, which includes:
- Base URL for the Folderr API
- Authentication token (from login or API key)
The server provides detailed error messages for common scenarios: - Authentication failures - Invalid requests - API errors - Network issues
To build the server:
npm install
npm run build
Add the following to your MCP settings configuration:
{
"mcpServers": {
"folderr": {
"command": "node",
"args": ["/path/to/folderr-server/build/index.js"]
}
}
}
login
tool with email and passwordset_api_token
tool with an API token from Folderr's developers sectionCommon error messages and their meanings: - "Not logged in": No authentication token is set - "Login failed": Invalid credentials - "Failed to list assistants": Error retrieving assistant list - "Failed to ask assistant": Error sending question to assistant
[
{
"description": "Set an API token for authentication (alternative to login)",
"inputSchema": {
"properties": {
"token": {
"description": "API token generated from Folderr developers section",
"type": "string"
}
},
"required": [
"token"
],
"type": "object"
},
"name": "set_api_token"
},
{
"description": "Login to Folderr with email and password",
"inputSchema": {
"properties": {
"email": {
"description": "User email",
"type": "string"
},
"password": {
"description": "User password",
"type": "string"
}
},
"required": [
"email",
"password"
],
"type": "object"
},
"name": "login"
},
{
"description": "List all available assistants",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "list_assistants"
},
{
"description": "Ask a question to a specific assistant",
"inputSchema": {
"properties": {
"assistant_id": {
"description": "ID of the assistant to ask",
"type": "string"
},
"question": {
"description": "Question to ask the assistant",
"type": "string"
}
},
"required": [
"assistant_id",
"question"
],
"type": "object"
},
"name": "ask_assistant"
},
{
"description": "List all available workflows",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "list_workflows"
},
{
"description": "Get the required inputs for a workflow",
"inputSchema": {
"properties": {
"workflow_id": {
"description": "ID of the workflow",
"type": "string"
}
},
"required": [
"workflow_id"
],
"type": "object"
},
"name": "get_workflow_inputs"
},
{
"description": "Execute a workflow with the required inputs",
"inputSchema": {
"properties": {
"inputs": {
"additionalProperties": true,
"description": "Input values required by the workflow",
"type": "object"
},
"workflow_id": {
"description": "ID of the workflow",
"type": "string"
}
},
"required": [
"workflow_id",
"inputs"
],
"type": "object"
},
"name": "execute_workflow"
}
]