@bolagsapi/mcp-server
v0.1.3
Published
MCP server for BolagsAPI - Swedish company data for AI agents
Maintainers
Readme
@bolagsapi/mcp-server
Official MCP (Model Context Protocol) server for BolagsAPI - Swedish company data for AI agents.
Enables Claude, ChatGPT, and other AI agents to access comprehensive Swedish company information including:
- Company lookup and search
- Financial analysis from annual reports
- Credit scoring and risk assessment
- Compliance screening (sanctions, PEP)
- Industry statistics and benchmarks
Remote Setup (Recommended)
Use the hosted Streamable HTTP endpoint:
https://mcp.bolagsapi.se/mcpClients that support OAuth will open a BolagsAPI login/consent page. This avoids copying API keys into local config.
Codex
Add to ~/.codex/config.toml:
[mcp_servers.bolagsapi]
url = "https://mcp.bolagsapi.se/mcp"Claude Code
claude mcp add --transport http bolagsapi https://mcp.bolagsapi.se/mcpCursor
Add to .cursor/mcp.json in your project:
{
"mcpServers": {
"bolagsapi": {
"url": "https://mcp.bolagsapi.se/mcp"
}
}
}Local Installation
npx @bolagsapi/mcp-serverLocal stdio mode requires:
- Node.js 18+
- BolagsAPI key (get one at bolagsapi.se/dashboard)
Quick Start
Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"bolagsapi": {
"command": "npx",
"args": ["-y", "@bolagsapi/mcp-server"],
"env": {
"BOLAGSAPI_KEY": "sk_live_your_api_key_here"
}
}
}
}Cursor IDE
Add to .cursor/mcp.json in your project:
{
"mcpServers": {
"bolagsapi": {
"command": "npx",
"args": ["-y", "@bolagsapi/mcp-server"],
"env": {
"BOLAGSAPI_KEY": "sk_live_your_api_key_here"
}
}
}
}VS Code with Continue
Add to your Continue configuration:
{
"experimental": {
"modelContextProtocolServers": [
{
"transport": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@bolagsapi/mcp-server"],
"env": {
"BOLAGSAPI_KEY": "sk_live_your_api_key_here"
}
}
}
]
}
}Available Tools
Company Intelligence
| Tool | Description |
|------|-------------|
| validate_orgnr | Validate Swedish organization numbers |
| lookup_company | Get comprehensive company info by organization number |
| search_companies | Search companies by name with filters |
| get_company_contact | Enriched contact data such as website, phone, email, and social links |
| get_company_people | Signatories, board/person roles, and ownership data |
| get_company_timeline | Historical events and milestones |
| get_similar_companies | Find peer companies by industry |
Financial & Credit
| Tool | Description |
|------|-------------|
| analyze_company_financials | Financial data + AI analysis from annual reports |
| get_financial_summary | Financial trends and growth metrics |
| assess_company_credit | Credit score, health score, risk indicators |
| estimate_company_valuation | Valuation estimate with optional AI valuation |
| get_annual_reports | List available annual reports |
Compliance & Reference
| Tool | Description |
|------|-------------|
| get_compliance_data | Sanctions and PEP screening |
| get_company_legal_events | POIT announcements, bankruptcy status, and creditor calls |
| get_industry_stats | Industry benchmarks by SNI code |
| get_municipal_tax_rate | Municipal tax rates by kommun code |
| search_municipal_tax_rates | Find municipal tax rates by municipality name |
| get_riksbank_rates | Riksbank rates and exchange-rate series |
Environment Variables
| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| BOLAGSAPI_KEY | Yes | - | Your BolagsAPI key |
| BOLAGSAPI_URL | No | https://api.bolagsapi.se/v1 | API base URL |
HTTP Transport (Remote)
For remote deployments, use the HTTP transport:
# Start HTTP server
npm run start:http
# Or with Docker
docker build -t bolagsapi-mcp .
docker run -p 3001:3001 -e BOLAGSAPI_KEY=sk_live_xxx bolagsapi-mcpEnvironment variables for HTTP mode:
PORT: HTTP port (default: 3001)HOST: Bind address (default: 127.0.0.1)
HTTP Authentication
The HTTP transport supports OAuth-issued mcp_live_* bearer tokens and direct sk_live_* / sk_test_* API keys:
curl -X POST http://localhost:3001/mcp \
-H "Authorization: Bearer sk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}'Example Usage
Once configured, you can ask Claude:
"Look up information about Spotify (org nr 556703-7485)"
"Search for AI companies in Stockholm"
"Analyze the financials for IKEA"
"Who can sign for Spotify AB?"
"Check legal announcements and bankruptcy status for org 556677-8899"
"Estimate the valuation for Klarna"
"What is the municipal tax rate for Stockholm?"
"Check if company 5566778899 has any sanctions hits"
"What's the credit rating for org 556677-8899?"
Development
# Clone the repo
git clone https://github.com/HugoAndFriends/BolagsAPI-mcp-server.git
cd BolagsAPI-mcp-server
# Install dependencies
pnpm install
# Run in development mode
BOLAGSAPI_KEY=sk_live_xxx pnpm dev
# Build
pnpm buildSecurity
- API keys are validated against the BolagsAPI backend
- Rate limiting: 100 requests/minute per IP (HTTP mode)
- DNS rebinding protection for localhost bindings
- CORS enabled for browser clients
Support
- Documentation: bolagsapi.se/docs
- Issues: github.com/HugoAndFriends/BolagsAPI-mcp-server/issues
- Email: [email protected]
License
MIT
