mcpField
B
Blujay

Blujay

Local
docs.blujay.ioOther0Updated today

About Blujay

Blujay MCP Server lets AI assistants access a Blujay account to read conversations, find messages awaiting replies, and send iMessage, RCS, and SMS from Blujay phone numbers. It separates read and action tools and offers read-only and recipient restrictions.

Key features

  1. 01Read conversations and find unanswered messages
  2. 02Send iMessage, RCS, and SMS
  3. 03Attach files, media, or contact cards
  4. 04Manage contacts, workflows, and webhooks
  5. 05Restrict tools to read-only or allowed numbers

Use cases

  1. 01Summarize a conversation and draft a reply
  2. 02Check delivery status or iMessage availability
  3. 03Send texts with attachments
  4. 04Set up webhooks for new messages

MCP support

The stdio MCP server connects to a Blujay account and exposes conversation, contact, and messaging tools to clients, including actions such as sending. Tools can be limited to read-only or restricted to specified numbers.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"blujayhq-blujay": {
"command": "npx",
"args": [
"-y",
"blujay-mcp"
],
"env": {
"BLUJAY_API_KEY": "<BLUJAY_API_KEY>"
}
}
}
}
Run commandnpx -y blujay-mcp
Environment variables to set
BLUJAY_API_KEYSecretYour Blujay API key, from API in the Blujay sidebar.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmblujay-mcp1.0.3

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Blujay MCP Server

npm CI License: MIT

Let Claude, Cursor, VS Code and other AI assistants work with your Blujay account: read conversations, see who needs a reply, and send iMessage, RCS and SMS from your Blujay phone numbers.

Every text is real. Blujay has no test mode. Most assistants ask before each send unless you've set them to approve tools automatically, so try it with --allow-send-to limited to your own number first (see Safety).

What you can ask

  • "Who texted me today that I haven't answered?"
  • "Summarize my conversation with Ava and draft a reply."
  • "Text +1 555 555 0123: running 10 minutes late."
  • "Send Ava the photo on my Desktop called beach.jpg."
  • "Text Sam the lease PDF in my Downloads folder."
  • "Send Ava happy birthday with balloons."
  • "Did my last message to Sam get delivered?"
  • "Start the Website demo texts workflow for Ava."
  • "Does this number have iMessage?"
  • "Set up a webhook to https://example.com/blujay for new messages."
  • "How do I verify webhook signatures?"

Setup

You need Node.js 20 or later and a Blujay API key from the API tab in Blujay.

Add to Cursor Install in VS Code

The buttons add the server with a placeholder key; replace blu_your_api_key with yours.

Claude Desktop

Open Settings → Developer → Edit Config and add:

{
  "mcpServers": {
    "blujay": {
      "command": "npx",
      "args": ["-y", "blujay-mcp"],
      "env": { "BLUJAY_API_KEY": "blu_your_api_key" }
    }
  }
}

Restart Claude Desktop.

Claude Code
claude mcp add blujay --env BLUJAY_API_KEY=blu_your_api_key -- npx -y blujay-mcp
Cursor

In Cursor Settings → Tools & MCP → New MCP Server, add to mcp.json:

{
  "mcpServers": {
    "blujay": {
      "command": "npx",
      "args": ["-y", "blujay-mcp"],
      "env": { "BLUJAY_API_KEY": "blu_your_api_key" }
    }
  }
}
VS Code

Add to .vscode/mcp.json in your project:

{
  "servers": {
    "blujay": {
      "command": "npx",
      "args": ["-y", "blujay-mcp"],
      "env": { "BLUJAY_API_KEY": "${input:blujay-api-key}" }
    }
  },
  "inputs": [
    { "id": "blujay-api-key", "type": "promptString", "description": "Blujay API key", "password": true }
  ]
}
Other MCP clients

Run npx -y blujay-mcp with BLUJAY_API_KEY set. It speaks MCP over stdio.

Safety

  • Assistants ask before sends. Every tool is labeled read or act, so your client can approve reads and ask before anything reaches a person.
  • --allow-send-to +15555550123 limits every send and change to the numbers you list; try it on your own number first.
  • --read-only leaves out every tool that sends, changes or deletes.
  • Files only by full path: photos, videos, documents, contact cards and audio up to 100 MiB, checked by their contents.

Details, including what these checks can't stop, are in SECURITY.md.

Tools

ToolWhat it doesReaches a person
get_accountYour workspace and phone numbers, and what each can do
list_conversationsRecent conversations, optionally with one person or on one number
get_conversationA conversation as a transcript, found by phone number, email or chat ID
find_unansweredConversations where the other person is waiting on you
get_messageA message's delivery status and why it failed
check_imessageWhether a number uses iMessage
find_contactsSearch contacts by name, phone or email, or list saved (or unsaved) contacts
list_workflowsWorkflows you can start for a contact (active, published, started manually; tag-triggered ones start with save_contact)
list_webhooksWebhook subscriptions and recent delivery attempts
search_docsSearch docs.blujay.io
send_messageText a person or group, or reply in a conversation, with an optional photo, video, document, contact card or audio file (sent as a voice memo) from your computer, a photo, video or contact card from a link, or an iMessage effect such as balloons or slam on a follow-upYes
react_to_messageAdd or remove a tapback or an emoji reactionYes
edit_messageEdit a sent iMessageYes
unsend_messageUnsend an iMessageYes
mark_conversation_readMark a conversation as readYes (read receipt)
set_typingShow or hide the typing bubbleYes
update_groupRename an iMessage group, or add or remove a personYes
save_contactCreate or update a contact, and tag itCan: a tag can start a workflow that texts them
enroll_in_workflowStart a manual workflow for a contact; safe to retry, never enrolls twice for the same requestYes: the workflow texts them
opt_out_contactStop all texts to a contact (off with --allow-send-to)
create_webhookCreate a webhook subscription (off with --allow-send-to)
invoke_apiCall any Blujay endpoint (only with --enable-invoke-api)Depends

Prompts

Your MCP client shows these as ready-made actions:

  • Who needs a reply? Finds the conversations waiting on you and drafts a reply for each, without sending.
  • Summarize a conversation with one person.
  • Send me a test message to your own phone and confirm it arrived.

Options

OptionEffect
--read-onlyOnly the tools that read
--allow-send-to <numbers>Only reach these comma-separated numbers
--enable-invoke-apiAdd invoke_api for any endpoint. Only GET with --read-only or --allow-send-to
--help, --version

Troubleshooting

  • "set BLUJAY_API_KEY": add the key to the env block of your MCP client's config, then restart the client.
  • 401, API_KEY_REVOKED or API_KEY_EXPIRED: email [email protected] for a new key, then update BLUJAY_API_KEY.
  • The tools don't appear: check that npx -y blujay-mcp --version works in a terminal, and restart your MCP client.

More

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.