Ross ERP Data Dictionary
Structure-only reference for the vanilla Ross ERP 8.0 schema, UI menu tree, and program catalog.
Should I use this
Quality & Safety
Findings (1)
- LOWin lookup_table
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"data-dictionary": {
"url": "https://mcp.rossdata.dev/mcp"
}
}
}Remote endpoints
https://mcp.rossdata.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (21)
βͺschema_stats
Overview of the Ross ERP 8.0 schema in one call: object counts by type, module list, total/distinct columns, audit-twin pairs, and the top tables/columns/modules. Use this first to orient before drilling in.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}π’list_objects(type, db, module, q, limit, ...)
Browse and filter Ross ERP 8.0 objects (tables / views / procedures / functions). Filter by type, database, module, or a name substring; paginate with limit/offset. Returns object summaries β use lookup_table for full detail.
Input Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Object type filter: table | view | procedure | function"
},
"db": {
"type": "string",
"description": "Database filter, e.g. FIN or MAN"
},
"module": {
"type": "string",
"description": "Module filter, e.g. GL or PO"
},
"q": {
"type": "string",
"description": "Name substring filter, e.g. GL_"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 1000,
"description": "Max objects (default 100)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (default 0)"
}
},
"additionalProperties": false
}π’find_column(name)
Look up a single column by exact name across the whole Ross ERP 8.0 schema: its description, valid values, notes, every table that carries it, and any foreign-key roles it plays.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Column name, e.g. POSTING_DATE or GL_ACCOUNT"
}
},
"required": [
"name"
],
"additionalProperties": false
}π’lookup_table(name)
Full schema for a Ross ERP 8.0 object (table / view / procedure / function): columns with type, nullability, keys, descriptions and valid values, foreign keys in and out, related tables, and usage.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Object name, e.g. GL_ACCOUNTS or ACCOUNT_TYPES"
}
},
"required": [
"name"
],
"additionalProperties": false
}π’search_columns(query, limit)
Search the Ross ERP 8.0 schema by name (and column descriptions). Returns matching objects and columns.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search text, e.g. posting_date or GL_ACCOUNTS"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Max results per group (default 25)"
}
},
"required": [
"query"
],
"additionalProperties": false
}π’search_all(query, type, limit)
Cross-domain search in one call β spans schema objects, columns, UI facilities and programs at once. Use this when you don't yet know which layer a term lives in (e.g. 'check register' is a screen, a program and a table). Scope to one layer with type = object | column | facility | program (default all); limit is per domain.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search text, e.g. check register or posting_date"
},
"type": {
"type": "string",
"enum": [
"all",
"object",
"column",
"facility",
"program"
],
"description": "Restrict to one domain (default all). 'table' is accepted as an alias for object."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Max results per domain (default 25)"
}
},
"required": [
"query"
],
"additionalProperties": false
}π‘get_ddl(name)
Return the CREATE TABLE (DDL) for a Ross ERP 8.0 table, with column descriptions as comments plus primary-key and foreign-key constraints.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Table name, e.g. GL_ACCOUNTS"
}
},
"required": [
"name"
],
"additionalProperties": false
}π’graph_neighbors(name, limit)
List the knowledge-graph neighbours of an object β the programs, tables, views and procedures directly connected to it, with relationship type and direction.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Object name, e.g. GL_ACCOUNTS"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500,
"description": "Max neighbours (default 100)"
}
},
"required": [
"name"
],
"additionalProperties": false
}π’path_between(from, to)
Find the shortest path between two objects in the Ross ERP 8.0 knowledge graph (how A reaches B through calls / references / accesses).
Input Schema
{
"type": "object",
"properties": {
"from": {
"type": "string",
"description": "Start object name"
},
"to": {
"type": "string",
"description": "Destination object name"
}
},
"required": [
"from",
"to"
],
"additionalProperties": false
}βͺfacility_stats
Overview of the Ross ERP 8.0 application layer β the client menu tree of UI facilities (screens, reports, inquiries, maintenance functions): total facilities, and their breakdown by system (e.g. ACCOUNTS_PAYABLE), database (FIN/MAN) and class (REPORT, MAINTENANCE, INQUIRY, ...). Use this first to orient before browsing facilities.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}π’list_facilities(system, database, class, q, withTables, ...)
Browse and filter Ross ERP 8.0 UI facilities (menu screens/functions). Filter by system, database, class, a name/code substring, or withTables (only facilities whose table cluster is known); paginate with limit/offset. Returns summaries β use lookup_facility for full detail.
Input Schema
{
"type": "object",
"properties": {
"system": {
"type": "string",
"description": "System filter, e.g. ACCOUNTS_PAYABLE or GENERAL_LEDGER"
},
"database": {
"type": "string",
"description": "Database filter: FIN or MAN"
},
"class": {
"type": "string",
"description": "Class filter: REPORT | MAINTENANCE | INQUIRY | UPDATE | TRANSACTION | ARCHIVE | CODES"
},
"q": {
"type": "string",
"description": "Name or code substring, e.g. CHECK or AP_"
},
"withTables": {
"type": "boolean",
"description": "Only facilities with a known table cluster (default false)"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 1000,
"description": "Max facilities (default 100)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (default 0)"
}
},
"additionalProperties": false
}π’search_facilities(query, limit)
Search Ross ERP 8.0 UI facilities by code, name, help text, program or tag. Use this to find the screen/report for a task, e.g. 'check register' or 'purchase order receipts'.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search text, e.g. check register or AP_A"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Max results (default 25)"
}
},
"required": [
"query"
],
"additionalProperties": false
}π‘lookup_facility(code)
Full detail for one Ross ERP 8.0 UI facility by code: its name, system, database, class, GEMBASE program, help text, menu paths, the physical table cluster it touches β core (the working set the screen is built on) and reference (control/lookup tables) β and its call graph: the facilities this one invokes (calls) and the facilities that invoke it (calledBy), parsed from the program source.
Input Schema
{
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "Facility code, e.g. AP_A_002"
}
},
"required": [
"code"
],
"additionalProperties": false
}π‘table_facilities(table)
Reverse lookup: which UI facilities (screens/reports/programs) touch a given Ross ERP 8.0 table β split into core (facilities whose working set includes it) and reference (facilities that use it as a control/lookup), each with how many times the program source accesses it. Answers 'what screens read or write this table?'.
Input Schema
{
"type": "object",
"properties": {
"table": {
"type": "string",
"description": "Table name, e.g. GL_ACCOUNTS"
}
},
"required": [
"table"
],
"additionalProperties": false
}βͺfacility_programs(code)
Cross-link a UI facility to the program(s) that implement it β 'what code runs this screen?'. Each program carries a match label: declared (named by the facility's menu entry, authoritative) or titleId (TITLE id equals the facility code). Complements lookup_facility (which gives the facility's tables and call graph). Metadata only β no source body.
Input Schema
{
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "Facility code, e.g. AP_A_002"
}
},
"required": [
"code"
],
"additionalProperties": false
}π‘program_stats
Overview of the Ross ERP 8.0 program catalog β every application-source program (metadata only, no source body): total programs, how many declare a TITLE id, how many carry Data Dictionary table links, total programβtable edges, read/write counts (withWrites programs, writeEdges programβtable write edges), base vs vendor-core split, programβprogram call-graph counts (programs with outbound calls, total call edges) and how many back a menu facility, plus the module and type breakdowns. Use this first to orient before browsing programs.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}π’list_programs(module, type, layer, titled, q, ...)
Browse and filter Ross ERP 8.0 programs (application source, metadata only). Filter by module (ap, gl, ic, sop, ...), type (a=archive, i=inquiry, m=maintenance, r=report, s=server, l=load, u=utility, ...), layer (base | vendor-core), titled (only programs that declare a TITLE id), or a substring of basename/title; paginate with limit/offset. Returns summaries β use lookup_program for full detail.
Input Schema
{
"type": "object",
"properties": {
"module": {
"type": "string",
"description": "Module filter, e.g. ap, gl, ic, sop"
},
"type": {
"type": "string",
"description": "Program-type letter, e.g. r (report), m (maintenance), i (inquiry), s (server)"
},
"layer": {
"type": "string",
"description": "Source layer: base | vendor-core"
},
"titled": {
"type": "boolean",
"description": "Only programs that declare a TITLE program-id (default false)"
},
"q": {
"type": "string",
"description": "Substring of basename or title, e.g. check_register"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 1000,
"description": "Max programs (default 100)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Pagination offset (default 0)"
}
},
"additionalProperties": false
}π’search_programs(query, limit)
Search Ross ERP 8.0 programs by basename, TITLE program-id, title, module or type. Use this to find the program behind a task, e.g. 'check register' or 'ap_a'.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search text, e.g. check register or AP_A_002"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Max results (default 25)"
}
},
"required": [
"query"
],
"additionalProperties": false
}π‘lookup_program(id)
Full detail for one Ross ERP 8.0 program, by TITLE program-id (e.g. AP_A_002) or source basename (e.g. ap_a_check_register): its module, type, layer, declared title, internal PROCEDURE_FORM procedures, the Data Dictionary tables it references β each classified read vs read-write (a write is a FIND IN.../LOCK=WRITE update, an ADD, or a DELETE) with a writeCount β its call graph (the programs it invokes and the programs that invoke it, from PERFORM "GEM<mod>:<prog>"), the menu facilities it backs, and β for programs with no TITLE label β a display name carried from the menu facility's registry description. Metadata only β no source body.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Program id or basename, e.g. AP_A_002 or ap_a_check_register"
}
},
"required": [
"id"
],
"additionalProperties": false
}βͺtable_programs(table)
Reverse lookup: which standard Ross ERP 8.0 programs reference a given table (validated against the Data Dictionary). Answers 'what code touches this table?' β complements table_facilities (which answers 'what screens touch it?'). Metadata only β no source body.
Input Schema
{
"type": "object",
"properties": {
"table": {
"type": "string",
"description": "Table name, e.g. GL_ACCOUNTS"
}
},
"required": [
"table"
],
"additionalProperties": false
}βͺprogram_facilities(id)
Reverse of facility_programs: which UI facilities (menu screens / reports / inquiries) a program backs β 'what screens does this program run?'. One program often serves several facilities. Lookup by TITLE id (e.g. AP_I_001) or basename (e.g. ap_i_vendors); each facility carries the same declared / titleId match label.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Program id or basename, e.g. AP_I_001 or ap_i_vendors"
}
},
"required": [
"id"
],
"additionalProperties": false
}Community
Evidence