mcpField
M
MTA:SA Documentation MCP Server

MTA:SA Documentation MCP Server

Local
github.comDeveloper Tools8Updated 28w ago

About MTA:SA Documentation MCP Server

MTA:SA Documentation MCP Server gives AI assistants structured access to Multi Theft Auto: San Andreas documentation. It combines keyword and semantic search with a local SQLite cache, including event-focused discovery and deprecation warnings.

Key features

  1. 01Keyword and semantic search
  2. 02Event-focused discovery
  3. 03Task-based API matching
  4. 04SQLite-backed documentation cache
  5. 05Deprecation warnings

Use cases

  1. 01Find MTA:SA functions for a task
  2. 02Locate events related to a workflow
  3. 03Retrieve API documentation and examples
  4. 04Check cached documentation status

MCP support

Exposes 11 MCP tools for searching and retrieving documentation, managing the cache, and recommending documentation workflows.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"luminaire1337-mtasa-docs": {
"command": "npx",
"args": [
"-y",
"mtasa-docs-mcp"
]
}
}
}
Run commandnpx -y mtasa-docs-mcp

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmmtasa-docs-mcp1.0.3

Tools

11

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
sideenumNoFilter by client-side, server-side, or shared functionsclient | server | shared
limitintegerNoMaximum number of results
querystringYesFunction name or partial name to search for

Details

From the project README

MTA:SA Documentation MCP Server

An MCP (Model Context Protocol) server that gives AI assistants reliable, structured access to Multi Theft Auto: San Andreas documentation.

It combines fast keyword search, semantic matching, and SQLite-backed caching so agents can discover the right APIs and fetch authoritative docs without manual wiki scraping.

Highlights

  • 11 MCP tools for discovery, docs retrieval, cache operations, and workflow guidance
  • Event-first discovery (search_events, find_events_for_task)
  • Semantic task matching with SQLite vector search
  • Smart keyword expansion (for example, database -> db* APIs)
  • Built-in deprecation detection and warnings
  • Local SQLite cache with configurable lifetime
  • CI verification gates, smoke tests, and release automation

Installation

Requirements:

  • Node.js 24+
  • Bun 1.3+ (optional runtime)
  • pnpm 10+ (for local development)

Launcher note:

  • You can launch/install via npx, pnpx, bunx, or yarn dlx-style flows.
  • Runtime support is cross-runtime: Node.js (via node:sqlite) and Bun (via bun:sqlite).
From npm (recommended)
npm install -g mtasa-docs-mcp

or:

pnpm add -g mtasa-docs-mcp
Quick install

Add mtasa-docs MCP server to Cursor

From source
git clone https://github.com/Luminaire1337/mtasa-docs-mcp.git
cd mtasa-docs-mcp
pnpm install
pnpm build

If your environment skips optional native dependencies, run:

pnpm install --force

MCP Client Setup

Cursor (manual)

Global: ~/.cursor/mcp.json

Project: .cursor/mcp.json

{
  "mcpServers": {
    "mtasa-docs": {
      "command": "npx",
      "args": ["-y", "mtasa-docs-mcp"]
    }
  }
}
VS Code (manual)

Workspace: .vscode/mcp.json

User: Command Palette -> MCP: Open User Configuration

{
  "servers": {
    "mtasa-docs": {
      "command": "npx",
      "args": ["-y", "mtasa-docs-mcp"]
    }
  }
}

Or add it from terminal:

code --add-mcp "{\"name\":\"mtasa-docs\",\"command\":\"npx\",\"args\":[\"-y\",\"mtasa-docs-mcp\"]}"
Claude Code (CLI)
claude mcp add-json mtasa-docs '{"type":"stdio","command":"npx","args":["-y","mtasa-docs-mcp"]}'
OpenCode (manual)

Global config file: ~/.config/opencode/opencode.json

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "mtasa-docs": {
      "type": "local",
      "command": ["npx", "-y", "mtasa-docs-mcp"],
      "enabled": true
    }
  }
}
Antigravity (manual)

Config file: ~/.gemini/antigravity/mcp_config.json

{
  "mcpServers": {
    "mtasa-docs": {
      "command": "npx",
      "args": ["-y", "mtasa-docs-mcp"]
    }
  }
}
Generic MCP clients (manual)
{
  "mcpServers": {
    "mtasa-docs": {
      "command": "node",
      "args": ["/absolute/path/to/mtasa-docs-mcp/build/index.js"]
    }
  }
}

If mtasa-docs-mcp is already published, replace the command with:

{
  "mcpServers": {
    "mtasa-docs": {
      "command": "npx",
      "args": ["-y", "mtasa-docs-mcp"]
    }
  }
}

Available Tools

  • search_functions
  • search_events
  • find_functions_for_task
  • find_events_for_task
  • get_function_docs
  • get_multiple_function_docs
  • get_function_examples
  • list_functions_by_category
  • get_cache_stats
  • recommend_doc_workflow
  • clear_cache

Development

pnpm build
pnpm test
pnpm test:runtime
pnpm smoke
pnpm smoke:cross-runtime
pnpm verify
pnpm verify:full

Useful checks:

  • pnpm check:versions - keep package.json and MCP server version aligned
  • pnpm check:changelog - ensure CHANGELOG.md has current release heading
  • pnpm check:tool-names - prevent legacy tool naming regressions
  • pnpm test:runtime - run integration runtime tests for Node and Bun smoke paths
  • pnpm smoke:cross-runtime - run smoke checks against both Node and Bun runtimes

Scripts are located in scripts/ (build, smoke, release guards).

Release Flow

Release automation is handled by .github/workflows/release.yml.

  1. Bump version in package.json and src/index.ts.
  2. Move release notes from Unreleased into a versioned section in CHANGELOG.md using ## [x.y.z] - YYYY-MM-DD.
  3. Create and push a release tag: git tag v<version> && git push origin v<version>.

Branching policy:

  • Before v1.0.0: direct pushes to master are allowed.
  • Starting at v1.0.0: use PR-based development for all changes to master.

On release tag pushes (v*.*.*), the release workflow:

  • checks whether the version already exists on npm
  • runs pnpm verify:full
  • publishes to npm with provenance using trusted publishing (OIDC)
  • publishes server.json to the MCP Registry using GitHub OIDC
  • creates/updates the GitHub Release from CHANGELOG.md
  • verifies installability of the published package and runs smoke tests
Maintainer setup for npm trusted publishing

In npm package settings, configure a trusted publisher for this repository and workflow:

  • Repository: Luminaire1337/mtasa-docs-mcp
  • Workflow file: .github/workflows/release.yml
  • Environment (if used): match your GitHub Actions configuration
Maintainer setup for MCP Registry publishing
  • Ensure server.json exists at repository root and uses this package name: mtasa-docs-mcp
  • Configure MCP Registry ownership for io.github.Luminaire1337/mtasa-docs-mcp
  • Release workflow uses mcp-publisher login github-oidc and publishes only when the npm publish gate passes

CI Workflows

  • .github/workflows/ci.yml - verification on push/PR to master (Ubuntu + macOS) and optional live wiki integration tests on labeled PRs
  • .github/workflows/release.yml - automated publish and GitHub release on release tags (v*.*.*)

Project Docs

  • AGENTS.md - architecture and contributor guidance
  • FEATURES.md - roadmap and ideas
  • CHANGELOG.md - release history
  • SECURITY.md - vulnerability disclosure policy

License

GNU General Public License v3.0. See LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.