Paperboy for CrewAI
Give a CrewAI agent Paperboy's eight tools and let a crew pick the topic, write the article and hold it for review.
Set up
You will add Paperboy to a CrewAI agent as an MCPServerHTTP entry in its mcps list, with the API key sent as a bearer header.
Install CrewAI, then run uv add mcp. The docs list the mcp library as the requirement for the mcps field.
Create an API key in Paperboy Settings and export it as PAPERBOY_API_KEY.
Import MCPServerHTTP from crewai.mcp and set url to https://paperboyseo.com/mcp, headers to your Authorization Bearer value, and streamable=True.
Pass the object in the agent's mcps list. CrewAI discovers the tools for you.
Give the agent a Task and run crew.kickoff().
uv add mcp
export PAPERBOY_API_KEY=pb_live_YOUR_KEYReplace pb_live_YOUR_KEY with a key from Settings, API keys, and never commit it. The MCP docs list every client we cover.
How to tell it worked
Run the crew with verbose=True and read the log. The docs say CrewAI logs a warning for a server it cannot reach and logs authentication errors, then carries on without that server's tools. No warning and a Paperboy tool call in the run means it is connected.
How to remove it
Delete the MCPServerHTTP entry from the agent's mcps list.
What you get
Eight tools, the same engine as the dashboard. Reads are free. A pack is $20 for 100 credits; see how credits work.
get_sitesLists your sites with plan, publishing method and whether Search Console is connected. Every other call starts from a site id.
suggest_topicsReturns the next articles to write, each with the search data that is the reason for it.
write_articleStarts a fact-checked article and returns an id at once. The run takes a few minutes. It does not publish unless you pass publish: true.
get_articleReturns the article's status, its fact-check verdict and every source. Poll it after write_article until it reads published or needs_review.
check_claimsFact checks any public URL or pasted Markdown and returns each cited claim with the sources it was compared against.
publish_articlePublishes an article that passed the fact check to the site's publishing target. It changes the live site, so the agent should ask first.
get_performanceSearch Console clicks, impressions and average position for a site, by day and by article.
get_queriesThe queries a site, or one article, appears for in Search Console. This is where page-two keywords show up.
Try it
Plain requests. The tools each one uses are listed under it.
“List my Paperboy sites, find queries where I rank just off page one, and suggest three article topics for the best one.”
Uses get_sitesget_queriessuggest_topics
“Write an article on the top suggested topic, then run check_claims on it and list every claim that needs a source.”
Uses write_articleget_articlecheck_claims
“Report how my site is performing now and which queries bring the most traffic to my newest article.”
Uses get_performanceget_queries
Why
CrewAI loads MCP servers through the mcps field with MCPServerHTTP, which its docs recommend over the older adapter. The header goes on the server object. A static tool filter lets you give a researcher agent the read tools and keep publish_article away from it.
Failures are soft. A wrong key does not crash a run. CrewAI skips the server, logs a warning and carries on, so if an agent says it has no Paperboy tools, check the key and the log first. Tool names also get a prefix, so match on the end of the name.
Compare
Same engine, two ways in. Pick the one that fits how you already work.
| Feature | Dashboard | CrewAI | Source |
|---|---|---|---|
| Where you work | paperboyseo.com/app: sites, calendar, fact checks | Open-source framework for orchestrating autonomous AI agents and building workflows. | CrewAI docs: MCP Servers as Tools in CrewAIRead Oct 29, 2026 |
| How it connects | Sign in and paste your site address. The first article is free. | Remote MCP. CrewAI connects to remote Streamable HTTP MCP servers with custom headers through the mcps field and MCPServerHTTP, which its docs call the recommended route. | CrewAI docs: MCP Servers as Tools in CrewAIRead Oct 29, 2026 |
| Does it publish without asking? | Your choice: autopilot, or approve each article by email. | No. write_article defaults to publish: false, and the tool descriptions tell the agent to ask first. | MCP docsPaperboy docs |
| Fact check | Every number and cited sentence is compared with the saved text of its source. An article that fails gets one rewrite, then is held for you. | The same engine and the same check. The verdict comes back to the agent: verified, or held with the reason. | How the check worksPaperboy docs |
| What it costs | Plans from $49 a month per site. The first article is free, no card. | Credits: 12 per article, 1 per topic suggestion, 2 per fact check. $20 buys 100. | CreditsPaperboy docs |
| Search Console | Optional read-only Search Console connection. It picks topics from your impressions and reports clicks per article. | get_performance and get_queries return the same read-only data, by day, by article and by query. | Security and dataPaperboy docs |
Facts about CrewAI come from the pages linked in the Source column, read on the date shown. Tools change their docs, so confirm there if a step does not match.
Honest notes
Quirks of this client that can cost you an afternoon.
mcps versus MCPServerAdapter: CrewAI's docs recommend the mcps field for most cases. MCPServerAdapter (installed with crewai-tools[mcp]) is the advanced route with manual start and stop, and its Streamable HTTP page shows only the url and transport keys, so it is not used here.
Failures are soft. An unreachable server or a wrong key does not crash the run. CrewAI skips that server, logs a warning and continues. If the agent says it has no Paperboy tools, check the log first. The mcps page also lists a 30 second tool execution timeout, so a slow call can fail.
Tool names get a prefix built from the server, for example mcp_exa_ai_search in CrewAI's own example, and the docs show no field for naming the server paperboy. To expose only some tools, use a tool_filter with create_static_tool_filter, or the string form with a # suffix such as https://paperboyseo.com/mcp#get_sites.
FAQ
Add an MCPServerHTTP entry to the agent's mcps list with url https://paperboyseo.com/mcp, an Authorization Bearer header and streamable=True. CrewAI's docs call this the recommended approach.
CrewAI's string form shows keys in the URL query, such as ?api_key=your_key. Paperboy reads the key from the Authorization header, so use MCPServerHTTP with headers instead.
Not for the mcps field. The docs say uv add mcp for the DSL and crewai-tools[mcp] only for the advanced MCPServerAdapter.
Set a tool_filter on MCPServerHTTP with create_static_tool_filter and list only the tools you want, leaving out publish_article. The docs say all transport types support tool_filter.
The tools that read cost nothing. Suggesting topics costs 1 credit, writing a fact-checked article costs 12 credits (refunded if the run fails) and a fact check on its own costs 2 credits. A pack is $20 for 100 credits.
Only if you let it. write_article defaults to publish: false, so a finished article waits for a human, and the tool descriptions tell the agent to ask before publishing. You can also give the agent a read-only key.
Sources
Everything about CrewAI comes from the pages below, read on Oct 29, 2026. Tools change their docs, so check there if a step does not match. If we got something wrong, write to hello@paperboyseo.com.
Keep going
Add the MCP server, ask for a topic, and read the fact check before anything goes live.
claude mcp add --transport http paperboy https://paperboyseo.com/mcp --header "Authorization: Bearer pb_live_..."npx @paperboyseo/cli coming soonPrefer the dashboard? Write my first article free. Prefer to run it yourself? Self-host it (repo coming soon).