> ## Documentation Index
> Fetch the complete documentation index at: https://www.citedy.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP Tools Reference

> Complete list of 71 MCP tools available via the Citedy MCP server

# MCP Tools Reference

The Citedy MCP server exposes **71 tools**. Each tool maps to an Agent API endpoint.

Endpoint: `https://mcp.citedy.com/mcp`

## Social Adaptations

| Tool             | Description                                 | Endpoint                |
| ---------------- | ------------------------------------------- | ----------------------- |
| `adapt.generate` | Generate social adaptations for an article. | `POST /api/agent/adapt` |

## Account & Status

| Tool           | Description                                                                                     | Endpoint                |
| -------------- | ----------------------------------------------------------------------------------------------- | ----------------------- |
| `agent.health` | Return infrastructure health checks for agent platform.                                         | `GET /api/agent/health` |
| `agent.me`     | Return agent profile, balances and limits.                                                      | `GET /api/agent/me`     |
| `agent.status` | Return actionable operational status snapshot (credits, socials, schedule, knowledge, content). | `GET /api/agent/status` |

## Content Creation

| Tool                | Description                                                                                                                               | Endpoint                                |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------- |
| `article.delete`    | Permanently delete an article and its associated storage files.                                                                           | `DELETE /api/agent/articles/{id}`       |
| `article.generate`  | Generate an SEO-optimized article. By default publishes immediately; set auto\_publish=false to create as draft. May take 30-90 seconds.  | `POST /api/agent/autopilot`             |
| `article.get`       | Poll a queued article job by id. Use the id returned by article.generate to get the current status or the final generated article result. | `GET /api/agent/articles/{id}`          |
| `article.list`      | List previously generated articles for the current workspace.                                                                             | `GET /api/agent/articles`               |
| `article.publish`   | Publish a draft article. Use after generating with auto\_publish=false to trigger the publish pipeline.                                   | `POST /api/agent/articles/{id}/publish` |
| `article.unpublish` | Unpublish an article (revert to draft status). The article remains accessible for editing but is removed from the public blog.            | `PATCH /api/agent/articles/{id}`        |

## brand

| Tool             | Description                                                                                | Endpoint                               |
| ---------------- | ------------------------------------------------------------------------------------------ | -------------------------------------- |
| `brand.scan`     | Run AI brand visibility scan across major LLM providers (async, poll with brand.scan.get). | `POST /api/agent/tools/brand-scan`     |
| `brand.scan.get` | Get brand scan status and final result payload by scan ID.                                 | `GET /api/agent/tools/brand-scan/{id}` |

## citedy\_warm\_lead

| Tool                      | Description                                                                                                                                 | Endpoint                                         |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------ |
| `citedy_warm_lead.export` | Download/export a completed /citedy-warm-lead report as JSON, CSV, or Excel .xlsx. XLSX is returned through MCP as a base64 binary payload. | `GET /api/agent/citedy-warm-lead/{runId}/export` |
| `citedy_warm_lead.get`    | Get a tenant-scoped /citedy-warm-lead run by ID, including the canonical JSON result once completed.                                        | `GET /api/agent/citedy-warm-lead/{runId}`        |
| `citedy_warm_lead.start`  | Start /citedy-warm-lead for one company domain. Charges exactly 40 Citedy credits on accepted new runs and returns a pollable run ID.       | `POST /api/agent/citedy-warm-lead`               |

## citedy\_workers

| Tool                      | Description                                                                                                      | Endpoint                                      |
| ------------------------- | ---------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
| `citedy_workers.activity` | Paginated activity log for one worker or all tenant workers.                                                     | `GET /api/agent-workers/{worker_id}/activity` |
| `citedy_workers.add_task` | Enqueue a one-off ad-hoc task against an existing worker. Subject to budget cap and trust level.                 | `POST /api/agent-workers/{worker_id}/tasks`   |
| `citedy_workers.create`   | Create a new Citedy Worker from a preset. Returns the worker ID and a one-time API key.                          | `POST /api/agent-workers`                     |
| `citedy_workers.delete`   | Soft-delete a worker. Revokes its API key, cancels scheduled runs, and preserves audit history.                  | `DELETE /api/agent-workers/{worker_id}`       |
| `citedy_workers.get`      | Get full configuration, billing summary, and recent activity for one worker.                                     | `GET /api/agent-workers/{worker_id}`          |
| `citedy_workers.list`     | List the tenant's workers with status, tier, next run, and today's spend.                                        | `GET /api/agent-workers`                      |
| `citedy_workers.pause`    | Pause a worker. Cancels scheduled runs; current-day rent is non-refundable.                                      | `POST /api/agent-workers/{worker_id}/pause`   |
| `citedy_workers.resume`   | Resume a paused worker. Charges current-day rent only if no successful rent row exists, then schedules next run. | `POST /api/agent-workers/{worker_id}/resume`  |
| `citedy_workers.update`   | Update worker schedule, trust level, budget cap, or config without deleting.                                     | `PATCH /api/agent-workers/{worker_id}`        |

## Competitor Analysis

| Tool                   | Description                          | Endpoint                               |
| ---------------------- | ------------------------------------ | -------------------------------------- |
| `competitors.discover` | Discover competitors by keyword set. | `POST /api/agent/competitors/discover` |
| `competitors.scout`    | Analyze a competitor domain.         | `POST /api/agent/competitors/scout`    |

## Intelligence & Research

| Tool            | Description                                                                                                                                                                                              | Endpoint                        |
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- |
| `gaps.generate` | Generate SEO/GEO content gap opportunities.                                                                                                                                                              | `POST /api/agent/gaps/generate` |
| `gaps.list`     | List saved content gaps. Optional favorite\_id filter scopes results to a product/identity (hybrid filter also includes legacy NULL gaps matching favorite.domain). Optional limit (1-100, default 100). | `GET /api/agent/gaps`           |

## gsc

| Tool         | Description                                                                                                                                                                                                                                | Endpoint                    |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------- |
| `gsc.report` | Get Google Search Console performance report: clicks, impressions, CTR, avg position, top queries, top pages, position movers, content opportunities, and article suggestions. Returns connect URL if GSC is not linked. Free (0 credits). | `GET /api/agent/gsc/report` |

## Content Ingestion

| Tool                 | Description                                                    | Endpoint                             |
| -------------------- | -------------------------------------------------------------- | ------------------------------------ |
| `ingest.batch`       | Create ingestion jobs in batch mode for multiple URLs.         | `POST /api/agent/ingest/batch`       |
| `ingest.content.get` | Fetch extracted content payload for a completed ingestion job. | `GET /api/agent/ingest/{id}/content` |
| `ingest.create`      | Create an ingestion job from a source URL.                     | `POST /api/agent/ingest`             |
| `ingest.get`         | Get ingestion job status/result by ID.                         | `GET /api/agent/ingest/{id}`         |

## Lead Magnets

| Tool                  | Description                                                                               | Endpoint                             |
| --------------------- | ----------------------------------------------------------------------------------------- | ------------------------------------ |
| `leadmagnet.archive`  | Archive a lead magnet by ID.                                                              | `PATCH /api/agent/lead-magnets/{id}` |
| `leadmagnet.generate` | Start lead magnet generation (checklist/swipe/framework) and return polling instructions. | `POST /api/agent/lead-magnets`       |
| `leadmagnet.get`      | Fetch lead magnet status/result by ID.                                                    | `GET /api/agent/lead-magnets/{id}`   |
| `leadmagnet.publish`  | Publish a lead magnet by ID.                                                              | `PATCH /api/agent/lead-magnets/{id}` |

## Personas

| Tool            | Description                      | Endpoint                  |
| --------------- | -------------------------------- | ------------------------- |
| `personas.list` | List available writing personas. | `GET /api/agent/personas` |

## Product Knowledge

| Tool              | Description                              | Endpoint                          |
| ----------------- | ---------------------------------------- | --------------------------------- |
| `products.create` | Upload product knowledge document.       | `POST /api/agent/products`        |
| `products.delete` | Delete product knowledge document by ID. | `DELETE /api/agent/products/{id}` |
| `products.list`   | List product knowledge documents.        | `GET /api/agent/products`         |
| `products.search` | Search product knowledge documents.      | `POST /api/agent/products/search` |

## Scheduling

| Tool            | Description                                          | Endpoint                       |
| --------------- | ---------------------------------------------------- | ------------------------------ |
| `schedule.gaps` | List schedule gaps for upcoming days.                | `GET /api/agent/schedule/gaps` |
| `schedule.list` | List upcoming article/post/social schedule timeline. | `GET /api/agent/schedule`      |

## Trend Scouting

| Tool                  | Description                                                                                  | Endpoint                              |
| --------------------- | -------------------------------------------------------------------------------------------- | ------------------------------------- |
| `scout.reddit`        | Run Reddit scout analysis. Returns processing status — poll scout.reddit.result for results. | `POST /api/agent/scout/reddit`        |
| `scout.reddit.result` | Get Reddit scout run status and results by run ID.                                           | `GET /api/agent/scout/reddit/{runId}` |
| `scout.x`             | Run X/Twitter scout analysis. Returns processing status — poll scout.x.result for results.   | `POST /api/agent/scout/x`             |
| `scout.x.result`      | Get X scout run status and results by run ID.                                                | `GET /api/agent/scout/x/{runId}`      |

## seo

| Tool                      | Description                                                                   | Endpoint                                |
| ------------------------- | ----------------------------------------------------------------------------- | --------------------------------------- |
| `seo.headings.check`      | Analyze heading hierarchy (H1-H6) for a page.                                 | `POST /api/agent/tools/headings`        |
| `seo.internal_links.plan` | Plan internal linking opportunities from source URL and target URLs/sitemap.  | `POST /api/agent/tools/internal-links`  |
| `seo.links.analyze`       | Analyze internal/external links and link attributes.                          | `POST /api/agent/tools/links`           |
| `seo.meta_tags.check`     | Analyze meta tags for a target page URL.                                      | `POST /api/agent/tools/meta-tags`       |
| `seo.og_image.generate`   | Generate an Open Graph image artifact and return hosted URL for brand assets. | `POST /api/agent/tools/og-image`        |
| `seo.og.preview`          | Extract Open Graph and Twitter card preview metadata.                         | `POST /api/agent/tools/og-preview`      |
| `seo.robots.check`        | Check robots.txt availability and parsed directives.                          | `POST /api/agent/tools/robots`          |
| `seo.schema.validate`     | Validate JSON-LD schema markup for a page.                                    | `POST /api/agent/tools/schema-validate` |
| `seo.sitemap.check`       | Check sitemap availability and robots sitemap hints.                          | `POST /api/agent/tools/sitemap`         |

## Autopilot Sessions

| Tool             | Description                            | Endpoint                  |
| ---------------- | -------------------------------------- | ------------------------- |
| `session.create` | Create and start an autopilot session. | `POST /api/agent/session` |

## Settings

| Tool              | Description                                                                          | Endpoint                  |
| ----------------- | ------------------------------------------------------------------------------------ | ------------------------- |
| `settings.get`    | Get current agent settings.                                                          | `GET /api/agent/settings` |
| `settings.update` | Update the editable subset of current agent settings used by Quick Publish defaults. | `PUT /api/agent/settings` |

## Video (Shorts)

| Tool              | Description                                                                                                                                                                                                                                                                                                                                      | Endpoint                         |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------- |
| `shorts.avatar`   | Generate an AI avatar image for shorts and return hosted avatar URL.                                                                                                                                                                                                                                                                             | `POST /api/agent/shorts/avatar`  |
| `shorts.generate` | Generate shorts video and return poll instructions until final video URL is ready.                                                                                                                                                                                                                                                               | `POST /api/agent/shorts`         |
| `shorts.get`      | Get shorts generation status/result by ID.                                                                                                                                                                                                                                                                                                       | `GET /api/agent/shorts/{id}`     |
| `shorts.merge`    | Merge 2-4 short clips, apply subtitle phrases, and return final video URL.                                                                                                                                                                                                                                                                       | `POST /api/agent/shorts/merge`   |
| `shorts.publish`  | Publish a generated short video directly to supported short-video platforms including YouTube Shorts, Instagram Reels, and TikTok. Does not require an article — derives title/description/hashtags from speech\_text via LLM. Publication is free on all platforms (per product decision 2026-04-15). Returns per-platform results and timings. | `POST /api/agent/shorts/publish` |
| `shorts.script`   | Generate short-form video script text (hook/educational/cta styles).                                                                                                                                                                                                                                                                             | `POST /api/agent/shorts/script`  |

## Publishing

| Tool             | Description                                                                            | Endpoint                  |
| ---------------- | -------------------------------------------------------------------------------------- | ------------------------- |
| `social.publish` | Publish, schedule, cancel, or direct-publish (as-is, no AI adaptation) social content. | `POST /api/agent/publish` |

## Webhooks

| Tool                  | Description                                 | Endpoint                             |
| --------------------- | ------------------------------------------- | ------------------------------------ |
| `webhooks.delete`     | Delete a webhook endpoint by ID.            | `DELETE /api/agent/webhooks/{id}`    |
| `webhooks.deliveries` | List webhook delivery attempts.             | `GET /api/agent/webhooks/deliveries` |
| `webhooks.list`       | List webhook endpoints for current agent.   | `GET /api/agent/webhooks`            |
| `webhooks.register`   | Register webhook endpoint for agent events. | `POST /api/agent/webhooks`           |

## Async Operations

These tools may return `"status": "processing"` and polling instructions:

* `article.generate` -> poll with `article.get` using `id`
* `brand.scan` -> poll with `brand.scan.get` using `id`
* `citedy_warm_lead.start` -> poll with `citedy_warm_lead.get` using `id`
* `ingest.batch` -> poll with `ingest.get` using `id`
* `ingest.create` -> poll with `ingest.get` using `id`
* `leadmagnet.generate` -> poll with `leadmagnet.get` using `id`
* `scout.reddit` -> poll with `scout.reddit.result` using `runId`
* `scout.x` -> poll with `scout.x.result` using `runId`
* `shorts.generate` -> poll with `shorts.get` using `id`
