# PubConsole MCP Server

The PubConsole MCP (Model Context Protocol) server lets AI assistants manage projects and link
placement tasks directly. With the API or MCP, the user controls link placement on their own,
without the PubConsole algorithm: they choose the keywords, link types and placement pace,
or delegate link building strategy planning to an AI agent.

## Connection
Endpoint: https://pubconsole.com/api/v1/mcp
Authorization: header `Authorization: Bearer <API_KEY>` (get the key in your dashboard)

Supported clients: OpenCode, Claude Desktop, Claude Code, Cursor IDE, GitHub Copilot, Windsurf, Codex, Cline

Configuration (Claude Desktop or Claude Code, `claude_desktop_config.json`):
```json
{
  "mcpServers": {
    "pubconsole": {
      "url": "https://pubconsole.com/api/v1/mcp",
      "headers": { "Authorization": "Bearer <API_KEY>" }
    }
  }
}
```

The agent gets the schema of every tool (parameters, allowed values for languages, link types,
statuses and more) directly from the MCP server, so there's no need to pass them manually.

## Tools

- get_user_info — account details: ID, email, name, balance. No parameters.
- create_project — create a project. Parameters: url (required), name (optional, a project name for convenience)
- create_task — create a link placement task; the price is charged to the balance right away. Parameters: projectId (required), keyword (required), url (required)
- delete_task — delete a task that hasn't been started yet; the amount is refunded to the balance. Parameters: taskId (required)
- delete_project — delete a project with no placed links. Parameters: projectId (required)
- get_task_status — detailed information about a task. Parameters: taskId (required)
- get_project_status — detailed information about a project. Parameters: projectId (required)
- reject_task — send a completed task back for rework during the guarantee period. Parameters: taskId (required), reason (required)
- get_project_tasks — list project tasks with pagination and a status filter. Parameters: projectId (required), page (defaults to 1), limit (defaults to 10), status (optional)
- get_projects — list all of the user's projects with stats. No parameters.
- get_user_transactions — summary of transactions for a period, grouped by type. Parameters: from (defaults to 30 days ago), to (defaults to today)
