MCPSpend
Server Details
Track cost, latency, and usage of every MCP tool call from any client (Claude, Cursor, Windsurf). Free 25K calls/month — open-source proxy, EU-hosted.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.4/5 across 7 of 7 tools scored. Lowest: 3.9/5.
Each tool has a distinct purpose: cost estimation, session details, daily cost, monthly usage, session listing, top tools, and demo. No two tools overlap in functionality.
All tool names follow a consistent verb_noun pattern (e.g., estimate_cost, get_session_details, list_top_tools). 'try_demo' also fits the pattern.
Seven tools is an appropriate number for a cost monitoring server, covering estimation, session details, daily/monthly usage, and top tools without being overwhelming.
The tool set covers core cost monitoring needs: estimation, session drill-down, daily/monthly totals, and top tools. Minor gaps like historical trends or budget management are missing but not critical for the stated purpose.
Available Tools
7 toolsestimate_costARead-onlyIdempotentInspect
Estimate the USD cost of an MCP tool call BEFORE invoking it. Returns median + P90 + average cost from the org's last-30-day history for this exact (server, tool) combo. Use this to make spend-aware decisions in your agent — e.g. confirm with the user before invoking tools where the estimate exceeds your budget. Returns isUnknown=true with zero cost when no baseline exists yet.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Optional model identifier. Falls back to the historical median across all models when omitted. | |
| toolName | Yes | Tool name within the server, e.g. "browser_navigate". | |
| serverName | Yes | MCP server name, e.g. "playwright" or "github". |
Output Schema
| Name | Required | Description |
|---|---|---|
| model | No | |
| toolName | Yes | |
| isUnknown | Yes | |
| avgCostUsd | No | |
| p90CostUsd | No | 90th percentile cost — worst-case reasonable estimate. |
| sampleSize | Yes | |
| serverName | Yes | |
| successRate | No | 0-1, fraction of historical calls that succeeded. |
| avgLatencyMs | No | |
| avgInputTokens | No | |
| avgOutputTokens | No | |
| estimatedCostUsd | Yes | Median cost from sample. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description transparently details the output: 'Returns median + P90 + average cost from the org's last-30-day history' and 'Returns isUnknown=true with zero cost when no baseline exists yet.' This adds significant value beyond the annotations (readOnlyHint, idempotentHint) by explaining the specific data returned and edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded: three sentences that state purpose, usage, and edge case. Every sentence adds value with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (context signals indicate 'Has output schema: true'), the description adequately explains the return values and edge case. It covers all aspects needed for a pre-call estimation tool, and sibling tools are sufficiently differentiated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description reinforces the tool's context (exact server/tool combo) but does not add new semantics beyond the schema descriptions. The parameters are clearly documented in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Estimate the USD cost of an MCP tool call BEFORE invoking it.' It specifies the exact verb (estimate), resource (USD cost), and timing, distinguishing it from sibling tools like 'get_today_cost' or 'list_top_tools' which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance: 'Use this to make spend-aware decisions in your agent — e.g. confirm with the user before invoking tools where the estimate exceeds your budget.' It also implies when not to use (when cost is irrelevant) and differentiates from siblings by focusing on per-call cost estimation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_session_detailsARead-onlyIdempotentInspect
Drill into a single session by ID. Returns the session header plus every tool call within it (capped at 500 to bound payload size).
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | Session ID from list_recent_sessions. Must belong to the caller's organization. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| model | Yes | |
| startedAt | Yes | |
| toolCalls | Yes | |
| totalCostUsd | Yes | |
| toolCallCount | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. Description adds behavioral context: returns header + tool calls, capped at 500. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste, front-loaded with action verb. Every sentence adds necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 1 parameter, no nested objects, and existing output schema, the description fully explains what the tool returns and its limits.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage with description. Description adds extra context: 'Must belong to the caller's organization.' Adds value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it drills into a single session by ID, returns header and tool calls (capped at 500). Distinguishes from sibling list_recent_sessions which lists sessions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicitly guides to use when needing session details. Mentions payload cap (500) as a usage constraint. Does not explicitly exclude other tools but context makes it clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_today_costARead-onlyIdempotentInspect
Total tool-call cost and call count for the current day (UTC), for the organization behind the caller's API key. Returns a human-readable summary line plus raw numbers in a structured field.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| costUsd | Yes | Sum of estimated costs in USD. |
| callCount | Yes | Tool calls observed since 00:00 UTC. |
| errorCount | Yes | Tool calls that returned an error. |
| inputTokens | Yes | Sum of input tokens. |
| outputTokens | Yes | Sum of output tokens. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds value by detailing the output format (human-readable summary plus raw numbers in a structured field), which goes beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear, well-structured sentence that front-loads the key information. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, read-only annotations, and an output schema, the description fully covers what the tool does and returns. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline is 4. The description is sufficient and does not need to add parameter info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns today's total cost and call count, with specific scope (UTC, organization behind API key). It distinguishes from sibling tools like estimate_cost and get_usage_this_month.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving today's cost but does not explicitly state when to use it versus alternatives like estimate_cost or get_usage_this_month. No exclusions or conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_usage_this_monthARead-onlyIdempotentInspect
Calls used this calendar month, the plan limit, percentage used, and a linear end-of-month projection based on the current daily average. Use to spot when an org will hit its cap.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| plan | Yes | Current plan tier. |
| callsLimit | Yes | Plan's monthly call cap. |
| percentUsed | Yes | callsThisMonth / callsLimit * 100. |
| callsThisMonth | Yes | Tool calls used since the billing cycle start. |
| organizationName | Yes | Name of the org owning this API key. |
| projectedEndOfMonth | Yes | Linear projection of total calls by end of UTC month. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description needs to add context beyond that. It explains the tool returns a linear end-of-month projection based on daily average, which is valuable behavioral detail. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first lists what the tool returns, the second provides the recommended use case. No unnecessary words, information is front-loaded. Excellent conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description fully explains what the tool does and its output. An output schema exists (though not shown), so return values are covered. The tool is simple with no parameters, and the description is complete enough for an agent to understand its usage without ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%. Per the rubric, baseline is 4 for 0 params. The description doesn't need to explain parameters, but it does explain the output fields (usage, limit, percentage, projection), which adds value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns monthly call usage data, plan limit, percentage used, and a linear projection. It specifies the resource (calls) and the action (get usage), making the purpose unmistakable. While it doesn't explicitly distinguish from siblings, the unique combination of usage data and projection sets it apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear use case: 'Use to spot when an org will hit its cap.' It does not explicitly state when not to use or list alternatives, but the use case is concrete and helpful. Sibling tools like 'get_today_cost' or 'estimate_cost' serve different purposes, so the guidance is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_recent_sessionsARead-onlyIdempotentInspect
Recent agent sessions for this organization, ordered by start time. Each row has the model, total cost, tool-call count, and duration in seconds.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum sessions to return. Defaults to 20. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sessions | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, indicating safe, non-destructive behavior. The description adds value by specifying the output fields (model, cost, tool-call count, duration) and ordering by start time, which annotations do not cover.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the key purpose, and contains no unnecessary words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one parameter and an output schema (implied), the description is complete: it explains what is returned and the ordering. No further details are needed for basic usage, though it could mention that it only returns the most recent sessions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the single 'limit' parameter fully described (type, default, min, max). The description does not add additional parameter semantics beyond what the schema provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists recent agent sessions for the organization, ordered by start time, and specifies the fields per row (model, cost, tool-call count, duration). This distinguishes it from sibling tools like get_session_details or get_today_cost.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for viewing recent sessions but does not explicitly state when to use this tool versus alternatives like get_session_details for a single session or get_today_cost for aggregate cost. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_top_toolsARead-onlyIdempotentInspect
Top MCP tools by cost over the past N days. Answers "what is the most expensive thing my agents do" — useful before tightening prompts or swapping a server.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Lookback window in days. Defaults to 7. | |
| limit | No | Maximum entries to return. Defaults to 10. |
Output Schema
| Name | Required | Description |
|---|---|---|
| days | Yes | |
| tools | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, making safety clear. The description adds context about answering a specific question, but no behavioral traits beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: one states purpose clearly, the other adds context. No wasted words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists and annotations cover safety, description is complete for a simple list tool. Lacks explicit mention of ordering direction (descending by cost implied).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are well-documented in schema. Description adds no additional meaning beyond schema, earning baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it lists top MCP tools by cost over N days, answering a specific question. Distinguishes from sibling cost tools by focusing on ranking tools by cost.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a concrete use case ('useful before tightening prompts or swapping a server'), but does not explicitly mention when not to use or alternatives. Sibling names provide some context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
try_demoARead-onlyIdempotentInspect
Run this WITHOUT an API key to see what MCPSpend output looks like. Returns a synthetic cost snapshot identical in shape to get_today_cost + list_top_tools + get_usage_this_month. Use this to preview the product before signing up.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| demo | Yes | Always true — this is sample data. |
| plan | Yes | |
| month | Yes | |
| today | Yes | |
| signUp | Yes | URL where the caller can create a real account. |
| topTools | Yes | |
| organizationName | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, and the description adds that it returns synthetic data identical in shape to three specific tools. No contradictions; adds valuable behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with key action ('Run this WITHOUT an API key'), zero wasted words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, existing output schema, and annotations covering safety, the description fully explains what the tool does, when to use it, and what it returns. Complete for its simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, schema coverage is 100%, so the description need not add parameter info. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Run this') and resource ('synthetic cost snapshot'), and clearly distinguishes it from siblings by specifying it mimics three other tools and requires no API key.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use without an API key and to preview before signing up, implying use when you lack authentication. Does not state when not to use (e.g., for real data), but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseAqualityAmaintenanceGTM signal intelligence suite for AI agents. Six tools: hiring signals, tech stack detection, company-to-LinkedIn resolution, ICP scoring, job board scanning, and a combined signals aggregator. Built for outbound sales workflows.117371MIT

industrylens-mcpofficial
Flicense-qualityCmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
Sociality MCPofficial
Alicense-qualityDmaintenanceSocial media analytics, post insights, and competitor benchmarking for AI agents.6MIT- AlicenseAqualityAmaintenanceDetects hiring intent signals by scanning job boards for specific companies. Returns structured role data for outbound sales targeting.1761MIT