loading…
Search for a command to run...
loading…
Enables LLMs to interact with the Pipefy GraphQL API to manage pipes, cards, database tables, and records through natural language. It provides tools for search
Enables LLMs to interact with the Pipefy GraphQL API to manage pipes, cards, database tables, and records through natural language. It provides tools for searching, creating, and retrieving detailed information about Pipefy workflows and database entities.
MCP (Model Context Protocol) server for integrating Pipefy GraphQL API with LLMs.
This MCP server enables LLMs to interact with Pipefy through comprehensive tools for managing pipes, cards, database tables, and records.
All tools support both Markdown (human-readable) and JSON (machine-readable) output formats.
# Install dependencies using uv
uv sync
# Or with pip
pip install -e .
Set your Pipefy API token as an environment variable:
export PIPEFY_API_TOKEN=your_api_token_here
To get your API token:
# Run with stdio transport (default)
python main.py
# Or if installed as a script
pipefy-mcp
PIPEFY_API_TOKEN=your_token npx @modelcontextprotocol/inspector python main.py
Add to your .cursor/mcp.json:
{
"mcpServers": {
"pipefy": {
"command": "python",
"args": ["/path/to/pipefy-mcp/main.py"],
"env": {
"PIPEFY_API_TOKEN": "your_api_token_here"
}
}
}
}
Once connected, you can ask the LLM things like:
Get detailed information about a Pipefy pipe.
Parameters:
pipe_id (required): The unique ID of the piperesponse_format: "markdown" (default) or "json"List cards from a specific pipe.
Parameters:
pipe_id (required): The pipe ID to list cards fromlimit: Maximum cards to return (1-50, default: 20)search: Optional search term for card titlesresponse_format: "markdown" (default) or "json"Get detailed information about a specific card.
Parameters:
card_id (required): The unique ID of the cardresponse_format: "markdown" (default) or "json"Search cards by a specific field value.
Parameters:
pipe_id (required): The pipe ID to search infield_id (required): The field ID to search byfield_value (required): The value to search forlimit: Maximum cards to return (1-50, default: 20)response_format: "markdown" (default) or "json"Get phase details and fields.
Parameters:
phase_id (required): The unique ID of the phaseresponse_format: "markdown" (default) or "json"List Pipefy pipes available to the user.
Parameters:
organization_id: Optional organization ID to filter byresponse_format: "markdown" (default) or "json"Create a new card in a specific pipe.
Parameters:
pipe_id (required): The pipe IDfields (required): List of field objects with field_id and field_valuetitle: Optional card titleresponse_format: "markdown" (default) or "json"List database tables from a specific organization.
Parameters:
organization_id (required): The organization ID to list tables fromresponse_format: "markdown" (default) or "json"Get detailed information about a specific database table.
Parameters:
table_id (required): The alphanumeric ID of the table (e.g., 'ZtEdWh')response_format: "markdown" (default) or "json"Returns: Table details including fields, members, webhooks, and record count.
Create a new database table in an organization.
Parameters:
organization_id (required): The organization ID where the table will be createdname (required): The name for the new tablecolor: Optional color for the table (e.g., 'blue', 'red', 'green', 'lime', 'yellow')response_format: "markdown" (default) or "json"Returns: Details of the created table including its ID.
List records from a database table.
Parameters:
table_id (required): The alphanumeric ID of the tablelimit: Maximum records to return (1-50, default: 20)response_format: "markdown" (default) or "json"Get detailed information about a specific table record.
Parameters:
record_id (required): The numeric ID of the recordresponse_format: "markdown" (default) or "json"Returns: Comprehensive record details with all field values.
Create a new record in a database table.
Parameters:
table_id (required): The alphanumeric ID of the tabletitle (required): The title for the new recordfields: List of field objects with field_id and field_valueresponse_format: "markdown" (default) or "json"Returns: Details of the created record including its ID.
pipefy-mcp/
├── main.py # Main server with all tools
├── pyproject.toml # Project configuration
├── README.md # This file
└── .cursor/skills/ # MCP builder skill reference
Follow the pattern in main.py:
@mcp.tool decorator with proper annotations_handle_api_errorДобавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"pipefy-mcp-server": {
"command": "npx",
"args": []
}
}
}