pe_ruc
Pack: peru-sunat-ruc · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/pe_ruc for the schema, then POST the same URL with its arguments for the data.
Look up a Peruvian company by RUC (individuals excluded) in the SUNAT register.
Tool description as the model sees it
Look up one Peruvian taxpayer by its 11-digit RUC in SUNAT’s published taxpayer register: registered name (razon social), taxpayer status (active, deregistered, suspended …), domicile condition (habido / no habido …) and, for companies, the registered address with its ubigeo and department. Companies and organisations only (RUC prefix 20, plus government offices 00): natural persons (RUCs beginning 10, 15, 17) are excluded and answer found:false with reason natural_person_not_served, no name, status or address. Use for “is RUC 20100070970 real and active”, KYC and counterparty checks, or resolving a RUC found on an invoice.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
ruc | string | yes | The 11-digit RUC, digits only, e.g. “20100070970”. |
Example call
Arguments
{
"ruc": "20100070970"
}
curl
curl -X POST https://gateway.pipeworx.io/peru-sunat-ruc/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"pe_ruc","arguments":{"ruc":"20100070970"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('pe_ruc', {
"ruc": "20100070970"
});
Response shape
| Field | Type | Description |
|---|---|---|
found | boolean | |
reason | string | |
message | string | |
hint | string | |
check_digit_valid | boolean | |
data_as_of | string | null | |
source | string | |
ruc | string | |
name | string | |
holder_type | string | |
holder_type_basis | string | |
status | string | null | |
status_gloss | string | null | |
is_active | boolean | |
domicile_condition | string | null | |
domicile_condition_gloss | string | null | |
ubigeo | string | null | |
department_code | string | null | |
department | string | null | |
address | string | null | |
address_parts | object | |
address_withheld | string |
Full JSON Schema
{
"type": "object",
"additionalProperties": true,
"properties": {
"found": {
"type": "boolean"
},
"reason": {
"type": "string"
},
"message": {
"type": "string"
},
"hint": {
"type": "string"
},
"check_digit_valid": {
"type": "boolean"
},
"data_as_of": {
"type": [
"string",
"null"
]
},
"source": {
"type": "string"
},
"ruc": {
"type": "string"
},
"name": {
"type": "string"
},
"holder_type": {
"type": "string"
},
"holder_type_basis": {
"type": "string"
},
"status": {
"type": [
"string",
"null"
]
},
"status_gloss": {
"type": [
"string",
"null"
]
},
"is_active": {
"type": "boolean"
},
"domicile_condition": {
"type": [
"string",
"null"
]
},
"domicile_condition_gloss": {
"type": [
"string",
"null"
]
},
"ubigeo": {
"type": [
"string",
"null"
]
},
"department_code": {
"type": [
"string",
"null"
]
},
"department": {
"type": [
"string",
"null"
]
},
"address": {
"type": [
"string",
"null"
]
},
"address_parts": {
"type": "object",
"additionalProperties": true
},
"address_withheld": {
"type": "string"
}
}
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the peru-sunat-ruc pack
{
"mcpServers": {
"peru-sunat-ruc": {
"url": "https://gateway.pipeworx.io/peru-sunat-ruc/mcp"
}
}
}
See Getting Started for client-specific install steps.