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.1 -- 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, pagination, 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.JsonRpc MCP.Server.Protocol MCP.Server.Types -- 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.0, bytestring >=0.10 && <0.13, containers >=0.6 && <0.8, network-uri >=2.6 && <2.8, template-haskell >=2.16 && <2.23, text >=1.2 && <3.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 ^>=4.20.0.0, containers >=0.6 && <0.8, mcp-server, network-uri >=2.6 && <2.8, text >=1.2 && <3.0, -- Directories containing source files. hs-source-dirs: app -- Base language which the package is written in. default-language: GHC2024 executable high-level-example -- Import common warning flags. import: warnings -- .hs or .lhs file containing the Main module. main-is: HighLevel.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 ^>=4.20.0.0, containers >=0.6 && <0.8, mcp-server, network-uri >=2.6 && <2.8, text >=1.2 && <3.0, -- Directories containing source files. hs-source-dirs: examples -- Base language which the package is written in. default-language: GHC2024 executable template-haskell-example -- Import common warning flags. import: warnings -- .hs or .lhs file containing the Main module. main-is: TemplateHaskell.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 ^>=4.20.0.0, mcp-server, text >=1.2 && <3.0, -- Directories containing source files. hs-source-dirs: examples -- 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: -- 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: Main.hs -- Test dependencies. build-depends: base ^>=4.20.0.0, mcp-server,