EtcetFelix/Trellis-MCP-server
If you are the rightful owner of Trellis-MCP-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Trellis MCP Server enables Claude Desktop to manage Trellis Workflows using natural language commands.
Trellis MCP Server
An MCP (Model Context Protocol) server that enables Claude Desktop to manipulate Trellis Workflows through natural language commands. This server provides tools for managing workflow blocks, transformations, and entities in the Trellis platform.
Overview
This MCP server allows Claude to:
- Fetch transformation schemas and understand data extraction configurations
- Fetch entity schemas and understand data storage structures
- Create, read, update, and delete workflow blocks
- Build complete workflows through natural language prompts
Prerequisites
- Python 3.10 or higher
- Poetry (Python package manager)
- Claude Desktop application
- Access to Trellis MCP OA organization (both Claude and Trellis platforms)
Installation
1. Clone the Repository
git clone <your-repo-url>
cd trellis-mcp-server
2. Install Dependencies
poetry install
This will install all required dependencies including:
mcp- Model Context Protocol frameworkrequests- HTTP client for Trellis APIpython-dotenv- Environment variable management
3. Get Your Trellis Credentials
You'll need three pieces of information from your Trellis project:
API Key: Found in your project settings or provided by the Trellis team
Project ID: Extract from your Trellis project URL
https://enterprise.training.dashboard.runtrellis.com/mcp-oa/projects/proj_XXXXX
^^^^^^^^
Workflow ID: Create a new workflow in your project, then extract its ID from the URL
https://enterprise.training.dashboard.runtrellis.com/mcp-oa/projects/proj_XXXXX/workflows/wflow_XXXXX
^^^^^^^^^^
⚠️ Important: Create a NEW workflow separate from the Example Workflow. The MCP server is scoped to a single workflow ID to avoid accidentally editing existing configurations.
Configuration
Configure Claude Desktop
Edit your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Add the following configuration:
{
"mcpServers": {
"trellis-workflows": {
"command": "poetry",
"args": ["run", "-C", "/absolute/path/to/trellis-mcp-server", "trellis-mcp"],
"env": {
"TRELLIS_API_KEY": "your_api_key_here",
"TRELLIS_WORKFLOW_ID": "wflow_XXXXX",
"TRELLIS_PROJECT_ID": "proj_XXXXX"
}
}
}
}
Replace:
/absolute/path/to/trellis-mcp-serverwith the full path to your cloned repositoryyour_api_key_herewith your Trellis API keywflow_XXXXXwith your workflow IDproj_XXXXXwith your project ID
Restart Claude Desktop
After saving the configuration, completely quit and restart Claude Desktop for the changes to take effect.
Verification
Once Claude Desktop is restarted, you should see the 🔌 icon in the bottom right corner indicating MCP servers are connected. You can verify the server is working by asking Claude:
"What transformations are available in my Trellis project?"
If successful, Claude will use the get_transformations tool to fetch and display your transformations.
Available Tools
The MCP server exposes six tools that Claude can use:
1. get_transformations
Retrieves all transformation schemas in the project. Transformations define how to extract data from documents.
2. get_transformation_details
Gets detailed operations/schema for a specific transformation, including what data it extracts and how.
3. get_entities
Retrieves all entities (data tables) in the project. Entities store extracted information.
4. get_entity_fields
Gets fields (columns) for a specific entity, including field types and relationships.
5. get_workflow_config
Retrieves the current workflow configuration including all blocks and their connections.
6. update_workflow_blocks
Creates, updates, or deletes workflow blocks. This is the primary tool for building workflows.
Architecture
Project Structure
trellis-mcp-server/
├── trellis_mcp/
│ ├── __init__.py # Package initialization
│ ├── server.py # MCP server with FastMCP (main entry point)
│ └── trellis_client.py # HTTP client for Trellis API
├── pyproject.toml # Poetry dependencies and project config
└── README.md # This file
How It Works
-
FastMCP Framework: The server uses FastMCP to handle MCP protocol communication with Claude Desktop.
-
Tool Registration: Six tools are registered as MCP tools using the
@mcp.tool()decorator. -
Trellis API Client: The
TrellisClientclass wraps all HTTP communication with the Trellis API, handling:- Authentication via API key
- Request formatting with proper headers
- Error handling and logging
- Response parsing
-
Logging: All operations are logged to
~/.trellis_mcp/server.logfor debugging. -
Scoping: The server is scoped to a single project and workflow ID via environment variables, preventing accidental edits to other workflows.
Troubleshooting
Server Not Connecting
- Check that Claude Desktop is completely restarted
- Verify the path to your repository is absolute and correct
- Check environment variables are set correctly
- Look at logs:
~/.trellis_mcp/server.log(macOS/Linux) or%USERPROFILE%\.trellis_mcp\server.log(Windows)
Authentication Errors
- Verify your
TRELLIS_API_KEYis correct - Ensure you have access to the MCP OA organization in Trellis
- Check that your API key hasn't expired
Workflow Not Updating
- Confirm the
TRELLIS_WORKFLOW_IDmatches your target workflow - Verify you're not trying to edit the Example Workflow (use a new workflow)
- Check the Trellis dashboard to see if changes are appearing
Tool Calls Failing
- Run
get_workflow_configfirst to understand current state - Ensure entity and transformation IDs are correct
- Check logs for detailed error messages
API Reference
Trellis API Version
This server uses API version 2025-03 with the following base URL:
https://enterprise.training.api.runtrellis.com/v1
Key Endpoints Used
GET /transforms- List transformationsGET /transforms/{id}/operations- Get transformation detailsGET /entities- List entitiesGET /entities/{id}/fields- Get entity fieldsGET /workflows/{id}/config- Get workflow configurationPATCH /workflows/{id}/blocks- Update workflow blocks
Security Notes
- API keys are stored in Claude Desktop's configuration file
- The server is scoped to a single workflow ID to prevent accidental edits
- Never commit your
.envfile or expose API keys
Limitations
- Scoped to a single project and workflow (by design)
- Only supports "Row Created" triggers (per assignment requirements)
- Does not support "Row Updated" or "Email Received" triggers
- Cannot edit transformations or entities (read-only access)