CrewAI
Give your crew a presentation tool.
Connect Encelade through MCPServerAdapter. Let your CrewAI agents turn their findings into an editable deck.
Quickstart
Wrap it as tools
MCPServerAdapter exposes the Encelade tools to your agents inside a context manager. Add them to the agent that should own the final deliverable.
- Streamable HTTP transport with Bearer auth
- Drop into any agent's tools list
- Pairs well with research and reporting crews
- No custom tool classes to maintain
# pip install 'crewai-tools[mcp]'
from crewai import Agent, Crew, Task
from crewai_tools import MCPServerAdapter
server = {
"url": "https://www.encelade.ai/api/mcp",
"transport": "streamable-http",
"headers": {"Authorization": "Bearer YOUR_API_KEY"},
}
with MCPServerAdapter(server) as tools:
deck_builder = Agent(
role="Deck Builder",
goal="Turn research into a client-ready presentation",
backstory="You package findings into polished Encelade decks.",
tools=tools,
)
task = Task(
description="Generate a deck from the Q1 report, then poll until it is ready.",
agent=deck_builder,
expected_output="A shareable Encelade presentation URL",
)
Crew(agents=[deck_builder], tasks=[task]).kickoff()How it works
From source material to shareable link.
- 01
Install crewai-tools
Add crewai-tools with the mcp extra. It ships MCPServerAdapter, the bridge between MCP servers and CrewAI agents.
- 02
Attach the tools
Open MCPServerAdapter on /api/mcp with your Bearer token and pass tools to the agent that owns the presentation step.
- 03
Kick off the crew
Run the crew. The deck-building agent calls generate_project, waits for the run, and returns a shareable link.
Tell the task to poll
Generation is asynchronous, so a single tool call won't return a finished deck. Spell the two steps out in the task description — “generate, then poll until ready” — so the agent calls get_generation_run instead of stopping after generate_project.
Questions
CrewAI
& Encelade.
How do I give a CrewAI agent presentation tools?
Use MCPServerAdapter from crewai-tools. Point it at Encelade's /api/mcp endpoint with your Bearer token inside a context manager and add the resulting tools to your agent.
Why does generation need polling?
Building a deck takes longer than a single request, so generate_project returns a run ID. The agent calls get_generation_run until the run is done — make that explicit in the task description.
Where does Encelade fit in a crew?
Usually as the final step: a research or analysis crew produces findings, and a deck-building agent turns them into a shareable, presentable Encelade deck.