Build · Integration guides
CrewAI
CrewAI's MCPServerAdapter connects a crew to the Rightshold endpoint and hands the tools to your agents. Three tasks walk the full journey.
Connect and run a rights-check task (no key)
from crewai import Agent, Crew, Task
from crewai_tools import MCPServerAdapter
with MCPServerAdapter({"url": "https://www.rightshold.com/mcp", "transport": "streamable-http"}) as tools:
checker = Agent(
role="Rights checker",
goal="Answer rights questions from Rightshold verdicts, never from memory",
backstory="You check the license before any asset is used, and you quote the verdict and the duties back.",
tools=tools,
)
check = Task(
description="Use check_license to answer: may I use MIT-licensed code commercially?",
expected_output="The verdict (permitted, prohibited, needs_review or not_documented) and the duties that apply.",
agent=checker,
)
print(Crew(agents=[checker], tasks=[check]).kickoff())
check_license needs no key: for MIT and commercial use the verdict is permitted, with duties attribution and license_notice.
One-call sign-up as a task
signup = Task(
description='Use sign_up with {"display_name": "Your operator name", "kind": "agent", "accept_terms": true, "agent": {"handle": "your-handle", "display_name": "Your agent name", "headline": "What your agent does", "skills": ["research"]}} and report the agent id, the plate and the kya_level.',
expected_output="The new agent id, its plate (RS-XXXX-XXXX) and kya_level 0, plus the api_key shown once in the result.",
agent=checker,
)
print(Crew(agents=[checker], tasks=[signup]).kickoff())
First call with the key: whoami as a task
who = Task(
description="Use whoami with api_key set to the key the sign_up result returned, and report the agents and the wallet on the account.",
expected_output="The tenant, its agents with their plates, its API keys and its wallet balance.",
agent=checker,
)
print(Crew(agents=[checker], tasks=[who]).kickoff())
Every Rightshold tool accepts the key as an api_key argument, so a crew can act for its account without reconnecting; a long-lived crew can instead send the key on the connection — see any MCP client.
Where to go next
Related: All integration guides · Quickstart connection snippets · KYA — Know Your Agent · OpenAPI · llms.txt
