TCE-SP Audesp MCP for AI. Query Municipal Spending & Revenue Records
Works with every AI agent you already use
…and any MCP-compatible client








Connect to your AI in seconds.
TCE-SP (Audesp) provides direct programmatic access to public transparency data from the São Paulo State Court of Auditors. Use this server to query municipal expenses and revenues across any city in the state, filtered precisely by fiscal year and month.
What your AI can do
List despesas
Lists detailed expense records (despesas) for a specified municipality, year, and month.
List municipios
Retrieves the unique list of all municipalities managed under TCE-SP jurisdiction.
List receitas
Lists total revenue records (receitas) for a specified municipality, year, and month.
Retrieves a full list of every municipality currently tracked by TCE-SP.
Fetches records of operational costs and spending for a specific city, fiscal year, and month.
Accesses collected funds and state transfers for a given municipality, year, and month.
Ask an AI about this
Waiting for input…
TCE-SP Audesp MCP Server: 3 Tools for Fiscal Data Queries
These three tools let you list all municipalities, get detailed spending records (`despesas`), and track revenue collections (`receitas`) from the São Paulo state court's public portal.
Make your AI actually useful.
Add this MCP to Claude, Cursor, or Windsurf and your AI stops guessing. It gets real tools to look things up, take action, and handle the stuff you keep doing by hand.
Start using TCE-SP (Audesp) on VinkiusList Despesas
Lists detailed expense records (despesas) for a specified municipality, year, and month.
List Municipios
Retrieves the unique list of all municipalities managed under TCE-SP jurisdiction.
List Receitas
Lists total revenue records (receitas) for a specified municipality, year, and month.
Security and governance baked right in.
Pick your AI client below to get set up. Just create a Vinkius account, subscribe, and you're instantly up and running. We handle the entire backend infrastructure, delivering out-of-the-box support for HTTPS Streamable, SSE, and OAuth2—zero messy routing required.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with TCE-SP (Audesp), then connect any of our 5,100+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 5,100+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by TCE-SP (Audesp). All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This connection provides 3 powerful capabilities that interface natively with Claude, ChatGPT, Cursor, and other compatible AI platforms. No middleware. No custom integration required.
Sifting through public finance data shouldn't feel like archaeology.
Today, pulling a basic financial report means navigating to the official transparency portal. You click 'Select Municipality,' then select the year, filter by department, and finally download a massive CSV file. Then you repeat that process for every other city or quarter you need, ending with hours of copy-pasting and cross-referencing.
With this MCP server, your agent handles all that tedious clicking in one step. You just ask it to get the expenses for 'santos' in Q1 2023. It runs `list_despesas` automatically and gives you a clean data structure—no portal navigation, no CSV mess, just facts.
TCE-SP Audesp: Getting the raw numbers from anywhere.
Forget remembering dozens of specific endpoint URLs or fighting complex web forms. You don't have to figure out if 'revenue' is called 'receitas' in one form and 'ingresos' in another. The server normalizes the access point for you.
It just works. You tell your agent what data you need, and it uses `list_despesas` or `list_receitas` to pull it directly. It’s that simple.
What your AI can actually do with this
You're connecting your AI agent to the official São Paulo State Court of Auditors transparency portal using this MCP Server. This setup gives you programmatic access straight into municipal spending records (despesas) and revenue reports (receitas), letting you run structured queries without ever having to navigate a messy website or download a spreadsheet manually.
Your AI client handles all the heavy lifting; it's an API bridge that takes your parameters—the city, fiscal year, and month—and executes the lookup. It cuts out all the friction of manual data retrieval, letting you focus on what the numbers actually mean.
To get started, first you need to know which municipalities are even in scope. You'll use the list_municipios tool; this simply retrieves a full list of every single city currently tracked by TCE-SP. This call gives you the definitive roster of jurisdictions, ensuring you don't waste time querying a place that doesn't exist in their system.
Once you have your target municipality from that list, you can start pulling the actual financial data. If you need to see how much money was spent—the operational costs and spending records—you fire up list_despesas. You gotta specify three things for this: the city name (which you got from list_municipios), the exact fiscal year, and the specific month.
This gives you a detailed breakdown of every expense recorded.
For tracking income, you use list_receitas. Like spending, you need to lock in the municipality, the fiscal year, and the month. This tool pulls all the collected funds and state transfers for that given period. You get a clear picture of how much money came into the system versus what left it.
This combination means you can compare spending and revenue directly across multiple cities without leaving your chat window. For example, you don't have to run three separate reports; you just tell your agent which months or years you want to check for expenses (list_despesas) and revenues (list_receitas), and it gets both sets of data points for the same parameters.
The server is designed for people who work with raw, public finance numbers. Researchers, journalists digging into local governance, and policy analysts rely on this because it cuts out the guesswork. You're not just looking at a number; you're getting structured records detailing what was spent and where the money came from.
When you use list_despesas, you get comprehensive operational cost data for one city, specific to one month and year. When you use list_receitas, you get total collected funds for that same city, month, and year. The whole process is about precision: finding the scope of available cities with list_municipios first, then drilling down into hyper-specific financial records using the other two tools.
It keeps your workflow tight—no cross-referencing multiple government tabs or wrestling with CSV formats. You're querying a direct, stable stream of public data that lets you analyze spending and income across São Paulo's municipal landscape.
019e38f8-3fff-7242-b884-d9a34326f0b3 Here's how it actually works
The bottom line is you use a three-step process: find the city ID, then call the data tool with that ID and date range.
First, call list_municipios to get the unique slug (ID) of the city you need data from.
Next, pass that city slug, along with the required fiscal year and month, to either list_despesas or list_receitas.
The server executes the query against the TCE-SP database and returns structured JSON containing the financial records.
Who is this actually for?
This server targets investigative journalists, academic researchers, public policy analysts, and government auditors. If your job requires regularly cross-referencing municipal budgets or tracking resource allocation in São Paulo state, this tool saves the hours spent navigating complex, non-searchable government websites.
Uses list_despesas to pull spending data on a specific public figure or department for an article, skipping manual portal navigation.
Runs comparisons using both list_receitas and list_despesas across multiple municipalities to model budgetary shortfalls.
Systematically pulls historical data for dozens of cities, feeding the results into a structured dataset without repetitive manual queries.
What Changes When You Connect
Access structured data immediately. Instead of downloading and cleaning raw CSV files from the official portal, you get clean JSON output directly via list_despesas or list_receitas.
Build comprehensive comparisons quickly. Run sequential calls using list_municipios first, then use the resulting IDs to compare spending across 50 different cities in minutes.
Analyze budget gaps programmatically. By running both list_receitas and list_despesas for the same city/month, you can immediately calculate variance without manual spreadsheet work.
Audit historical records instantly. You don't need to remember which date range or portal link applies; just tell your agent the target month and year.
Speed up research flow. The server handles all the complex API calls to TCE-SP, letting your AI client focus purely on analysis and reporting.
See it in action
Investigating budget discrepancies in Campinas
A journalist needs to know if spending increased more than revenue did. They first use list_municipios to confirm 'campinas' slug, then call list_receitas and list_despesas for the same period (e.g., 2023/12). The agent returns both structured data sets, allowing the journalist to immediately write about the discrepancy.
Tracking resource allocation in Santos
A policy analyst wants a year-over-year comparison of operational costs. They use list_municipios for 'santos', then call list_despesas for January 2023, and repeat the call for January 2022. The agent organizes two separate data outputs into one comparative report.
Mapping state-wide spending patterns
A researcher needs to analyze how revenue shifted across three different cities over six months. They cycle through list_municipios for all targets, then loop the calls to list_receitas, ensuring consistent data collection without repeating setup code.
Auditing a specific fiscal quarter
A public manager needs to check spending in 2021. They confirm the city slug, then run list_despesas three times—once for Q1, once for Q2, and once for Q3—to build an accurate quarterly spending picture.
The honest tradeoffs
Asking for a 'full report'
Prompting the agent: 'Give me everything about municipal finance in São Paulo.' This is too vague. The system doesn't know which years, months, or cities you mean.
You must use list_municipios first to get the required city slug. Then, structure your query by calling specific tools: list_despesas(slug='...', year=YYYY, month=MM).
Skipping the municipality lookup
Attempting to call list_receitas and just guessing the city slug. If the slug is wrong or outdated, the tool fails immediately.
Always start by running list_municipios. This guarantees you use the correct, current identifier required for all subsequent calls.
Mixing data types in one call
Trying to ask a single prompt: 'What were expenses and revenues for Campinas in 2023?' The system cannot combine these different datasets.
You need two separate, sequential calls: first list_despesas(...) then list_receitas(...). Treat them as distinct data streams.
When It Fits, When It Doesn't
Use this server if your goal is structured, point-in-time financial auditing for known geographical areas in São Paulo. It excels when you need to compare specific metrics (spending vs. revenue) across defined groups of cities and periods.
Don't use this if: 1) You need real-time transaction monitoring (this is a reporting system, not an active ledger). 2) You require complex joins or predictive modeling that crosses multiple independent datasets outside the scope of these three tools. For instance, if you need to know which specific tax contributed to a revenue figure, and that detail isn't in list_receitas, this server won't help.
If your process involves simple enumeration (e.g., 'What are all cities?') or retrieving bounded records based on slugs/dates, this is the right toolset.
Questions you might have
How do I get the full list of cities using TCE-SP Audesp? +
Use the list_municipios tool. This function returns a complete list of all available city slugs (IDs) under the São Paulo State Court of Auditors' jurisdiction.
What data does list_despesas provide? +
list_despesas gives you detailed expense records for one specific municipality, year, and month. It tracks operational costs and spending breakdowns.
Can I use TCE-SP Audesp to compare revenues across different years? +
Yes. You must call list_municipios first to get the slug, then run list_receitas multiple times for the same municipality but with different year/month parameters.
Do I need an API key before using list_despesas? +
Yes. You must subscribe and provide your API access credentials or token to link your client (like Claude or Cursor) to the server.
What should I do if the `list_despesas` tool returns an error code for a specific fiscal month? +
The system will return a clear HTTP status and an error message detailing the problem. This usually means the municipality slug or date range is invalid. Check your inputs—try adjacent months, or verify that the specified year/month combination actually contains recorded data.
How does the server handle high volumes of requests when running multiple queries with `list_receitas`? +
The server enforces standard rate limits to prevent abuse. If you make too many calls in a short burst, your AI client will receive a 429 Too Many Requests error. You'll need to implement an exponential backoff strategy or batch your queries into fewer steps.
Does `list_municipios` allow me to filter the search by specific regions within São Paulo State? +
No, the list_municipios tool returns a complete list of all slugs under TCE-SP jurisdiction. You must handle the filtering logic client-side—your AI agent processes the full list and selects only the slugs you want to use for subsequent calls.
In what format does the server deliver the raw results after calling any tool, like `list_despesas`? +
All data is delivered in structured JSON format. Your AI client processes this standard JSON output directly. This makes it simple to pass the records into other tools or write them out for reporting.
How do I find the correct name (slug) for a specific city? +
Use the list_municipios tool. It returns a complete list of all municipalities under TCE-SP jurisdiction with their respective slugs needed for expense and revenue queries.
Can I query data for any year and month? +
Yes, using list_despesas or list_receitas, you can specify the exercicio (year) and mes (month, 1-12) to get precise historical data for a municipality.
What is the difference between list_despesas and list_receitas? +
list_despesas focuses on how the municipality spent its budget (expenses), while list_receitas shows the income and collections (revenues) received by the city.
We've already built the connector for TCE-SP Audesp. Just plug in your AI agents and start using Vinkius.
No hosting. No infrastructure. No complex setup.
All 3 tools are live and waiting.
You're up and running in seconds.
Vinkius gives your AI agents access to the full catalog of app connectors, all fully managed, secure, and enterprise-ready. One subscription, every tool you need.
Built, hosted, and secured by Vinkius. You just connect and go.