Getting Started with Kintsugi MCP
What is MCP? Model Context Protocol (MCP) enables AI coding assistants like Claude in Cursor IDE to understand and use external APIs. Kintsugi's MCP server gives AI assistants direct access to our API documentation, making it easier for developers to build integrations with accurate, up-to-date code examples.
Kintsugi's Model Context Protocol (MCP) integration transforms how developers build with our tax compliance API. Instead of manually reading documentation and writing API calls, AI assistants can understand Kintsugi's endpoints, generate accurate code, debug issues, and provide context-aware help, all while you code.
Why Use Kintsugi MCP?
Building integrations with Kintsugi's API typically requires:
- Reading extensive API documentation
- Understanding request/response formats
- Handling authentication correctly
- Debugging API errors
- Writing boilerplate code
With MCP-enabled AI assistants, you get:
- Accurate Code Generation - AI understands Kintsugi's actual API endpoints and generates working code
- Real-Time Documentation - AI assistants access up-to-date API specs, not outdated docs
- Context-Aware Help - Get suggestions based on your actual code and integration needs
- Faster Development - Reduce time spent on API integration from hours to minutes
How It Works
Here's how Kintsugi MCP helps you build better integrations:
Quick Setup
Kintsugi MCP works with MCP-compatible AI coding assistants:
Cursor's AI assistant can use MCP servers, making it perfect for developers building Kintsugi integrations. The AI understands your codebase and Kintsugi's API simultaneously.
Claude Desktop supports MCP servers and can help with API integration code, even outside an IDE.
VS Code extensions that support MCP can connect to Kintsugi's MCP server for API-aware code assistance.
Add Kintsugi's MCP server to your AI assistant configuration:
{
"mcpServers": {
"kintsugi": {
"url": "https://docs.trykintsugi.com/mcp",
"headers": {
"X-API-KEY": "your-api-key",
"X-ORGANIZATION-ID": "your-org-id"
}
}
}
}You'll need both an API key and Organization ID for authentication:
- Sign in to app.trykintsugi.com
- From the sidebar (bottom-left), open Configuration → API Keys
- Create a new API key
- Store it securely (never commit to version control)
- Find your Organization ID in the lower left-hand corner of the dashboard after logging in
Paste both into the headers block of the config above. The server reads your key from the connection headers, so a config with only a url lists the tools but cannot call them.
Once configured, your AI assistant understands Kintsugi's API. Try asking:
- "Show me how to estimate tax for a transaction"
- "Generate code to create a customer in Kintsugi"
- "How do I handle address validation?"
- "What's the request format for creating a registration?"
What the tools can do
Each tool maps to one Customer API operation and is named after its reference page, so create-transaction the tool and /reference/create-transaction the page are always the same operation.
The tools do not only describe the API, they call it, with the key from your connection headers. That means 17 of the 41 change your data: creating a transaction or a credit note, updating a customer, deregistering a registration, deleting a physical nexus.
The other 24 only read. That includes three that are POST requests but commit nothing, because they take a request body rather than because they save anything: estimate-tax, search and suggestions.
Every tool that writes is marked read-only-false in its MCP annotations, and destructive deletes are marked as such, so a well-behaved client asks you before running one. Not every client surfaces those prompts, so treat the key you configure here as one an AI assistant can act with on your behalf.
Kintsugi API keys are not scoped: a key grants the access its organization has, and there is no read-only variant to hand out instead. So if you want to try the tools against data you do not mind changing, use a key from a test organization rather than your production one, and revoke it when you are done.
Read-only operations (anything beginning get-) only fetch. Kintsugi validates every call against the published schema before it reaches the API, and any error the API returns is passed back to you unchanged.
Available API Endpoints
Kintsugi MCP on the public docs site exposes endpoints from the public API Reference only (the Customer API). Partner APIs are not included.
POST /v1/tax/estimate - Calculate tax for transactions before committing
POST /v1/transactions, GET /v1/transactions - Create and manage sales transactions
POST /v1/customers, GET /v1/customers/{customer_id} - Manage customer records
GET /v1/nexus, POST /v1/registrations - Determine nexus and manage registrations
POST /v1/products, GET /v1/products/categories - Manage product taxability
GET /v1/filings - Track and manage tax filings
POST /v1/address_validation/search - Validate addresses for accurate tax calculation
POST /v1/exemptions, GET /v1/exemptions - Manage tax exemption certificates
Real-World Example
Here's a complete example of building a checkout integration with MCP:
Developer: "I need to add tax calculation to my e-commerce checkout. How do I integrate with Kintsugi?"
AI Assistant (with Kintsugi MCP):
- Understands the requirement - Needs tax calculation in checkout flow
- Identifies the endpoint -
POST /v1/tax/estimatefrom Kintsugi's API - Generates code:
import requests def calculate_tax(cart_total, shipping_address, api_key, organization_id): response = requests.post( 'https://api.trykintsugi.com/v1/tax/estimate', headers={ 'x-api-key': api_key, 'x-organization-id': organization_id, 'Content-Type': 'application/json' }, json={ 'amount': cart_total, 'shipping_address': { 'street_1': shipping_address['street'], 'city': shipping_address['city'], 'state': shipping_address['state'], 'zip': shipping_address['zip'] } } ) response.raise_for_status() return response.json() - Explains next steps - How to handle the response, error cases, and commit the transaction
Result: Developer has working code in minutes instead of hours of API documentation reading.
Benefits for Developers
Reduce integration time from days to hours with AI-generated code
AI understands API schemas and generates correct request formats
MCP provides current API specs, not outdated documentation
AI can test endpoints and identify issues faster than manual debugging
Next Steps
See how developers use Kintsugi MCP in real projects
Step-by-step setup for your development environment
Python, TypeScript, Java, PHP, and Ruby clients
Complete API documentation
Authentication Required - While the MCP server helps AI assistants understand Kintsugi's API, you'll still need valid API credentials to make actual API calls.
Kintsugi uses API key authentication via headers (not bearer token). Every request requires:
x-api-keyheader with your API keyx-organization-idheader with your organization ID
Generate API keys in your Kintsugi dashboard. Your Organization ID can be found in the lower left-hand corner after logging in.