renxt-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@renxt-mcpList the first 10 constituents"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Renxt MCP Server
A Model Context Protocol (MCP) server that provides Claude Desktop with access to Blackbaud Raiser's Edge NXT (RENXT) API for constituent management.
Features
List Constituents: Retrieve paginated lists of constituents
Search Constituents: Search for constituents by name, email, or lookup ID
Get Constituent Details: Fetch detailed information for specific constituents
OAuth Token Management: Automatic token refresh and secure credential handling
Claude Desktop Integration: Seamless integration with Claude Desktop via MCP
Related MCP server: BigTime MCP Server
Prerequisites
Node.js (v18 or higher)
Blackbaud Developer Account with RENXT API access
Claude Desktop application
Installation
Clone the repository
git clone https://github.com/RynneSpin/renxt-mcp.git cd renxt-mcpInstall dependencies
npm installSet up environment variables
Create a
.envfile in the project root:BLACKBAUD_CLIENT_ID=your_client_id_here BLACKBAUD_CLIENT_SECRET=your_client_secret_here BLACKBAUD_SUBSCRIPTION_KEY=your_subscription_key_here BLACKBAUD_REDIRECT_URI=http://localhost:5173/callback PORT=5173Authenticate with Blackbaud
npm run authThis will open a browser window for OAuth authentication and save your tokens.
Claude Desktop Configuration
Add the server to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"renxt": {
"command": "/usr/local/bin/node",
"args": ["/path/to/renxt-mcp/server.js"],
"cwd": "/path/to/renxt-mcp"
}
}
}Replace /path/to/renxt-mcp with the actual path to your project directory.
Available Tools
list_constituents
Lists constituents with optional limit parameter.
Parameters:
limit(optional): Maximum number of constituents to return (1-50, default: 10)
Example usage in Claude:
"List the first 5 constituents"
search_constituents
Search for constituents by text criteria.
Parameters:
search_text(required): Text to search forsearch_field(optional): Field to search in (name,email_address,lookup_id)strict_search(optional): Whether to perform strict searchlimit(optional): Maximum results to return (1-50, default: 10)
Example usage in Claude:
"Search for constituents with the name 'Smith'"
get_constituent
Retrieve detailed information for a specific constituent.
Parameters:
id(required): The constituent's system ID
Example usage in Claude:
"Get details for constituent ID 12345"
Development
Running the Server
npm startProject Structure
renxt-mcp/
├── server.js # Main MCP server implementation
├── auth.js # OAuth authentication flow
├── package.json # Dependencies and scripts
├── .env # Environment variables (not in repo)
├── tokens.json # OAuth tokens (not in repo)
└── .gitignore # Git ignore rulesAPI Integration
The server integrates with the following Blackbaud RENXT API endpoints:
GET /constituent/v1/constituents- List constituentsGET /constituent/v1/constituents/{id}- Get constituent detailsGET /constituent/v1/constituents/search- Search constituents
Security
Environment Variables: Sensitive credentials are stored in
.envfile (not tracked in git)Token Management: OAuth tokens are automatically refreshed when expired
Secure Storage: Tokens are stored locally in
tokens.json(not tracked in git)
Troubleshooting
Server Shows as "Disabled" in Claude Desktop
Ensure the
cwdpath in your Claude Desktop config is correctVerify Node.js path with
which nodeand update thecommandfieldCheck that all dependencies are installed with
npm installRestart Claude Desktop after configuration changes
Authentication Issues
Verify your Blackbaud developer credentials in
.envEnsure your redirect URI matches the one configured in your Blackbaud app
Re-run the authentication:
npm run auth
API Errors
Check that your Blackbaud subscription key is valid
Verify your API permissions in the Blackbaud developer console
Ensure tokens haven't expired (automatic refresh should handle this)
Contributing
Fork the repository
Create a feature branch:
git checkout -b feature-nameMake your changes and commit:
git commit -m 'Add feature'Push to the branch:
git push origin feature-nameSubmit a pull request
License
This project is licensed under the ISC License.
Support
For issues related to:
MCP Server: Open an issue on this repository
Blackbaud API: Consult the Blackbaud Developer Documentation
Claude Desktop: Check the Claude Desktop Documentation
Built with ❤️ for the nonprofit community using Blackbaud Raiser's Edge NXT.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/RynneSpin/renxt-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server