Norman财务管理
STDIO用于访问诺曼金融API的智能服务器
用于访问诺曼金融API的智能服务器
This Model Context Protocol (MCP) server enables AI to interact with the Norman Finance API, allowing access to accounting, invoices, companies, clients, taxes, and more through a standardized protocol.
[!NOTE]
The Norman Finance MCP Server is currently in Beta. We welcome your feedback and encourage you to report any bugs by opening an issue here.
|
![]() |
Filing VAT tax report |
Getting transaction insights |
Syncing Stripe payments with Norman |
Creating transactions using Gmail receipts |
Managing overdue invoices - 1 |
Managing overdue invoices - 2 |
Before using this MCP server, you need to:
Norman now offers a hosted remote MCP server at:
The remote MCP is recommended because it utilizes OAuth authentication, enabling you to log in directly with your Norman account without the need to create or manage access tokens manually.
To add the Norman MCP server to Cursor, copy and paste the following deeplink into your browser:
cursor://anysphere.cursor-deeplink/mcp/install?name=norman-finance-mcp&config=eyJjb21tYW5kIjoibnB4IiwidHlwZSI6InNzZSIsImFyZ3MiOlsibWNwLXJlbW90ZSIsImh0dHBzOi8vbWNwLm5vcm1hbi5maW5hbmNlL3NzZSJdfQ==
Adding the Norman MCP Server to Claude.ai:
For Claude Max:
https://mcp.norman.finance/sse
For Claude Enterprise & Teams:
https://mcp.norman.finance/sse
Enabling the Norman Integration:
To run the Norman Finance MCP server with Claude Desktop, you can use the instruction above or add it manually using the following steps:
Download Claude Desktop.
Launch Claude and navigate to: Settings > Developer > Edit Config.
Update your claude_desktop_config.json
file with the following configuration:
{ "mcpServers": { "norman-mcp-server": { "command": "npx", "args": ["mcp-remote", "https://mcp.norman.finance/sse"] } } }
Follow the instructions here: Installing uv
{ "mcpServers": { "norman-mcp-server": { "command": "<home_path>/.local/bin/uvx", "args": [ "--from", "norman-mcp-server@latest", "norman-mcp" ], "env": { "NORMAN_EMAIL": "[email protected]", "NORMAN_PASSWORD": "your-password", "NORMAN_ENVIRONMENT": "production" } } } }
The Norman MCP server supports two authentication methods:
When using the server with MCP Inspector, Claude, or other SSE clients, the server uses OAuth 2.0 authentication:
Start the server with SSE transport:
python -m norman_mcp --transport sse
When connecting to the server, you'll be directed to a login page
Enter your Norman Finance credentials
You'll be redirected back to your application with authentication tokens
When using the server with Claude Desktop or stdin/stdout communication, provide credentials through environment variables:
# .env NORMAN_EMAIL=[email protected] NORMAN_PASSWORD=your-password NORMAN_ENVIRONMENT=production # or "sandbox" for the development environment NORMAN_API_TIMEOUT=200 # Request timeout in seconds
The server can be configured using these environment variables:
# Authentication (for stdio transport) NORMAN_EMAIL=[email protected] NORMAN_PASSWORD=your-password NORMAN_ENVIRONMENT=production # or "sandbox" for the development environment # Server configuration NORMAN_MCP_HOST=0.0.0.0 # Host to bind to NORMAN_MCP_PORT=3001 # Port to bind to NORMAN_MCP_PUBLIC_URL=http://example.com # Public URL for OAuth callbacks (important for remote access) NORMAN_API_TIMEOUT=200 # Request timeout in seconds
This section is for contributors who want to develop or extend the Norman Finance MCP server.
git clone https://github.com/norman-finance/norman-mcp-server.git cd norman-mcp-server pip install -e .
Then update your claude_desktop_config.json file to point to the Python module directly:
{ "mcpServers": { "norman-mcp-server": { "command": "<path_to_your_python>/python", "args": ["-m", "norman_mcp"], "env": { "NORMAN_EMAIL": "[email protected]", "NORMAN_PASSWORD": "your-password", "NORMAN_ENVIRONMENT": "production" } } } }
Do you have a feature idea or something you'd like to see? Share your suggestion
Make business effortless