mcp-server-0.1.0.13: mcp-server.cabal
cabal-version: 3.0
-- The cabal-version field refers to the version of the .cabal specification,
-- and can be different from the cabal-install (the tool) version and the
-- Cabal (the library) version you are using. As such, the Cabal (the library)
-- version used must be equal or greater than the version stated in this field.
-- Starting from the specification version 2.2, the cabal-version field must be
-- the first thing in the cabal file.
--
-- The name of the package.
name: mcp-server
-- The package version.
-- See the Haskell package versioning policy (PVP) for standards
-- guiding when and how versions should be incremented.
-- https://pvp.haskell.org
-- PVP summary: +-+------- breaking API changes
-- | | +----- non-breaking API additions
-- | | | +--- code changes with no API change
version: 0.1.0.13
-- A short (one-line) description of the package.
synopsis: Library for building Model Context Protocol (MCP) servers
-- A longer description of the package.
description:
A fully featured library for building MCP (Model Context Protocol) servers.
Supports both low-level fine-grained handling and high-level derived interfaces
for prompts, resources, and tools. Includes JSON-RPC transport
and stdin/stdout communication.
-- The license under which the package is released.
license: BSD-3-Clause
-- The file containing the license text.
license-file: LICENSE
-- The package author(s).
author: Tom Wells
-- An email address to which users can send suggestions, bug reports, and patches.
maintainer: drshade@gmail.com
-- A copyright notice.
copyright: 2025 Tom Wells
-- URL for the project homepage or repository
homepage: https://github.com/drshade/haskell-mcp-server
bug-reports: https://github.com/drshade/haskell-mcp-server/issues
-- Package categories for Hackage browsing
category: Network, Server, Service, MCP, JSON-RPC
build-type: Simple
-- Extra doc files to be distributed with the package, such as a CHANGELOG or a README.
extra-doc-files:
CHANGELOG.md
README.md
-- Extra source files to be distributed with the package, such as examples, or a tutorial module.
-- extra-source-files: SPEC.md
-- Source repository information
source-repository head
type: git
location: https://github.com/drshade/haskell-mcp-server.git
common warnings
ghc-options: -Wall
library
-- Import common warning flags.
import: warnings
-- Modules exported by the library.
exposed-modules:
MCP.Server
MCP.Server.Derive
MCP.Server.Handlers
MCP.Server.JsonRpc
MCP.Server.Protocol
MCP.Server.Types
MCP.Server.Transport.Stdio
MCP.Server.Transport.Http
-- Modules included in this library but not exported.
-- other-modules:
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
-- Other library packages from which modules are imported.
build-depends:
aeson >=2.0 && <3.0,
base >=4.20.0 && <4.22,
bytestring >=0.10 && <0.13,
containers >=0.6 && <0.8,
http-types >=0.12 && <1.0,
network-uri >=2.6 && <2.8,
template-haskell >=2.16 && <2.24,
text >=1.2 && <3.0,
vector >=0.12 && <1.0,
wai >=3.2 && <4.0,
warp >=3.3 && <4.0,
-- Directories containing source files.
hs-source-dirs: src
-- Base language which the package is written in.
default-language: GHC2024
executable haskell-mcp-server
-- Import common warning flags.
import: warnings
-- .hs or .lhs file containing the Main module.
main-is: Main.hs
-- Modules included in this executable, other than Main.
-- other-modules:
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
-- Other library packages from which modules are imported.
build-depends:
base,
containers,
mcp-server,
network-uri,
text,
-- Directories containing source files.
hs-source-dirs: app
-- Base language which the package is written in.
default-language: GHC2024
executable simple-example
-- Import common warning flags.
import: warnings
-- .hs or .lhs file containing the Main module.
main-is: Main.hs
-- Modules included in this executable, other than Main.
other-modules: Types
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
-- Other library packages from which modules are imported.
build-depends:
base,
mcp-server,
text,
-- Directories containing source files.
hs-source-dirs: examples/Simple
-- Base language which the package is written in.
default-language: GHC2024
executable complete-example
-- Import common warning flags.
import: warnings
-- .hs or .lhs file containing the Main module.
main-is: Main.hs
-- Modules included in this executable, other than Main.
other-modules: Types
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
-- Other library packages from which modules are imported.
build-depends:
base,
mcp-server,
text,
-- Directories containing source files.
hs-source-dirs: examples/Complete
-- Base language which the package is written in.
default-language: GHC2024
executable http-simple-example
-- Import common warning flags.
import: warnings
-- .hs or .lhs file containing the Main module.
main-is: Main.hs
-- Modules included in this executable, other than Main.
other-modules: Types
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
-- Other library packages from which modules are imported.
build-depends:
base,
mcp-server,
text,
-- Directories containing source files.
hs-source-dirs: examples/HttpSimple
-- Base language which the package is written in.
default-language: GHC2024
test-suite haskell-mcp-server-test
-- Import common warning flags.
import: warnings
-- Base language which the package is written in.
default-language: GHC2024
-- Modules included in this executable, other than Main.
other-modules:
Spec.AdvancedDerivation
Spec.BasicDerivation
Spec.JSONConversion
Spec.SchemaValidation
Spec.UnicodeHandling
TestData
TestTypes
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
-- The interface type and version of the test suite.
type: exitcode-stdio-1.0
-- Directories containing source files.
hs-source-dirs: test
-- The entrypoint to the test suite.
main-is: HspecMain.hs
-- Test dependencies.
build-depends:
QuickCheck,
aeson,
base,
bytestring,
containers,
hspec,
mcp-server,
network-uri,
template-haskell,
text,