# sorsa-mcp

**Category:** 🌐 Social Media  
**Repository:** https://github.com/Sorsa-io/sorsa-mcp  
**npm Downloads (last month):** 167  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/sorsa-mcp

## Description
MCP server for the Sorsa.io X/Twitter data API

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "sorsa-mcp": {
    "command": "npx",
    "args": ["-y","sorsa-mcp"]
  }
}
```

## Documentation & README

# Sorsa MCP

An [MCP](https://modelcontextprotocol.io) server for the [Sorsa.io API v3](https://api.sorsa.io/v3/swagger.json) —
access to X/Twitter data: profiles, tweets, search, follow/retweet checks, Sorsa scores, lists and communities.

The server exposes **40 tools**, one per API endpoint.

## Installation

```bash
npm install
npm run build
```

Or, once published, run it with no install via `npx` (see below).

## Configuration

You need a Sorsa API key. It is read from the `SORSA_API_KEY` environment variable
and sent with every request in the `ApiKey` header.

| Variable          | Required | Default                      |
| ----------------- | -------- | ---------------------------- |
| `SORSA_API_KEY`   | yes      | —                            |
| `SORSA_BASE_URL`  | no       | `https://api.sorsa.io/v3`    |

## Connecting a client

### Cursor

Add to `~/.cursor/mcp.json` (global) or `.cursor/mcp.json` (per project).

Using the published npm package (nothing to install, `npx` fetches it):

```json
{
  "mcpServers": {
    "sorsa": {
      "command": "npx",
      "args": ["-y", "sorsa-mcp"],
      "env": {
        "SORSA_API_KEY": "YOUR_KEY"
      }
    }
  }
}
```

Or running from a locally built checkout:

```json
{
  "mcpServers": {
    "sorsa": {
      "command": "node",
      "args": ["D:\\Code\\Cursor Projects\\Sorsa_MCP\\dist\\index.js"],
      "env": {
        "SORSA_API_KEY": "YOUR_KEY"
      }
    }
  }
}
```

### Claude Desktop

Edit `%APPDATA%\Claude\claude_desktop_config.json` and add the same `mcpServers`
block as above, then restart the app.

## Local check

```bash
# build
npm run build

# run (communicates over stdio — easiest to test through a client)
SORSA_API_KEY=YOUR_KEY npm start
```

The quickest way to confirm your key works is the `get_key_usage_info` tool —
it returns your remaining request balance and the key's expiration date.

## Available tools

**Profiles:** `get_user_info`, `get_user_info_batch`, `get_followers`, `get_following`,
`get_verified_followers`, `get_account_about`

**Tweets:** `get_tweet_info`, `get_tweet_info_bulk`, `get_user_tweets`, `get_tweet_comments`,
`get_tweet_quotes`, `get_retweeters`, `get_article`, `get_trends`

**Search:** `search_tweets`, `search_users`, `search_mentions`, `get_space_info`

**Communities:** `get_community_members`, `get_community_tweets`, `search_community_tweets`

**Checks:** `check_follow`, `check_comment`, `check_quoted`, `check_retweet`,
`check_community_member`

**Sorsa metrics:** `get_sorsa_score`, `get_sorsa_score_changes`, `get_followers_stats`,
`get_top_followers`, `get_top_following`, `get_new_followers_7d`, `get_new_following_7d`

**Lists:** `get_list_members`, `get_list_tweets`, `get_list_followers`

**Utilities:** `username_to_id`, `id_to_username`, `link_to_id`, `get_key_usage_info`

## Project layout

- `src/endpoints.ts` — a declarative table of every endpoint (method, path, parameters).
  To add or change a tool, edit this file only.
- `src/index.ts` — the HTTP client plus tool registration driven by that table.

## How it works

Each endpoint is one entry in `ENDPOINTS`. Based on each field's `in`
(`path` / `query` / `body`), the handler routes arguments into the URL path, the
query string, or the JSON body, then sends the request to Sorsa with the `ApiKey`
header. The response is returned to the client as JSON text.

## License

MIT

