# Quora MCP tools

> Every Quora MCP tool on the Cotlet server: tool names, input schemas, a tools/call example and an example result for each tool.

Source: https://cotlet.dev/docs/mcp/quora

Docs sections: [Get started](https://cotlet.dev/docs.md) · [REST API](https://cotlet.dev/docs/api.md) · [MCP](https://cotlet.dev/docs/mcp.md) · [SDKs & CLI](https://cotlet.dev/docs/sdks.md) · [Integrations](https://cotlet.dev/docs/integrations.md)

11 tools for Quora on the Cotlet MCP server. Your agent picks them from tools/list.

- MCP server: `https://cotlet.dev/mcp/v1`
- Connects with: Your own Quora account (Space admin or moderator role for stats and submissions)
- Integration page: https://cotlet.dev/integrations/quora-api-mcp-server

## Endpoints

| Endpoint | Access | Description |
|---|---|---|
| `quora_search_questions` | read | Questions matching a keyword, with answer counts. |
| `quora_get_question` | read | Question text and its top answers with author and upvotes. |
| `quora_list_my_answers` | read | Your answers with question and URL, from your Your Content page. |
| `quora_list_answer_requests` | read | Questions other people asked you to answer. |
| `quora_list_my_spaces` | read | Spaces you follow or help run, with your role. |
| `quora_get_space_stats` | read | Views, followers, upvotes, comments and notification clicks, all-time and last 7 days, plus top content. |
| `quora_list_space_submissions` | read | Answers, posts and questions followers submitted to your Space, waiting for review. |
| `quora_post_answer` | write | Publish an answer as you under a question. |
| `quora_ask_question` | write | Add a new public question to Quora. |
| `quora_post_to_space` | write | New post in a Space you contribute to, posted now or added to its queue. |
| `quora_review_space_submission` | write | Approve, queue or pass on a follower submission. Space admins and moderators only. |

## Search questions

MCP tool: `quora_search_questions`

Access: read.

Searches Quora for questions matching your words and returns them in the order Quora shows them, with the number of answers each has. Use question_url from an item with get_question. Pages hold up to 50 questions.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `query` | string | yes | Search words. |
| `limit` | integer | no | 1 to 50. Default: 20. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_search_questions",
    "arguments": {
      "query": "bookkeeping for freelancers",
      "limit": 20
    }
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "questions": [
      {
        "question": "How do freelancers track expenses for taxes?",
        "question_url": "https://www.quora.com/How-do-freelancers-track-expenses-for-taxes",
        "answers": 3
      },
      {
        "question": "Do I need bookkeeping software as a freelancer?",
        "question_url": "https://www.quora.com/Do-I-need-bookkeeping-software-as-a-freelancer",
        "answers": 1
      }
    ]
  },
  "isError": false
}
```

## Get question

MCP tool: `quora_get_question`

Access: read.

Returns one question with its text, answer count and the top answers in the order Quora shows them. Use it before answering, so your agent sees what is already said. answers_limit set to 0 returns the question only.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `question_url` | string | yes | Question URL on quora.com. |
| `answers_limit` | integer | no | 0 to 20. Default: 5. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_get_question",
    "arguments": {
      "question_url": "https://example.com"
    }
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "question": "How do freelancers track expenses for taxes?",
    "question_url": "https://www.quora.com/How-do-freelancers-track-expenses-for-taxes",
    "answers": 3,
    "top_answers": [
      {
        "author": "Dana Reyes",
        "upvotes": 41,
        "preview": "Use a separate account for business costs and keep every receipt..."
      }
    ]
  },
  "isError": false
}
```

## List my answers

MCP tool: `quora_list_my_answers`

Access: read.

Lists the answers on your Your Content page, newest first, with the question each answers and its URL. Pass next_cursor back as cursor for the next page.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `limit` | integer | no | 1 to 50. Default: 20. |
| `cursor` | string | no | Next page cursor from the previous call. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_list_my_answers",
    "arguments": {}
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "answers": [
      {
        "answer_id": "391847562",
        "question": "How do freelancers track expenses for taxes?",
        "url": "https://www.quora.com/How-do-freelancers-track-expenses-for-taxes/answer/Your-Name",
        "created_at": "2026-10-10T14:20:00Z"
      }
    ],
    "next_cursor": null
  },
  "isError": false
}
```

## List answer requests

MCP tool: `quora_list_answer_requests`

Access: read.

Lists the requests on your Answer Requests page, with the question and who asked. Anyone on Quora can send a request to anyone, so expect questions outside your topics. Pass question_url to get_question.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `limit` | integer | no | 1 to 50. Default: 20. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_list_answer_requests",
    "arguments": {}
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "requests": [
      {
        "question": "What is the best way to invoice a client abroad?",
        "question_url": "https://www.quora.com/What-is-the-best-way-to-invoice-a-client-abroad",
        "requested_by": "Sam Ortiz",
        "requested_at": "2026-10-09T08:12:00Z"
      }
    ]
  },
  "isError": false
}
```

## List my Spaces

MCP tool: `quora_list_my_spaces`

Access: read.

Lists your Spaces with your role in each: owner, admin, moderator, contributor or follower. The role decides what you can do: only owners, admins, moderators and contributors can post, and only owners, admins and moderators see stats and submissions. Use space_id in the other Space tools.

### Parameters

No parameters.

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_list_my_spaces",
    "arguments": {}
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "spaces": [
      {
        "space_id": "sp_5521",
        "name": "Freelance Finance",
        "role": "admin",
        "url": "https://freelancefinance.quora.com"
      },
      {
        "space_id": "sp_1190",
        "name": "Small Business Tips",
        "role": "follower",
        "url": "https://smallbiztips.quora.com"
      }
    ]
  },
  "isError": false
}
```

## Get Space stats

MCP tool: `quora_get_space_stats`

Access: read.

Returns the five statistics Quora lists for a Space, as totals and for the last 7 days, plus Top Content ranked by views and upvotes. Visible to Space owners, admins and moderators.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `space_id` | string | yes | Space ID from list_my_spaces. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_get_space_stats",
    "arguments": {
      "space_id": "space_8c41d2"
    }
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "space_id": "sp_5521",
    "all_time": {
      "views": 182400,
      "followers": 3120,
      "upvotes": 5210,
      "comments": 640,
      "notification_clicks": 1870
    },
    "last_7_days": {
      "views": 4120,
      "followers": 38,
      "upvotes": 96,
      "comments": 12,
      "notification_clicks": 41
    },
    "top_content": [
      {
        "title": "Month-end checklist",
        "views": 9300,
        "upvotes": 210
      }
    ]
  },
  "isError": false
}
```

## List Space submissions

MCP tool: `quora_list_space_submissions`

Access: read.

Lists the submissions in the Space inbox: answers, posts and questions followers sent for consideration. Admins and moderators only. Spaces do not accept submissions unless the Space turned them on. Pass submission_id to review_space_submission.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `space_id` | string | yes | Space ID from list_my_spaces. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_list_space_submissions",
    "arguments": {
      "space_id": "space_8c41d2"
    }
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "submissions": [
      {
        "submission_id": "sub_8841",
        "type": "post",
        "title": "Invoice template for freelancers",
        "author": "Ana Lopez",
        "submitted_at": "2026-10-09T10:30:00Z"
      }
    ]
  },
  "isError": false
}
```

## Post answer

MCP tool: `quora_post_answer`

Access: write. Confirm: waits for the user's OK before it runs.

Publishes an answer under your name below the question you name. Images go in the body as URLs. The answer is public at once and follows Quora's answer rules. By default you confirm each call; you can switch that off for this tool.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `question_url` | string | yes | Question URL on quora.com. |
| `body_markdown` | string | yes | Answer text. Images by URL. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_post_answer",
    "arguments": {
      "question_url": "https://www.quora.com/How-do-freelancers-track-expenses-for-taxes",
      "body_markdown": "I keep one card for business costs only and export it to a spreadsheet every month."
    }
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "answer_id": "391847562",
    "status": "published",
    "url": "https://www.quora.com/How-do-freelancers-track-expenses-for-taxes/answer/Your-Name",
    "created_at": "2026-10-11T14:20:00Z"
  },
  "isError": false
}
```

## Ask question

MCP tool: `quora_ask_question`

Access: write. Confirm: waits for the user's OK before it runs.

Adds a new question under your name. In a Space where you are not a contributor, a question needs approval from an admin or moderator before it appears. By default you confirm each call; you can switch that off for this tool.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `question` | string | yes | Question text, ending with a question mark. |
| `space_id` | string | no | Post it in this Space instead of Quora at large. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_ask_question",
    "arguments": {
      "question": "question"
    }
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "question": "How do I split a client invoice across two currencies?",
    "question_url": "https://www.quora.com/How-do-I-split-a-client-invoice-across-two-currencies",
    "status": "published"
  },
  "isError": false
}
```

## Post to Space

MCP tool: `quora_post_to_space`

Access: write. Confirm: waits for the user's OK before it runs.

Creates a post in a Space where you are an owner, admin, moderator or contributor. Mode post publishes it at once. Mode queue adds it to the Space queue, which posts it over a staggered period; queue needs an admin or moderator role. By default you confirm each call; you can switch that off for this tool.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `space_id` | string | yes | Space ID from list_my_spaces. |
| `body_markdown` | string | yes | Post text. Images by URL. |
| `title` | string | no | Optional post title. |
| `mode` | enum | no | post or queue. Default: post. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_post_to_space",
    "arguments": {
      "space_id": "sp_5521",
      "title": "Month-end checklist",
      "body_markdown": "Five things to reconcile before you close the books.",
      "mode": "queue"
    }
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "post_id": "sp_post_2207",
    "space_id": "sp_5521",
    "status": "queued"
  },
  "isError": false
}
```

## Review Space submission

MCP tool: `quora_review_space_submission`

Access: write. Confirm: waits for the user's OK before it runs.

Approve publishes the submission at once. Queue adds it to the Space queue. Pass removes it from the pending list, and Quora does not notify the submitter. By default you confirm each call; you can switch that off for this tool.

### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `space_id` | string | yes | Space ID from list_my_spaces. |
| `submission_id` | string | yes | Submission ID from list_space_submissions. |
| `action` | enum | yes | approve, queue or pass. |

### tools/call

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quora_review_space_submission",
    "arguments": {
      "space_id": "sp_5521",
      "submission_id": "sub_8841",
      "action": "queue"
    }
  }
}
```

### Example response

```json
{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "submission_id": "sub_8841",
    "space_id": "sp_5521",
    "status": "queued"
  },
  "isError": false
}
```
