Skip to main content

Drop-in observability for MCP servers — track tool calls, latency, errors, and usage with one line of code

Project description

mcp-pulse

Drop-in observability for MCP servers. Track tool calls, latency, errors, and usage with one line of code.

Install

pip install mcp-pulse

Quick Start

from mcp_pulse import ObserveMCP

# Replace FastMCP with ObserveMCP — that's it
mcp = ObserveMCP("my-server")

@mcp.tool()
def my_tool(param: str) -> str:
    """My tool description."""
    return f"result for {param}"

mcp.run(transport="stdio")

Every tool call is now automatically tracked — tool name, duration, success/failure, response size.

Dashboard

pip install mcp-pulse[dashboard]
mcp-pulse

Opens a web dashboard at http://localhost:8020 showing:

  • Total calls, error rate, avg latency
  • Calls per hour chart
  • Per-tool breakdown (call count, p50/p95 latency, error rate)
  • Recent call log

Alternative: Wrap an existing server

from mcp.server.fastmcp import FastMCP
from mcp_pulse import observe

mcp = FastMCP("my-server")

@mcp.tool()
def my_tool(param: str) -> str:
    return f"result for {param}"

observe(mcp)  # instruments all registered tools
mcp.run(transport="stdio")

Options

mcp = ObserveMCP(
    "my-server",
    db_path="/path/to/custom.db",  # default: ~/.mcp-pulse/observe.db
    log_params=True,               # log input parameters (default: False)
)

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_pulse-0.1.1.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_pulse-0.1.1-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file mcp_pulse-0.1.1.tar.gz.

File metadata

  • Download URL: mcp_pulse-0.1.1.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mcp_pulse-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2b9f5b670aac9c44c13fffc018bcbb479063825709945f0c731fe5ebd3b704d1
MD5 c946270eba92dfd1fb9abd226a84f73e
BLAKE2b-256 220207b6b0dde5dd974e16770daead853c4fbb61672f2b74c9986dd23ee11042

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_pulse-0.1.1.tar.gz:

Publisher: publish.yml on slimbiggins007/mcp-pulse

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcp_pulse-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: mcp_pulse-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mcp_pulse-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8b792368dc2f8ffc0945d1c40af2ce39af8156a1ef1daab5f3da666abee93e22
MD5 a3643cfebc762ebcf7150fc6110f8dee
BLAKE2b-256 5e669633293ecb4c5e830f43ecb6a5675975940eecda95a24d5a9b2d4b6257ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_pulse-0.1.1-py3-none-any.whl:

Publisher: publish.yml on slimbiggins007/mcp-pulse

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page