Let your AI agents interact with the Newline Banking API by using our MCP server.
The Newline Model Context Protocol (MCP) server provides a comprehensive set of tools that AI agents can use to interact with the Newline Banking API for managing synthetic accounts, transfers, customers, transactions, and other banking operations.
Add the following to your ~/.cursor/mcp.json file. To learn more, see the Cursor documentation.
{
"mcpServers": {
"newline": {
"command": "npx",
"args": ["-y", "git+https://github.com/newline53/newline-mcp-server"],
"env": {
"NEWLINE_HMAC_KEY": "<<YOUR_HMAC_KEY>>",
"NEWLINE_PROGRAM_ID": "<<YOUR_PROGRAM_ID>>",
"NEWLINE_BASE_URL": "https://sandbox.newline53.com/api/v1"
}
}
}
}The code editor agent automatically detects all the available tools, calling the relevant tool when you post a related question in the chat.
Add the following to your .vscode/mcp.json file in your workspace. To learn more, see the VS Code documentation.
Using promptStrings - this will prompt for input
{
"inputs": [
{
"type": "promptString",
"id": "hmac-key",
"description": "Newline HMAC API key",
"password": true
},
{
"type": "promptString",
"id": "program-id",
"description": "Newline program ID",
"password": true
},
{
"type": "promptString",
"id": "base-url",
"description": "Newline API base URL",
"default": "https://sandbox.newline53.com/api/v1"
}
],
"servers": {
"newline": {
"command": "npx",
"args": ["-y", "git+https://github.com/newline53/newline-mcp-server"],
"env": {
"NEWLINE_HMAC_KEY": "${input:hmac-key}",
"NEWLINE_PROGRAM_ID": "${input:program-id}",
"NEWLINE_BASE_URL": "${input:base-url}"
}
}
}
}Using Environment Variables
{
"servers": {
"special-mcp-server": {
"command": "npx",
"args": ["git+https://github.com/newline53/newline-mcp-server"],
"env": {
"NEWLINE_HMAC_KEY": "${env:NEWLINE_HMAC_KEY}",
"NEWLINE_PROGRAM_ID": "${env:NEWLINE_PROGRAM_ID}",
"NEWLINE_BASE_URL": "${env:NEWLINE_BASE_URL}"
}
}
}
}Add the following to your ~/.codeium/windsurf/mcp_config.json file. To learn more, see the Windsurf documentation.
{
"mcpServers": {
"newline": {
"command": "npx",
"args": ["-y", "git+https://github.com/newline53/newline-mcp-server"],
"env": {
"NEWLINE_HMAC_KEY": "<<YOUR_HMAC_KEY>>",
"NEWLINE_PROGRAM_ID": "<<YOUR_PROGRAM_ID>>",
"NEWLINE_BASE_URL": "https://sandbox.newline53.com/api/v1"
}
}
}
}Add the following to your claude_desktop_config.json file. To learn more, see the Claude Desktop documentation.
{
"mcpServers": {
"newline": {
"command": "npx",
"args": ["-y", "git+https://github.com/newline53/newline-mcp-server"],
"env": {
"NEWLINE_HMAC_KEY": "<<YOUR_HMAC_KEY>>",
"NEWLINE_PROGRAM_ID": "<<YOUR_PROGRAM_ID>>",
"NEWLINE_BASE_URL": "https://sandbox.newline53.com/api/v1"
}
}
}
}Start the MCP server locally with this command:
NEWLINE_HMAC_KEY="<<YOUR_HMAC_KEY>>" \
NEWLINE_PROGRAM_ID="<<YOUR_PROGRAM_ID>>" \
NEWLINE_BASE_URL="https://sandbox.newline53.com/api/v1" \
npx -y git+https://github.com/newline53/newline-mcp-serverOr install globally:
npm install -g git+https://github.com/newline53/newline-mcp-server
# Run the server
NEWLINE_HMAC_KEY="<<YOUR_HMAC_KEY>>" \
NEWLINE_PROGRAM_ID="<<YOUR_PROGRAM_ID>>" \
NEWLINE_BASE_URL="https://sandbox.newline53.com/api/v1" \
newlineThe Newline MCP server requires the following environment variables:
| Variable | Description | Required | Default |
|---|---|---|---|
NEWLINE_HMAC_KEY |
Your Newline API HMAC authentication key | Yes | - |
NEWLINE_PROGRAM_ID |
Your Newline program identifier | Yes | - |
NEWLINE_BASE_URL |
Newline API base URL | No | https://sandbox.newline53.com/api/v1 |
https_proxy / HTTPS_PROXY |
HTTPS proxy URL (optional) | No | - |
- Sandbox:
https://sandbox.newline53.com/api/v1(default) - Production: Contact Newline for production endpoint details
We strongly recommend:
- Never commit credentials to version control
- Use environment variables or secure credential management
- Regularly rotate your HMAC keys
- Use different credentials for development and production environments
- Enable human confirmation of tools when using the MCP server to avoid unintended operations
The server exposes 35+ MCP tools for interacting with the Newline Banking API. We recommend enabling human confirmation of tools and exercising caution when using the Newline MCP with other servers to avoid prompt injection attacks.
| Resource | Tool | Description |
|---|---|---|
| Authentication | get-newline-auth-token |
Retrieve current authentication token |
| Synthetic Accounts | get-synthetic-account-types |
List all available account types |
get-synthetic-accounts |
List all synthetic accounts | |
get-synthetic-account |
Get details of a specific account | |
create-synthetic-account |
Create a new synthetic account | |
delete-synthetic-accounts |
Delete a synthetic account | |
| Transfers | list-newline-transfers |
List all transfers |
get-newline-transfer |
Get details of a specific transfer | |
create-newline-transfer |
Create a new transfer (Wire, ACH, Instant Payment) | |
| Customers | list-customers |
List all customers |
get-customer |
Get details of a specific customer | |
| Transactions | list-transactions |
List all transactions |
get-transaction |
Get details of a specific transaction | |
| Pools | list-pools |
List all pools |
get-pool |
Get details of a specific pool | |
| Products | list-products |
List all products |
get-product |
Get details of a specific product | |
| Customer Products | list-customer-products |
List all customer products |
get-customer-product |
Get details of a specific customer product | |
| Custodial Accounts | list-custodial-accounts |
List all custodial accounts |
get-custodial-account |
Get details of a specific custodial account | |
| Transaction Events | list-transaction-events |
List all transaction events |
get-transaction-event |
Get details of a specific transaction event | |
| Synthetic Line Items | list-synthetic-line-items |
List all synthetic line items |
get-synthetic-line-item |
Get details of a specific synthetic line item | |
| Custodial Line Items | list-custodial-line-items |
List all custodial line items |
get-custodial-line-item |
Get details of a specific custodial line item | |
| Virtual Reference Numbers | list-virtual-reference-numbers |
List all virtual reference numbers |
get-virtual-reference-number |
Get details of a specific virtual reference number | |
| Returns | list-returns |
List all returns |
get-return |
Get details of a specific return | |
| Combined Transfers | list-combined-transfers |
List all combined transfers |
get-combined-transfer |
Get details of a specific combined transfer | |
| Customer Activities | list-customer-activities |
List all customer activities |
get-customer-activity |
Get details of a specific customer activity |
You can also run the Newline MCP server in a Docker container.
First, build the Docker image from the root directory of the project:
docker build -t newline-mcp-server:latest .Then run the container with your credentials:
docker run \
-e NEWLINE_HMAC_KEY="<<YOUR_HMAC_KEY>>" \
-e NEWLINE_PROGRAM_ID="<<YOUR_PROGRAM_ID>>" \
-e NEWLINE_BASE_URL="https://sandbox.newline53.com/api/v1" \
newline-mcp-server:latestAdd the following to your MCP configuration:
{
"servers": {
"newline-docker": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "NEWLINE_HMAC_KEY=<<YOUR_HMAC_KEY>>",
"-e", "NEWLINE_PROGRAM_ID=<<YOUR_PROGRAM_ID>>",
"-e", "NEWLINE_BASE_URL=https://sandbox.newline53.com/api/v1",
"newline-mcp-server:latest"
]
}
}
}Here are some example prompts you can use with AI assistants connected to the Newline MCP server:
- "List all synthetic account types available"
- "Show me all my synthetic accounts"
- "Create a new checking account for customer John Doe"
- "Get details for synthetic account with ID abc123"
- "List all recent transfers"
- "Create a wire transfer of $1000 from account A to account B"
- "Show me the status of transfer xyz789"
- "List all ACH transfers from last month"
- "List all customers"
- "Find customer details for john.doe@example.com"
- "Show me all customers created this week"
- "List all transactions for account abc123"
- "Show me transaction details for txn_456"
- "Get all transactions over $5000"
- "List all available pools"
- "Show me all products"
- "Get custodial account information"
If you receive authentication errors, verify:
- Your
NEWLINE_HMAC_KEYis correct and active - Your
NEWLINE_PROGRAM_IDmatches your Newline program - You're using the correct
NEWLINE_BASE_URLfor your environment
If the MCP server fails to connect:
- Check your network connectivity
- Verify any proxy settings if required (
https_proxyenvironment variable) - Ensure the Newline API endpoint is accessible from your network
If tools fail to execute:
- Verify you have the necessary permissions for the operation
- Check that required parameters are provided
- Review the error message for specific guidance
- Ensure your API credentials have access to the requested resources
If you're building agentic software, you can integrate the Newline MCP server into your autonomous workflows. The server supports standard MCP protocol and can be used with frameworks like:
- OpenAI's Responses API
- LangChain
- AutoGPT
- Custom agent implementations
Example integration with environment variables:
import os
mcp_config = {
"command": "npx",
"args": ["-y", "git+https://github.com/newline53/newline-mcp-server"],
"env": {
"NEWLINE_HMAC_KEY": os.getenv("NEWLINE_HMAC_KEY"),
"NEWLINE_PROGRAM_ID": os.getenv("NEWLINE_PROGRAM_ID"),
"NEWLINE_BASE_URL": os.getenv("NEWLINE_BASE_URL", "https://sandbox.newline53.com/api/v1")
}
}Clone the repository and install dependencies:
git clone https://github.com/newline53/newline-mcp-server.git
cd newline-mcp-server
npm installBuild the project:
npm run buildRun tests:
npm testAfter building, you can run the server locally:
node dist/index.jsOr use the development configuration in your MCP client:
{
"servers": {
"newline-local": {
"command": "node",
"args": ["/path/to/newline-mcp-server/dist/index.js"],
"env": {
"NEWLINE_HMAC_KEY": "<<YOUR_HMAC_KEY>>",
"NEWLINE_PROGRAM_ID": "<<YOUR_PROGRAM_ID>>",
"NEWLINE_BASE_URL": "https://sandbox.newline53.com/api/v1"
}
}
}
}- π Secure Authentication: JWT-based authentication with HMAC signing
- π¦ Banking Operations: Comprehensive tools for account and transfer management
- π₯ Customer Management: List and retrieve customer information
- π° Transaction Tracking: Access transaction data and events
- π Resource Management: Manage pools, products, and custodial accounts
- π Transfer Types: Support for Wire, ACH, and Instant Payment transfers
- π Proxy Support: Configurable HTTPS proxy for corporate environments
- π Type Safety: Full TypeScript support with type definitions
- β Validation: Input validation using Zod schemas
- π‘οΈ Error Handling: Comprehensive error handling and logging
For issues, questions, or feature requests:
- Email: VulnerabilityManagement.Bancorp@53.com
- GitHub Issues: https://github.com/newline53/newline-mcp-server/issues
- Documentation: https://github.com/newline53/newline-mcp-server#readme
Apache 2.0