intacct-docs

intacct-docs

Enables AI assistants to search, browse, and generate example payloads from Sage Intacct REST API documentation using OpenAPI specs.

Category
Visit Server

README

Sage Intacct Documentation MCP Server

An MCP server that gives AI assistants queryable access to Sage Intacct REST API documentation. Load one or more OpenAPI specs and let your LLM search endpoints, browse schemas, generate example payloads, and check documentation quality — all without leaving the conversation.

Quick Start

1. Install

npm install -g @rowellewis/intacct-docs-mcp

Or run without installing:

npx @rowellewis/intacct-docs-mcp

2. Add to Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "intacct-docs": {
      "command": "npx",
      "args": ["-y", "@rowellewis/intacct-docs-mcp"],
      "env": {
        "SPEC_DIR": "/path/to/your/specs"
      }
    }
  }
}

Omit SPEC_DIR to use the bundled Sage Intacct spec.

3. Try it

"Search for endpoints related to accounts payable vendors." "Show me the request body schema for POST /objects/accounts-payable/vendor." "Generate an example payload for creating a journal entry."

Tools

Tool What it does
search-endpoints Fuzzy full-text search across paths, summaries, and descriptions. Supports multi-word queries and typo tolerance.
get-endpoint-docs Full documentation for a specific endpoint — parameters, request/response schemas, examples.
get-schema Schema definition with all properties, types, and constraints.
list-schemas Browse available schema names, filterable by prefix.
list-tags All API tags/categories with endpoint counts.
get-endpoints-by-tag All endpoints under a specific tag. Use list-tags first to find tag names.
generate-example Generates a realistic JSON request body for any endpoint, inferred from its schema.
spec-quality-report Scores documentation quality (0–100) and lists issues by severity.
health Readiness status, index counts, and startup timing.

Full parameter reference, error codes, and examples: docs/public-contract.md.

Configuration

Variable Default Description
SPEC_DIR ../data/sage-intacct-rest-api Directory scanned for *.openapi.yaml files
TRANSPORT stdio stdio or http
HTTP_PORT 3000 Port when using HTTP transport
HTTP_HOST 127.0.0.1 Bind address for HTTP transport (0.0.0.0 for all interfaces)
MAX_RESPONSE_CHARS 12000 Response size cap — output is truncated with a notice when exceeded
LOG_LEVEL info error, warn, info, or debug
MAX_BODY_BYTES 1048576 Maximum HTTP request body size in bytes
RATE_LIMIT_RPM 60 Max requests per minute per IP (HTTP transport)

Development

npm install
npm run build   # compile TypeScript
npm run dev     # watch mode with tsx
npm test        # run all tests

Node.js >=18 required.

Project layout:

src/
├── app.ts                  # tool registry and handlers
├── config.ts               # env vars → AppConfig
├── index.ts                # entry point, transport selection
├── core/
│   ├── indexer.ts          # in-memory indexes + fuzzy search
│   ├── formatter.ts        # markdown response formatting
│   ├── fuzzy.ts            # trigram similarity matching
│   ├── example-generator.ts
│   ├── validate.ts
│   ├── cache.ts
│   └── spec-quality.ts
└── transport/
    ├── http-server.ts      # MCP Streamable HTTP transport + GET /health
    └── stdio.ts            # MCP stdio wrapper

Tests use Vitest.

Deployment

HTTP transport (MCP Streamable HTTP — for URL-based MCP clients):

TRANSPORT=http HTTP_PORT=3000 npm start

Operations

  • Health: call the health tool — returns readiness, index counts, and startup duration. Or hit GET /health when running in HTTP mode.
  • Logs: structured JSON on stderr. Adjust verbosity with LOG_LEVEL.
  • Runbook: docs/ops-runbook.md

Troubleshooting

Server won't start — verify SPEC_DIR contains at least one *.openapi.yaml file, then run npm run build and check stderr.

Endpoint not found — use search-endpoints to discover paths. Methods must be uppercase (GET, POST, …).

Schema not found — use list-schemas with an optional prefix to browse what's available. Names are case-sensitive.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured