Skip to main content
Glama

Acrolinx MCP Server

Official
by acrolinx
README.md6.61 kB
# Markup.ai MCP Server A Model Context Protocol (MCP) server that integrates with the Markup.ai API to provide advanced text analysis and improvement capabilities to AI assistants like Claude and Cursor. ## Features - **Text Rewriting**: Automatically improve text for clarity, tone, and style guide compliance - **Content Analysis**: Get detailed quality scores across multiple dimensions - **Writing Suggestions**: Receive specific recommendations for text improvements - **Style Guide Support**: AP, Chicago Manual of Style, Microsoft, and Proofpoint - **Multiple Dialects**: American, British, Australian, and Canadian English - **Tone Flexibility**: Academic, business, casual, conversational, formal, gen-z, informal, and technical ## Installation ### Prerequisites - Node.js 18.0.0 or higher - A Markup AI API key ### Setup 1. Clone the repository: ```bash git clone https://github.com/markupai/mcp.git cd mcp ``` 2. Install dependencies: ```bash npm install ``` 3. Configure environment variables: ```bash cp .env.example .env # Edit .env and add your MARKUPAI_API_KEY ``` 4. Build the project: ```bash npm run build ``` ## Configuration | Variable | Required | Description | Default | |----------|----------|-------------|---------| | `MARKUPAI_API_KEY` | Yes | Your Markup.ai API key | - | | `MARKUPAI_BASE_URL` | No | API base URL | `https://api.markup.ai` | | `DEBUG` | No | Enable debug logging | `false` | | `MAX_TEXT_LENGTH` | No | Maximum text length (chars) | `100000` | | `WORKFLOW_TIMEOUT` | No | Workflow timeout (ms) | `60000` | | `POLL_INTERVAL` | No | Status check interval (ms) | `2000` | | `MAX_RETRIES` | No | API retry attempts | `3` | ## Usage with AI IDEs This MCP server is compatible with any IDE that supports the Model Context Protocol, including Claude Desktop and Cursor. ### Configuration The configuration is identical for all MCP-compatible IDEs. Only the **configuration file location** differs: | IDE | Configuration File Location | |-----|----------------------------| | **Claude Desktop** (macOS) | `~/Library/Application Support/Claude/claude_desktop_config.json` | | **Claude Desktop** (Windows) | `%APPDATA%\Claude\claude_desktop_config.json` | | **Cursor** (macOS/Linux) | `~/.cursor/mcp.json` | | **Cursor** (Windows) | `%USERPROFILE%\.cursor\mcp.json` | ### Option 1: Run directly from GitHub (recommended) Add this configuration to your IDE's MCP configuration file: ```json { "mcpServers": { "markupai": { "command": "npx", "args": [ "-y", "github:markupai/mcp" ], "env": { "MARKUPAI_API_KEY": "your_api_key_here" } } } } ``` ### Option 2: Run from local installation For local development or if you prefer to run from a local installation: ```json { "mcpServers": { "markupai": { "command": "node", "args": ["/path/to/mcp/dist/index.js"], "env": { "MARKUPAI_API_KEY": "your_api_key_here" } } } } ``` **Note**: After updating the configuration, restart your IDE for the changes to take effect. ### Using with Cursor When using this MCP server with Cursor, you'll see a "Calling undefined" message with a "Run tool" button when the AI wants to use Markup.ai tools. This is **normal behavior** - simply click "Run tool" to approve the analysis. This manual approval is Cursor's security feature for MCP tool execution. ## Available Tools ### `markupai_rewrite` Automatically rewrite and improve text content. **Parameters:** - `text` (required): The text to rewrite - `dialect`: Language dialect (default: "american_english") - `tone`: Desired tone (default: "formal") - `style_guide`: Style guide to follow (default: "microsoft") ### `markupai_check` Analyze text for quality issues without making changes. **Parameters:** - `text` (required): The text to analyze - `dialect`: Language dialect (default: "american_english") - `tone`: Target tone to check against (default: "formal") - `style_guide`: Style guide to check against (default: "microsoft") ### `markupai_suggestions` Get detailed editing suggestions for improving text. **Parameters:** - `text` (required): The text to get suggestions for - `dialect`: Language dialect (default: "american_english") - `tone`: Target tone for suggestions (default: "formal") - `style_guide`: Style guide for suggestions (default: "microsoft") ### `markupai_workflow_status` Check the status of an asynchronous workflow. **Parameters:** - `workflow_id` (required): The workflow ID to check - `workflow_type` (required): Type of workflow ("rewrites", "checks", or "suggestions") ## Development ### Running in Development Mode ```bash npm run dev ``` ### Running Tests ```bash # Test suggestions endpoint node test-suggestions.js # Test complete workflow node test-suggestions-complete.js ``` ### Building ```bash npm run build ``` ## Troubleshooting ### Common Issues 1. **"Calling undefined" message in Cursor**: This is normal Cursor behavior, not an error. When you see this message with a "Run tool" button, click the button to execute the Markup.ai analysis. This is Cursor's security feature requiring manual approval for MCP tool execution. 2. **"Client closed" error in Cursor**: Try clearing the npx cache: `npx clear-npx-cache` and restart Cursor 3. **API key issues**: Verify your `MARKUPAI_API_KEY` is correctly set in the environment variables 4. **Permission errors**: On Unix systems, ensure the compiled JavaScript file is executable (`chmod +x dist/index.js`) ### Debug Mode Enable debug logging by setting `DEBUG=true` in your environment: ```bash DEBUG=true npm run start ``` ## Architecture The server implements the Model Context Protocol using stdio transport and provides four main tools that interact with the Markup.ai API. Key features include: - **Cross-IDE Compatibility**: Works with Claude Desktop, Cursor, and any MCP-compatible IDE - **Retry Logic**: Exponential backoff for improved reliability - **Timeout Handling**: Configurable timeouts for long-running operations - **Comprehensive Logging**: Debug mode for troubleshooting - **Type Safety**: Full TypeScript implementation with proper type guards - **Graceful Shutdown**: Proper cleanup on termination ## License MIT ## Contributing 1. Fork the repository 2. Create a feature branch 3. Make your changes 4. Run `npm run build` to ensure everything compiles 5. Submit a pull request ## Support For issues and questions: - Create an issue on GitHub - Check the [Markup AI documentation](https://docs.markupai.com) - Contact Markup.ai support

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/acrolinx/nextgen-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server