Back to Browse

Alttext MCP Server

Developer ToolsUse Caution4.2MCP RegistryLocal
Free

Server data from the Official MCP Registry

Generate alt text, translate descriptions, and manage your AltText.ai image library.

About

Generate alt text, translate descriptions, and manage your AltText.ai image library.

Security Report

4.2
Use Caution4.2High Risk

The AltText.ai MCP server has well-structured code with proper authentication, input validation, and appropriate error handling. However, there are notable security concerns: suspicious dependencies (oidc-provider and redis in production package.json despite not being used), a version mismatch between main and package/package.json files, and potential risks in the remote OAuth integration test code. The authentication model is sound (API key via env vars), permissions align with purpose (network for API calls, file I/O for local images), and the codebase demonstrates good security practices in the main server logic. Supply chain analysis found 4 known vulnerabilities in dependencies (1 critical, 1 high severity). Package verification found 1 issue.

6 files analyzed · 13 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

env_vars

Check that this permission is expected for this type of plugin.

File System Read

Reads files on your machine. Normal for tools that analyze or process local data.

File System Write

Writes or modifies files on your machine. Check that this is expected for the tool.

What You'll Need

Set these up before or after installing:

Your AltText.ai API keyRequired

Environment variable: ALTTEXT_API_KEY

Optional API base URL override for proxies or alternate endpointsOptional

Environment variable: ALTTEXT_API_BASE_URL

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-alttextai-alttext-mcp": {
      "env": {
        "ALTTEXT_API_KEY": "your-alttext-api-key-here",
        "ALTTEXT_API_BASE_URL": "your-alttext-api-base-url-here"
      },
      "args": [
        "-y",
        "@alttext_ai/alttext-mcp"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

AltText.ai MCP Server

An MCP server that lets AI assistants generate alt text, manage image libraries, and queue alt text generation for web page images using the AltText.ai API.

Works with Claude Desktop, Claude Code, Cursor, Windsurf, and any MCP-compatible client.

Verify this package

This server runs npx -y @alttext_ai/alttext-mcp, which downloads and executes code with your API key in its environment. That's worth a moment of verification before you install — by you or by an AI agent doing the setup. Everything below should match:

SignalValue
npm package@alttext_ai/alttext-mcp
Source repositorygithub.com/alttextai/alttext-mcp
PublisherAltText.ai
ProvenancePublished from this repo's CI with npm provenance — npm shows a verified build badge linking the package to this exact commit

The npm scope is @alttext_ai (with an underscore), while the GitHub org is alttextai (no underscore). This is intentional, not a typosquat: the @alttextai npm scope was already taken, so we publish under @alttext_ai. The two names refer to the same official AltText.ai package.

To cryptographically verify the published package was built by this repo's CI — not just trust the metadata — run:

npm audit signatures

from a project where the package is installed. This validates the registry signature and the npm provenance attestation, which links the tarball to a specific commit and GitHub Actions build. A counterfeit package can forge repository.url and other metadata, but it cannot forge the provenance attestation — so this is the check that actually matters.

(For a quick, weaker cross-reference of the claimed source you can run npm view @alttext_ai/alttext-mcp repository.url, but note that field is publisher-controlled metadata and proves nothing on its own.)

Pinning a version

The setup snippet uses npx -y @alttext_ai/alttext-mcp, which always resolves to the latest published version and re-runs it on every launch. That keeps you current, but it also means a future release runs automatically without review. If you want a reproducible, audited install, pin a specific version:

"args": ["-y", "@alttext_ai/alttext-mcp@1.0.5"]

Run npm audit signatures against the pinned version, and bump it deliberately when you're ready to take a new release.

Setup

Requirements: Node.js 22+ and an AltText.ai API key

Add the server to your MCP client configuration:

{
  "mcpServers": {
    "alttext-ai": {
      "command": "npx",
      "args": ["-y", "@alttext_ai/alttext-mcp"],
      "env": {
        "ALTTEXT_API_KEY": "your-api-key"
      }
    }
  }
}

Where to add this:

ClientConfig file
Claude Desktopclaude_desktop_config.json
Claude Code.mcp.json in your project root
CursorMCP settings in the Cursor preferences
WindsurfMCP settings in the Windsurf preferences

Tools

Account Management

ToolDescription
get_accountCheck your credit balance, usage, and account settings.
update_accountUpdate account name, webhook URL, or notification email.

Generate Alt Text

ToolDescription
generate_alt_textGenerate alt text for an image URL. Supports multilingual output, custom prompts, keywords, and character limits. Uses account credits.
generate_alt_text_from_fileGenerate alt text from a local image file. Automatically base64-encodes and uploads. Uses account credits.
translate_imageAdd alt text in a new language for an existing image (by asset_id). Uses account credits.

Manage Image Library

ToolDescription
list_imagesList images in your library with pagination.
search_imagesSearch your image library by alt text content.
get_imageGet details for a specific image by asset ID.
update_imageUpdate alt text, tags, or metadata for an image.
delete_imageDelete an image from your library.

Bulk Operations

ToolDescription
bulk_createBulk generate alt text from a CSV file with image URLs and optional metadata.
scrape_pageScan a web page, find images missing alt text, and queue generation. Results are async -- use list_images to check progress.

Effects and processing

This package uses stdio and runs on the machine launching the MCP client. Image and CSV paths refer to that machine; selected file contents are uploaded to AltText.ai.

Generation and translation use your account credits. Additional languages and image conversion can increase the total. Check get_account before paid work. Generation can overwrite existing alt text when requested; updates replace supplied fields and deletion removes the image from the library.

CSV imports and page scraping queue background processing. An accepted request does not mean generation has finished; inspect the image library and any configured completion notifications. Tool annotations describe effects for clients; they do not enforce confirmation.

Example Prompts

Once configured, just ask your AI assistant:

Account & Credits

Generate Alt Text

  • "Generate alt text for https://example.com/photo.jpg"
  • "Generate alt text for this image" (with local file)
  • "Generate alt text in French and Spanish for this image"
  • "Translate image abc123 to German"

Manage Library

  • "Search my images for 'product photo'"
  • "List my images"
  • "Get details for image abc123"
  • "Update the alt text for asset abc123"
  • "Delete image xyz789"

Bulk Operations

  • "Generate alt text for images missing it on https://example.com"
  • "Process this CSV file of image URLs" (bulk_create)

Environment Variables

VariableRequiredDescription
ALTTEXT_API_KEYYesYour AltText.ai API key
ALTTEXT_API_BASE_URLNoOverride the API base URL (default: https://alttext.ai/api/v1)

Development

npm install
npm run build
npm test
npm run lint

Tests use mocked fetch calls -- no API key or network access needed.

Hosted deployments must rate-limit POST /register at a trusted edge using the verified client address. The Node service deliberately ignores forwarded client-address headers because accepting them without an authenticated proxy boundary would let callers spoof the rate-limit identity.

The production container and required settings are documented in docs/deployment.md.

License

MIT

Registry publishing

server.json describes the stdio npm package. Its name matches mcpName in package.json; both versions must match the release being submitted. Publish and verify that exact npm version before running mcp-publisher publish. Registry acceptance and directory approval are separate from an npm release.

Reviews

No reviews yet

Be the first to review this server!